A a+b=10 B a+b=30 C 30 D 出错 2 以下程序运行后的输出结果是___。
main()
{ double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(\%d\\n\,d*y); }
A 3 B 3.2 C 0 D 3.07 3 以下程序运行后的输出结果是___。
main()
{ double d; float f; long l; int i; i=f=l=d=20/3;
printf(\%d %ld %.1f %.1f\\n\,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.0 4 以下程序运行后的输出结果是___。
main()
{ int a=1,b=2;
a=a+b; b=a-b; a=a-b; printf(\%d,%d\\n\,a,b); }
A 1,2 B 1,1 C 2,2 D 2,1 5 以下程序运行后的输出结果是___。
main()
{ int x,y,z; x=y=2; z=3;
y=x++-1; printf(\%d %d \,x,y); y=++x-1; printf(\%d %d\\n\,x,y); y=z---1; printf(\%d %d \,z,x); y=--z-1; printf(\%d %d\\n\,z,x); }
A 3 1 4 3 B 3 1 3 3 C 3 1 4 3 D 2 1 3 2 2 4 1 4 2 4 2 2 2 4 1 2 1 3 1 2 6 以下程序运行后的输出结果是___。
main()
{ int x,y,z; x=y=1;
z=x++,y++,++y;
printf(\%d,%d,%d\\n\,x,y,z); }
A 2,3,3 B 2,3,2 C 2,3,1 D 2,2,1 7 以下程序运行后的输出结果是___。
main()
{ int x=4,y=7; x-=y; y+=x;
5
printf(\%d %d\\n\,x,y);
}
A 4 7 B -3 -3 C -3 11 D -3 4
8 以下程序运行后的输出结果是___。
main()
{ unsigned short a=65536; int b; printf(\%d\\n\,b=a); }
A 65536 B 0 C 1 D -1 9 以下程序:
#include
{ char c1,c2,c3,c4,c5,c6;
scanf(\%c%c%c%c\,&c1,&c2,&c3,&c4); c5=getchar(); c6=getchar(); putchar(c1); putchar(c2); printf(\%c%c\\n\,c5,c6); }
程序运行后,若从键盘输入(从第1列开始) 123<回车> 45678<回车>
则输出结果是___。
A 1267 B 1256 C 1278 D 1245
10 设a、b和c都是int型变量,且a=3,b=0,c=5,则以下值为0的表达式是___。
A 'a'&&'b' B a&&b||c C a&&b&&c D a||b&&c 11 在嵌套使用if语句时,C语言规定else总是___。
A 和之前与其具有相同缩进位置的if配对 B 和之前与其最近的if配对
C 和之前与其最近不带else的if配对 D 和之前的第一个if配对
12 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为
___。
A a<>0 B !a C a=0 D a 13 以下程序运行后的输出结果是___。
main()
{ int a=2,b=-1,c=2; if(a
if(b<0) c=0; else c++;
printf(\%d\\n\,c); }
A 0 B 1 C 2 D 3 14 若k是int型变量,下面的程序段的输出结果是 。
k=-3;
if(k<=0) printf(\####\)
6
else printf(\&&&&\);
A #### B &&&&
C ####&&&& D 有语法错误,无输出 15 以下程序运行后的输出结果是___。
main()
{ int a=0,b=0,c=0,d=0; if(a=1) b=1;c=2; else d=3;
printf(\%d,%d,%d,%d\\n\,a,b,c,d); }
A 0,1,2,0 B 0,0,0,3 C 1,1,2,0 D 编译有错 16 以下程序运行后的输出结果是___。
main()
{ int x1=1,x2=0,x3=0;
if(x1=x2+x3) printf(\****\); else printf(\####\); }
A **** B 有语法错误 C #### D 无输出结果 17 当a=1,b=3,c=5,d=4时,执行下面一行程序后,x的值是___。
if(a
A break语句只能用于switch语句 B 在switch语句中必须使用default
C 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:printf(\*\\n\); { case 1:printf(\*\\n\); case 2.0:printf(\**\\n\); } case 2:printf(\**\\n\); } C switch(a+b) D switch(a+b)
{ case 1:printf(\*\\n\); { case 1:printf(\*\\n\); case 2+1:printf(\**\\n\); } case c:printf(\**\\n\); }
20 以下程序运行后的输出结果是___。
#include
{ int x=1,y=0,a=0,b=0; switch(x) { case 1:
switch(y)
{ case 0:a++;break; case 1:b++;break; }
case 2:a++;b++;break;
7
}
printf(\a=%d,b=%d\\n\,a,b);
}
A a=2,b=1 B a=1,b=1 C a=1,b=0 D a=2,b=2
二 填空题(每题3分,共30分)
1 以下程序运行后的输出结果是___。
#include
{ int i=010 , j=10;
printf(\%d,%d\\n\,++i,j--); }
2 以下程序运行后的输出结果是___。
#include
{ printf(\%d%d%d\\n\,'\\0','\\0','\\0'); }
3 以下程序运行后的输出结果是___。
main()
{ int i=5,j,k; j=i+++i+++i++;
k=(++i)+(++i)+(++i);
printf(\i=] j=]\\nk=]\\n\,i,j,k); }
4 下面的程序运行时从键盘上输入9876543210<回车>,程序的输出结果是___。
main()
{ int a; float b,c;
scanf(\-//\,&a,&b,&c);
printf(\a=%d,b=%.1f,c=%.0f\,a,b,c); }
5 下面程序的输出结果是___。
main()
{ char ch1,ch2;
ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf(\%d,%c\\n\,ch1,ch2); }
6 执行下面的语句:printf(\%d\\n\,(a=3*5,a*4,a+5));,输出是___。 7 以下程序运行后的输出结果是___。
main()
{ int x=10; printf(\%d,%d\\n\,--x,--x); } 8 为表示关系x≥y≥z,应使用C语言表达式___。 9 下面的程序段的输出结果是___。
int x=3;
if((x%2)?printf(\**%d\,x):printf(\##%d\\n\,x)); 10 以下程序运行后的输出结果是___。
main()
8
{ int m=5; switch(m/2) { case 1: m++; case 2: m+=3;
case 5: m+=6;break; default: m-=7; }
printf(\%d\\n\,m); }
三 程序填空(每空5分,共30分)
1 下列程序的输出结果是16.00,请填空。
main()
{ int a=9,b=2;
float x= 【1】 ,y=1.1,z; z=a/2+b*x/y+1/2; printf(\%5.2f\\n\,z); }
2 完成以下程序,输入变量a,b,c的值,判断a,b,c能否组成三角形,计算三角形面积。
a?b?cs?p(p?a)(p?b)(p?c)其中p?(公式为: )。
2#include
【2】 ; main()
{ int a,b,c; 【3】 printf(\please input the value of a,b,c\) scanf(\%d %d %d\, 【4】 ); if( 【5】 ) { 【6】
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf(\Yes,this is a triangle!\\n the area is %.2f.\\n\,s); }
else printf(\No,this is not a triangle!\\n\) }
循环结构程序设计
一 单项选择题(每题2分,共40分)
1 以下程序中,while循环的循环次数是___。
main()
{ int i=0; while(i<10)
{ if(i<1) continue; if(i==5) break;
9