2015C习题集(1)(3)

2020-04-18 04:10

return 0; }

执行后输出结果是

A) 2 B) 3 C) 编译时出错 D) 4 C5.有以下程序

int main() {

int i=1,j=1,k=2;

if((j++||k++)&&i++)

printf(\\n\);

return 0;

}

执行后输出结果是

A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 C6.有如下程序

int main() {

float x=2.0,y;

if(x<0.0)y=0.0;

else if(x<10.0)y=1.0/x;

else y=1.0;

printf(\\n\);} return 0; }

该程序的输出结果是

A)0.000000 B)0.250000 C)0.500000 D)1.000000 B7.若执行以下程序时从键盘上输入3和4,则输出结果是

int main() {

int a, b, s;

scanf(“%d%d”, &a, &b); s = a;

if(a < b) s = b; s *= s;

pritnf(“%d\\n”, s); return 0; }

A)14 B)16 C)18 D)20

B8.假定所有变量均已正确定义,下面语句段执行后的x的值是 a = b = c = 0; x = 35;

if(!a) x--; else if(b) ; if(c) x = 3; else x = 4;

A)34 B)4 C)35 D) 3 D9.判断char型变量c是否为大写字母的C表达式是

A)’A’<=c<=’Z’ B)(c>=’A’&(c<=’Z’)

11

C) (‘A’<=c)AND(‘Z’>=c) D)(c>=’A’)&&(c<=’Z’) A10.下列运算符中优先级最高的运算符是

A)! B)% C)-= D)&& A11.下列运算符中优先级最低的运算符是

A)|| B)!= C)<= D)+ A12.为表示关系 x≥y≥z,应使用的C语言表达式是

A)(x>=y)&&(y>=z) B)(x>=y)AND(y>=z) C)(x>=y>=z) D)(x>=y)&(y>=z)

D13.设a、b和c都是int变量,且a=3,b=4,c=5;则以下的表达式中,值为0的表达式是

A)a&&b B)a<=b

C)a||b+c&&b-c D)!((a

int main()

{ int a = 2, b = -1, c = 2; if(a

if(b < 0) c = 0; else c += 1;

printf(“%d\\n”, c); return 0; }

A)0 B)1 C)2 D)3

二、填空题

1.请写出以下程序的输出结果 1 。 int main()

{ int a = 100;

if( a > 100) printf(“%d\\n”, a > 100); else printf(“%d\\n”, a <= 100); return 0;

}

2.将上题中的双分支if语句改写成条件表达式语句:

Printf(“%d\\n”,(a>100)?(a>100); (a<=100)) ; 3.当a = 1、b = 2、c = 3时,以下if语句执行后,a、b、c中的值分别为: 3 、 2 、 2 。 if(a > c)

b = a; a = c; c = b;

4.若变量已正确定义,以下语句段的输出结果是 *# 。 x = 0; y = 2; z = 3;

switch(x)

{ case 0: switch( y == 2)

{ case 1: printf(“*”); break; case 2: printf(“%”); break;

12

}

case 1: switch( z )

{ case 1: printf(“$”);

case 2: printf(“*”); break; default : printf(“#”); } }

5. 以下程序的输出结果是 -1 。

int main()

{ int x=100, a=10, b=20, ok1=5, ok2=0;

if(a

printf(\\n\); return 0; }

6.若从键盘输入58,则以下程序输出的结果是 585858 。

int main() {

int a;

scanf\);

if(a>50)printf(\); if(a>40)printf(\); if(a>30)printf(\); return 0; }

7.以下程序的执行结果是 9 。

int main() {

int k=8; switch(k) {

case 9: k+=1; case 10: k+=1;

case 11: k+=1; break; default: k+=1; }

printf(\\n\); return 0; }

8.阅读下面程序,程序执行后的输出结果是 3 。

#include \int main() {

13

int x,y,z;

x = 1; y = 2; z = 3; if(x>y)

if(x>z)printf(\); else printf(\); printf(\\n\); return 0; }

9.C语言中用 非0 表示逻辑真,用 0 表示逻辑假。

10.根据C语言运算符的优先顺序和结合性,按从先到后的顺序写出以下表达式中,运算符“+”、“>”、“*”、“&&”、“!=”、“||”、“!”和“/”的先后顺序: + 、* 、 > 、 != 、&& 、 / 、 ! 、 || 。 (a + b) > c * 2 && b != 5 || !(1 / 2)

11.若表达式(a + b) > c * 2 && b != 5 || !(1 / 2)中,a、b、c的定义和赋值为 int a = 3, b = 4, c = 2; 则表达式的值为 1 。

12.将下列数学式改写成C语言的关系表达式或逻辑表达式是 A) a==b||a4(或 abs(x)>4) 。

A)a = b 或 a < c B)| x | > 4

13.请写出与以下表达式等价的表达式是 A) x<=0 B) 1 。 A)!(x > 0) B)!0

第五章 循环结构程序设计

一、选择题

B1以下程序段的输出结果是 。

int n = 10; while(n > 7) { n--;

pritnf(“%d”, n); }

A)1098 B)987 C)10987 D)9876

D下面程序的输出结果是 。

#include int main() {

int y=10;

do{y--;}while(--y); printf(\\n\); return 0; }

14

1.

2.

3.

4.

5.

6.

A)-1 B)1 C)8 D)0 C以下程序段的输出结果是 。

int x = 3; do

{ printf(“=”, x -= 2); } while(!(--x));

A) 1 B) 3 0 C) 1 -2 D)死循环

B下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空。

#include int main() {

int i=0,j,k;

do {i++;k=316-13*i;} while(______); j=k/11;

printf(\); return 0; }

A)k/11 B)k C)k/11==0 D)k==0

D以下不是死循环的语句是 。 A)for( ; ; x += i) ; B)while(1) {x ++; }

C)for(i = 10; ; i++) sum += i;

D)for(; (c = getchar()) != ‘\\n’; ) printf(“%c”, c); C以下程序的输出结果是 。

int main() { int i, sum;

for(i = 1; i < 6; i++) sum += i;

printf(“%d\\n” sum); return 0; }

A)15 B)16 C)不确定 D)0

D若x是int类型变量,以下程序段的输出结果是 。

for(x = 3; x < 6; x++)

printf( (x%2)?(“**%d”):(“##%d\\n”),x);

A)**3 B)##3 C)##3 D)**3##4

##4 **4 **4##5 **5 **5 ##5

D以下程序的输出结果是 。

A)39 81 B)42 84 C)26 68 D)28 70 int main() { int x, i;

for(i = 1; i <= 100; i++)

15


2015C习题集(1)(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:世界人种基因图谱

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: