1、若有以下程序段 D #include”stdio.h” void main( ) { int a=2,b=5;
Printf(“a=%%d,b=%%d\\n”,a,b); }
其输出结果是( )
A、a=%2,b=%5 B、a=2,b=5 C、a=%%d,b=%%d D、a=%d,b=%d
2、以下程序段 C float a=3.1415; printf(“|%6.0f|\\n”,a); 其输出结果是( )
A、|3.1415| B、|3.0| C、| 3| D、|3.|
3、以下程序段的输出结果是( ) C float a=57.666; printf(“*%010.2f*\\n”,a);
A、*0000057.66* B、*57.66* C、*0000057.67* D、*57.57*
4、下面语句 printf(“|%8.5f|\\n”,3461.45); 的输出结果是( ) C A、|61.45000| B、|3461.450| C、|3461.45000| D、|3461.4500|
5、若变量都已经正确说明,则以下程序段: C a=2; b=3; printf(a>b? ”***a=%d”: “###b=%d”,a,b);
A、没有正确的输出格式控制 B、输出为:***a=2 C、输出为:###b=2 D、输出为:***a=2###b=3
6、执行下列程序时输入1234567,程序的运行结果为( ) B #include”stdio.h” void main( ) {int x, y;
scanf(“%2d%2ld”,&x,&y); printf(“%d\\n”, x+y); }
A、17 B、46 C、15 D、9
7、已知char a; int b; float c; double d; 则表达式a*b+c-d结果为( )型。 A A、double B、int C、float D、char
8、根据定义和数据的输入方式,输入语句的正确形式是( ) B 已有定义float f1, f2; 数据的输入方式:4.52 3.5
A、scanf(“%f,%f”,&f1,&f2); B、scanf(“%f%f”,&f1,&f2); C、scanf(“%3.2f%2.1f”,&f1,&f2); D、scanf(“%3.2f, %2.1f”,&f1,&f2);
9、以下程序的输出结果为( ) *3.140000, 3.142* #include”stdio.h” void main( )
{printf( “ *%f, %4.3f*\\n”, 3.14, 3.1415);}
10、结构化程序流程图中一般包含3种基本结构,在下述结构中不属于其基本结构的是( )。 C
A、 顺序结构 B、嵌套结构 C、循环结构 D、选择结构 11、若有语句:int a=7; float x=2.5, y=4.7; 则表达式 x+a%3×(int) (x+y)%2/4的值是(
)。C
A、2.500000
B、2.750000
C、3.500000
D
、
0.000000
12、设有说明语句:int x=43, y=0; char ch=‟A‟; 则表达式x>=y && ch<‟B‟&& !y的值是( )。 D
A、语法错误 B、0 C、假 D、1 13、若a为int类型,且其值为3,则执行完表达式a+=a*a后,a的值是_______。12
14、int a; 表达式 (a=3*4, a*2), a+8的值为_______。20 15、表达式8.0*(1/2)的值为 。0 16、下列符号中,可以作为变量名的是( )。 C
A、3aB B、$X C、_b D、if 17、设 int x=1, y=1; 表达式(!x||y)的值是( )。B A、0
B、 1
C、 2
D、
-1
18、下列标识符中,合法的标识符是( )。 C A、—abc1
B、8abc
C、_abc1
D、for
19、下列关系表达式中结果为假的是( )。C A、0!=1 B、2<=8
C、(a=2*2)= =2
D
、
y=(2+2)= =4
选择结构
1、对下述程序,正确的判断是( ) A #include”stdio.h” void main( ) {int x, y;
scanf(“%d, %d”, &x, &y); if(x>y) x=y; y=x; else x++; y++;
printf(“%d,%d”, x,y); }
A、有语法错误,不能通过编译 B、若输入数据3和4,则输出4和5
C、若输入数据4和3,则输出3和4 D、若输入数据4和3,则输出4 break;
case 2: printf(“%d\\n”,k++); case 3: printf(“%d\\n”,k++); 和4
2、以下程序的输出结果是( ) B #include”stdio.h” void main( )
{ 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; case 3: a++;b++; }
printf(“\\na=%d,b=%d”,a,b); }
A、 a=1,b=0 B、a=2,b=1 C、 a=1, b=1 D、a=2, b=2
3、以下程序的输出结果是( ) C #include”stdio.h” void main( )
{ int a=2, b= —1, c=2; if(aA、0 B、1 C、 2 D、3
4、以下程序的输出结果是( ) A #include”stdio.h” void main( )
{ int w=4, x=3, y=2, z=1;
Printf(“%d\\n”,(w 5、以下程序的运行结果是( ) #include”stdio.h” void main( ) {int k=2; switch(k) { case 1: prinft(“%d\\n”,k++); B break; case 4: printf(“%d\\n”,k++); default:printf(“Full!\\n”); } } A、1 B、2 C、2 D、3 3 3 2 2 6、请写出以下程序的输出结果( ) 1 #include”stdio.h” void main( ) { int a=100; if(a>100) printf(“%d\\n”, a>100); else printf(“%d\\n”, a<=100); } 7、当a=1,b=2,c=3时,以下语句执行后,a,b,c中的值分别是——、——、——。 3 2 2 if(a>c) b=a;a=c;c=b; 8、若变量已经正确定义,以下语句段的输出结果是——。 * # x=0;y=2;z=3; switch(x) { case 0:switch(y= =2) { case 1: printf(“*”); break; case 2: printf(“%”);break; } case 1: switch(x) { case 1: printf(“$”); case 2: printf(“*”); break; Default: printf(“#”); } } 9、如下程序的输出结果是( ) C #include”stdio.h” void main( ) { int a=12,b=5,c= —3; if (a>b) if(b<0) c=0; else c++; printf(“%d\\n”,c); } A、 0 B、 1 C、 -2 D、-3 10、以下程序运行后,如果从键盘输入5,则输出结果是( ) B #include”stdio.h” void main( ) { int x; scanf(“%d”,&x); if(x――<5) printf(“%d”,x); else printf(“%d”,x++); } A、3 B、 4 C、 5 D、6 11、以下程序的输出结果是( ) A #include”stdio.h” void main( ) { int a=15, b=21, m=0; switch(a%3) { case 0: m++; break; case 1: m++; switch(b%2) {default : m++; case 0: m++; break: } } printf(“%d\\n”,m); } A、 1 B、 2 C、3 D、4 12、两次运行下面的程序,如果从键盘上分别输入6和4,则输出的结果是( )A #include”stdio.h” void main( ) { int x; scanf(“%d”,&x); if(x++>5) printf(“%d”,x); else printf(“%d\\n”,x ——); } A、7和5 B、 6和3 C、 7和4 D、6和4 13、以下程序的输出结果是( ) C #include”stdio.h” void main( ) { int a= -1, b=1, k; if ((++a<0)&&!(b――<=0)) printf( “%d%d\\n”, a,b); else printf( “%d%d\\n”, b, a); } A、-1 B、0 C、1 D、0 1 1 0 0 14、以下关于运算符优先顺序的描述中正确的是( ) C A、关系运算符<算术运算符<赋值运算符<逻辑运算符 B、逻辑运算符<关系运算符<算术运算符<赋值运算符 C、赋值运算符<逻辑运算符<关系运算符<算术运算符 D、算术运算符<关系运算符<赋值运算符<逻辑运算符 16、若从键盘输入58,则以下程序输出的结果是( ) 585858 # include”stdio.h” void main( ) {int a; scanf(“%d”,&a); if(a>50) printf(“%d”,a); if(a>40) printf(“%d”,a); if(a>30) printf(“%d”,a); } 17、以下程序输出的结果是( ) 0 #include”stdio.h” void main( ) {int x, y; scanf(“%d, %d”, &x, &y); if(x>y) x=y; y=x; else x++; y++; printf(“%d,%d”, x,y); } 18、以下程序输出的结果是( ) 20, 0 #include”stdio.h”: void main( ) { int x=10, y=20, t=0; if(x= =y) t=x; x=y; y=t; printf(“%d,%d\\n”,x ,y); } 19、int a=2, b=3, c=4; 则执行语句a *=16+(b++) –(++c); 后a的值是( )。 20、以下程序的输出结果是( ) 2 #include”stido.h” main( ) {int x=2, y= -1, z=2; if(x {char grade; scanf(\"%c\",&grade); case „A‟: printf(\">=85\\"); 28 case ‟B‟: case ‟C‟: printf(\">=60\\"); case‟D‟: printf(\"<60\\"); A、**3 B、 ##3 C、##3 D、**3##4 ##4 **4 **4##5 **5 **5 ##5 6、 以下程序的输出结果是( ) -1 } 循环结构 1、下述for循环语句( ) B int i, k; for(i=0, k= -1; k=1; i++, k++) printf(“***”); A、 判断循环结束的条件非法 B、 是无限循环 C、只循环一次 D、一次也不循环 2、以下程序的输出结果是( ) A #include”stdio.h” void main( ) { int i; for(i=1;i<=5; i++) { if(i%2) putchar(„<‟); else continue; putchar(„>‟); } putchar(„#‟); } A、 < > < >< ># B、 >< > < > < # C、< > < ># D、>< > <# 3、以下程序段的输出结果是( ) C int x=3; do { printf(“%d”,x- =2); } while(!(- -x)); A、 1 B、 3 0 C、1 -2 D、 死循环 4、以下程序的输出结果是( ) B #include”stdio.h” void main( ) { int y=10; for( ; y>0; y――) if( y%3 = =0) { printf(“%d”,――y); continue; } } A、741 B、852 C、963 D、 8754321 5、若x是int型变量,以下程序段的输出结果是( ) D for(x=3;x<6;x++) printf ((x%2)?(“ **%d”):(“##%d\\n”), x); #include”stdio.h” void main( ) { int x=2; while(x――); printf(“%d”,x); } 7、以下程序段的输出结果是( ) int i=0,sum=1; do {sum+=i++;} while(i<5); printf(“%d\\n”,sum); 8、下述程序的运行结果是( ) #include”stdio.h” void main( ) { int s=0,k; for(k=7;k>4;k——) { switch(k) { case 1: case 4: case 7: s++; break; case 2: case 3: case 6: break; case 0: case 5: s+=2;break; } } printf(“s=%d”,s); } 9、下面程序输出结果是( ) #include”stdio.h” void main( ) { int a; for(a=0; a<6;a++) { if(a%2) printf(“%”); else continue; printf(“@”); } printf(“\\n”); } 11 s=3 %@%@%@ 10、以下循环体的执行次数是( ) C #include”stdio.h” void main( ) { int i,j; for(i=0,j=1;i<=j+1;i+=2,j——) printf(“%d\\n”,i); } A、3 B、2 C、1 D、0 11、以下程序中,while循环的次数是( ) D #include”stdio.h” void main( ) {int i=0; while(i<10) {if(i<1) continue; if(i= =5) break; i++; } } A、1 B、10 C、6 D、死循环,不能确定次数 12、以下for循环的循环次数( ) C for(x=0,y=0;(y!=123)&&(x<4); x++); A、无限循环 B、循环次数不定 C、循环执行4次 D、循环执行3次 13、执行下面程序片段的结果是( ) B int x=23; do { printf(“%d”,x--); }while(!x) A、321 B、 23 C、 没有输出 D、死循环 13、下面程序的输出结果是( ) D 有难度 #include”stdio.h” void main( ) { int k,j,m; for(k=5;k>=1; k- -) { m=0; for(j=k; j<=5; j++) m=m+k*j; } printf(“d\\n”,m); } A、124 B、25 C、36 D、15 14、下面程序的输出结果是( ) D #include”stdio.h” void main( ) {int x=10, y=10,i; for(i=0;x>8;y=++i) printf(“%d %d”,x- -, y); } A、10 1 9 2 B、9 8 7 6 C、10 9 9 0 D、10 10 9 1 15、下面程序段的输出结果是( ) A a=1; b=2; c=2; while(aA、 1,2,0 B、2,1,0 C、1,2,1 D、2,1,1 16、若有如下语句,则程序段( ) B int x=6; do{printf(“%d\\n”, x - =2); } while( - -x); A、输出的是1 B、输出的是4和1 C、输出的是3和0 D、死循环 17、下面程序的功能是计算1~10之间的奇数之和与偶数之和,请填空。 #include”stdio.h” void main( ) { int a, b, c,i; a=c=0; for(i=0; i<=10; i+=2) { a+=i; ___________; if(i<=10) b=i+1; c+=b; } printf(“%d”, a); printf(“%d”,c); } 18、以下程序的输出结果是( ) 52 #include”stdio.h” void main( ) { int i=10, j=0; do { j=j+i; i- -; }while( i>2); printf(“%d\\n”,j); } 19、有以下程序 #include”stdio.h” void main( ) { char c; while( (c=getchar( ))!=‟?‟ ) putchar( - -c); } 程序运行时,如果从键盘输入:Y?N? 则输出结果是( ); x 20、下面程序段的运行结果是( ) ** x=2; do {printf(“*”); x- - ;} while(x); 21、下面程序的运行结果是( ) 1, -2 有难度 #include”stdio.h” void main( ) { int y,a; y=2; a=1; while(y--!= —1) { do { a*=y; a++;} while(y- -); } printf(“%d,%d”, a, y); } 数组 1、合法的数组说明语句是( ) B A、int a[ ]=”string”; B、int a[5]={0,1,2,3,4}; C、char a=”string”; D、char a[ ]={0,1,2,3,4,5}; 2、调用strlen(“abcd\\0ef\\0g”) 的返回值是( ) A A、4 B、5 C、 8 D、9 3、若有以下语句,则正确的描述是( ) B char x[ ]=”12345”; char y[ ]={„1‟, „2‟, „3‟, „4‟, „5‟}; A、x数组和y数组的长度相同 B、x数组的长度大于y数组长度C、x数组的长度小于y数组长度 D、x数组等价于y数组 4、下面程序的运行结果是( ) ab char c[5]={„a‟,‟b‟,‟\\0‟,‟c‟,‟\\0‟}‟ printf(“%s”,c); 5、阅读程序,写出执行结果( ) Fortan #include”stdio.h” void main( ) { char str[30]; scanf(“%s”, str); printf(“%s”, str); } 运行程序,输入Fortan Language 6、阅读程序,写出执行结果( ) 0 1 2 3 #include”stdio.h” func (int b[ ]) { int j; for( j=0; j<4; j++) b[j]=j; } main( ) { int a[4], i func( a); for(i=0; i<4; i++) printf(“%d”,a[i]); } 7、 下列程序执行后的输出结果是( ) A #include”stdio.h” void main( ) { char arr[2][4]; strcpy (arr ,”you”); strcpy(arr[1], “me”); arr[0][3]=‟&‟; printf(“%s\\n”,arr); } A、you&me B、you C、me D、err 8、有如下程序的输出结果是( ) D #include”stdio.h” void main( ) { int n[5]={0,0,0},i,k=2; for(i=0; i A、不定值 B、2 C、1 D、0 9、如下程序的输出结果是( ) A #include”stdio.h” void main( ) {int a[3][3]={ {1,2}, {3,4}, {5,6}} , i, j, s=0; for (i=1; i<3; i++) for(j=0; jA、14 B、19 C、20 D、21 10、当执行下面的程序是,如果输入ABC,则输出的结果是( )#include”stdio.h” #include”stdio.h” void main( ) { char ss[10]=”1,2,3,4,5”; get(ss); strcat(ss, “6789”); printf(“%s\\n”, ss); } A、 ABC6789 B、ABC67 C、12345ABC6 D、ABC456789 11、以下程序的输出结果是( ) A #include”stdio.h” f( int b[ ], int m, int n) { int i, s=0;