1、14 若x、y、z均为整型常量,且a=100,则执行下列语句后的z值为。x=a+; y=-a; z=x+y-a-;A 100 B 400 C 200 D 30015 若有以下定义和语句:int u=010,v=0x10,w=10,printf(%d,%d,%dn,u,v,w);,则输出结果是。A 8,16,10 B 10,10,10 C 8,8,10 D 8,10,1016 设x、y为int型变量,则执行下列语句后,y的值是。x=5; y=x+*x+; y=-y*-y;A 529 B 2401 C 1209 D 62517 假设在程序中a,b,c 均被定义成整型,并且已赋大于1的值,则下列能正
2、确表示代数式A 1/a*b*c B 1/(a*b*c) C 1/a/b/(float)c D 1.0/a/b/c18 若有定义:int a=8,b=5,c;char d=A;,则执行语句c=a/b+d%a+0.5;后c的值为。A 2 B 2.5C 3 D 类型不一致,无法计算,编译出错19 在有以下程序:main() int i=10,j=1;i=i+j+;,i+,+j,i);执行后输出结果是。A 12,3,11 B 12,2,11 C 11,3,11 D 12,3,1220 已知int i=65;,则putchar(i);%cA A,65,A B 65,65,A C A,A,65 D A,A
3、,A21 已知int y,a,i=1;,则语句printf(%d,%d,-i+,(y=a=3.6*3);A -1,10 B -2,1.8 C 0,3 D 1,1822 有以下程序: char a,b,c,d;a= b=xbcc=0xab d=023%c%c%c%cn,a,b,c,d);编译时出现错误,以下叙述中正确的是。A 程序中只有a=语句不正确 B b=语句不正确C d=语句不正确 D a=和c=语句都不正确二 填空题(第1题2分,其余每题3分,共56分)1 设x为int型变量,请写出描述“x是偶数”的表达式是。2 已知scanf(a=%d,b=%d,c=%d,&a,&b,&c);,若从键
4、盘输入2、3、4三个数分别作为变量a、b、c的值则正确的输入形式是。3 设有语句int a=3;,则执行了语句 a+=a-=a*a后,变量a的值是。4 以下程序的输出结果是。 int a=-10,b=-3;,-a+);,-a+b);5 以下程序的输出结果是。 char c;c=0362;%dn,c);6 以下程序段(n所赋的是八进制数)执行后输出结果是。int m=32767,n=032767;%d,%on,m,n);7 字符串name101ddressbxaf的长度为:。8 有以下程序段:int m=0,n=0; char c=ascanf(%d%c%dm,&c,&n);%d,%c,%dn,
5、m,c,n);若从键盘上输入:10A109 以下程序的输出结果是。 printf(%d,%o,%xn,10,10,10);,10,010,0x10);%d,%xn,012,012);10 设a、b、c为整形变量,且a=2、b=3、c=4,则执行完语句 a*=16+(b+)-(+c);之后,变量a的值为。11 以下程序的输出结果为。 int x=023;%xn,-x);12 以下程序的结果为。 int a=2,b=3,c,d;c=(a+)+(a+)+(a+);d=(+b)+(+b)+(+b);a=%d c=%dn,a,c);b=%d d=%dn,a,d);13 以下程序 char ch1,ch2
6、,ch3;%c%c%cch1,&ch2,&ch3);%c%c%c%c%c,ch1,#,ch2,ch3);当输入ABC时运行结果为 【1】 ,当输入A BC时运行结果为 【2】 。14 若有定义:float x;,以下程序段的输出结果是。x=5.16894;%fn,(int)(x*1000+0.5)/(float)1000);15 以下程序的功能是:输入一个小写字母,输出对应的大写字母,将程序补充完整。 char ch; 【1】 /* 从键盘输入一个小写字母 */ 【2】 /* 将该字母转换为大写字母 */ 【3】 /* 输出转换后的结果 */16 当运行以下程序时,在键盘上从第一列开始输入98
7、76543210(此处代表回车),则程序的输出结果是。 int a; float b,c;%2d%3f%4fna=%d,b=%f,c=%fn,a,b,c);17 以下程序的运行结果是。%12.5fn,123.1234567);%12fn%12.8dn,12345);%12.8sn,abcdefghij);18 运行以下程序时,如从键盘上输入abcdefg,则输出结果是。ch1=getchar(); ch2=getchar(); ch3=getchar();putchar(ch1); putchar(ch2); putchar(ch3);putchar(n19 运行以下程序时,如从键盘上输入:a
8、=3,b=535,35.12abc后,结果是。 int a,b; float x,y; char c1,c2;a=%d,b=%db);%f,%ex,&y);c1,&c2);a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%cn,a,b,x,y,c1,c2);顺序、选择结构程序设计一 单项选择题(每题2分,共40分)1 以下程序运行后的输出结果是。 int a=0,b=0;a=10; b=20;a+b=%dn,a+b);A a+b=10 B a+b=30 C 30 D 出错2 以下程序运行后的输出结果是。 double d=3.2; int x,y;x=1.2; y=(x+3.8)/5
9、.0;,d*y);A 3 B 3.2 C 0 D 3.073 以下程序运行后的输出结果是。 double d; float f; long l; int i;i=f=l=d=20/3;%d %ld %.1f %.1fn,i,l,f,d);A 6 6 6.0 6.0 B 6 6 6.7 6.7 C 6 6 6.0 6.7 D 6 6 6.7 6.04 以下程序运行后的输出结果是。main() int a=1,b=2;a=a+b; b=a-b; a=a-b;%d,%dn,a,b);A 1,2 B 1,1 C 2,2 D 2,15 以下程序运行后的输出结果是。 int x,y,z;x=y=2; z=
10、3;y=x+-1;%d %d ,x,y);y=+x-1;%d %dny=z-1;,z,x);y=-z-1;A 3 1 4 3 B 3 1 3 3 C 3 1 4 3 D 2 1 3 22 4 1 4 2 4 2 2 2 4 1 2 1 3 1 26 以下程序运行后的输出结果是。x=y=1;z=x+,y+,+y;,x,y,z);A 2,3,3 B 2,3,2 C 2,3,1 D 2,2,17 以下程序运行后的输出结果是。 int x=4,y=7;x-=y; y+=x;A 4 7 B -3 -3 C -3 11 D -3 48 以下程序运行后的输出结果是。 unsigned short a=655
11、36; int b;,b=a);A 65536 B 0 C 1 D -19 以下程序:#include char c1,c2,c3,c4,c5,c6;%c%c%c%cc2,&c3,&c4);c5=getchar(); c6=getchar();putchar(c1); putchar(c2);%c%cn,c5,c6);程序运行后,若从键盘输入(从第1列开始)12345678则输出结果是。A 1267 B 1256 C 1278 D 124510 设a、b和c都是int型变量,且a=3,b=0,c=5,则以下值为0的表达式是。&b B a&b|c C a&b&c D a|b&c11 在嵌套使用i
12、f语句时,C语言规定else总是。A 和之前与其具有相同缩进位置的if配对B 和之前与其最近的if配对C 和之前与其最近不带else的if配对D 和之前的第一个if配对12 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为。A a0 B !a C a=0 D a13 以下程序运行后的输出结果是。 int a=2,b=-1,c=2;if(ab)if(b0) c=0;else c+;A 0 B 1 C 2 D 314 若k是int型变量,下面的程序段的输出结果是 。k=-3;if(k=0) printf(#)else printf(A # B &C #& D 有语法错
13、误,无输出15 以下程序运行后的输出结果是。 int a=0,b=0,c=0,d=0;if(a=1) b=1;c=2;else d=3;%d,%d,%d,%dnA 0,1,2,0 B 0,0,0,3 C 1,1,2,0 D 编译有错16 以下程序运行后的输出结果是。 int x1=1,x2=0,x3=0;if(x1=x2+x3) printf(*A * B 有语法错误 C # D 无输出结果17 当a=1,b=3,c=5,d=4时,执行下面一行程序后,x的值是。b)if(cd)x=1;else if(ac)if(bd)x=2;else x=3;else x=6;else x=7;A 1 B 2
14、 C 3 D 618 下列叙述中正确的是。A break语句只能用于switch语句B 在switch语句中必须使用defaultC break语句必须与switch语句中的case配对使用D 在switch语句中不一定使用break语句19 若有定义:float x=1.5; int a=1,b=3,c=2; 则正确的switch语句是。A switch(x) B switch(int)x); case 1.0:*n case 1:case 2.0:*n case 2: C switch(a+b) D switch(a+b) case 1:case 2+1: case c:20 以下程序运行
15、后的输出结果是。#include int x=1,y=0,a=0,b=0;switch(x)switch(y) case 0:a+;break; case 1:b+;case 2:a=%d,b=%dnA a=2,b=1 B a=1,b=1 C a=1,b=0 D a=2,b=2二 填空题(每题3分,共30分) int i=010 , j=10;,+i,j-);%d%d%dn,0 int i=5,j,k;j=i+i+i+;k=(+i)+(+i)+(+i);i=%5d j=%5dnk=%5dn,i,j,k);4 下面的程序运行时从键盘上输入9876543210,程序的输出结果是。%2d%2f%2f
16、a=%d,b=%.1f,c=%.0f5 下面程序的输出结果是。 char ch1,ch2;ch1=+5-3 ch2=6%d,%cn,ch1,ch2);6 执行下面的语句:,(a=3*5,a*4,a+5);,输出是。 int x=10;,-x,-x);8 为表示关系xyz,应使用C语言表达式。9 下面的程序段的输出结果是。int x=3;if(x%2)?*%d,x):#%dn,x);10 以下程序运行后的输出结果是。 int m=5;switch(m/2) m+; m+=3;case 5: m+=6;default: m-=7;,m);三 程序填空(每空5分,共30分)1 下列程序的输出结果是1
17、6.00,请填空。main() int a=9,b=2;float x= 【1】 ,y=1.1,z;z=a/2+b*x/y+1/2;%5.2fn,z);2 完成以下程序,输入变量a,b,c的值,判断a,b,c能否组成三角形,计算三角形面积。(公式为: )。 【2】 ;main() int a,b,c; 【3】 please input the value of a,b,c%d %d %d, 【4】 );if( 【5】 ) 【6】 s=sqrt(p*(p-a)*(p-b)*(p-c);Yes,this is a triangle!n the area is %.2f.n,s);No,this i
18、s not a triangle!n循环结构程序设计1 以下程序中,while循环的循环次数是。main() int i=0;while(i10) if(i6) n-;,n); 该程序的输出结果是A 987 B 876 C 8765 D 98763 以下程序段,while循环执行的次数是。int k=0;while(k=1) k+;A 无限次 B 有语法错 C 一次也不执行 D 执行1次4 以下叙述正确的是。A do-while语句构成的循环不能用其它语句构成的循环来代替B do-while语句构成的循环只能用break语句退出C 用do-while语句构成的循环,在while后的表达式为非零
19、时结束循环D 用do-while语句构成的循环,在while后的表达式为零时结束循环5 以下程序的执行结果是。 int a,y; y=0;do a+=2; y+=a;a=%d y=%dn,a,y);if(y20) break;while(a=14);A a=12 y=12 B a=12 y=12a=14 y=16 a=16 y=28a=16 y=20a=18 y=24C a=12 y=12 D a=12 y=12a=14 y=26a=14 y=446 以下程序的执行结果是。 int x=23;do printf(,x-); while(!x);A 321 B 23 C 不输出任何内容 D 陷入
20、死循环7 有以下程序段,输出结果是。do printf(%d ,x-=2);(- -x);A 1 B 3 0 C 1 -2 D 死循环8 以下程序的输出结果是。 int a=0,i;for(i=1;i5;i+) switch(i) case 3: a+=2;case 1: case 2: a+=3;a+=5;printf(,a);A 31 B 13 C 10 D 20main() int i=0,a=0;20) for(; ;if(i%10)=0) break;else i-;i+=11; a+=i;A 21 B 32 C 33 D 1110 以下循环体的执行次数是。 int i,j;for(i=0,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1