一、单项选择题(每小题2分,共20分)
第一章
D 1.下列说法中错误的是( )。
A、程序的执行总是从主函数开始
B、主函数可以调用任何非主函数的其它函数
C、任何非主函数可以调用其它任何非主函数
D、程序可以从任何非主函数开始执行
C 2.若a=4,b=7,则输出4*7=28的语句是( )。
A令数组全部的值为0、printf(“a*b=%d\n”a+b);
B、 printf(“a*b=%d\n”,a*b);
C、printf(“%d*%d=%d\n”,a,b,a*b);
D、 printf(“%d*%d=%d\n”,a+b);
第三章
C 1. C语言中int型数据占2个字节,则long型数据占(C )个字节。
A、1 B、2 C、4 D、8
D 2.若C中int型数据占2个字节,则double型数据占(D )个字节。
A、1 B、2 C、4 D、8
B 3.若a为整型变数,则以下语句(B )。
a=-2L;
printf(“%d\n”,a);
A、赋值不合法 B、输出-2 C、输出不确定值 D、输出2
D 4. 若int型数据占2个字节,则下列语句的输出为(D )。
int k=-1;
printf(“%d,%u\n”,k,k);
A、-1,-1 B、-1,32767 C、-1,32768 D、-1,65535
B 5. 下列程序的输出是(B )。
#include<stdio.h>
main()
{printf(“%d\n”,null);}
A、0 B、变量无定义 C、-1 D、1
C 6.若x为float型变数,则以下语句:
x=223.82748;
printf("%6.2f\n",x);
运行结果为(C )。
A、223.8 B、223.82 C、223.83 D、223.827
D 7. 设有语句int a=3;则执行语句a+=a-=a*a后,变量a 的值是(D )。
A、3 B、0 C、9 D、-12
第四章
A 1. 执行语句:a=5,b=8;printf(“%d\n”, c=a/b); 后输出的值为(A )。
A、0 B、0.6 C、0.625 D、0.
B 2. 下列语句(B )。
int k=8567;
printf(“|%06d|\n”,k);
A、输出格式描述符不合法 B、输出为||
C、输出为|8567 | D、输出为|-08567|
C 3. 下列语句(C )。
int k=8567;
printf(“|%-06d|\n”,k);
A、输出格式描述符不合法 B、输出为||
C、输出为|8567 | D、输出为|-08567|
C 4. 若ch为字符型,k为整,则执行下列语句后的输出为(C )。
ch=’a’;
k=12;
printf(“%x,%o,”,ch,ch,k);
printf(“k=%%d\n”,k)
A、因变量类型与格式描述符的类型不匹配,输出无定值;
B、输出项与格式描述符个数不符,输出为0或不定值;
C、61,141,k=%d;
D、61,141,k=%12
D 5. 若k,g为int型变数,则下列语句的输出为(D )。
k=017;
g=111;
printf(“%d,%x\n”,++k,g++);
A、15,6f B、16,70 C、15,71 D、16,6f
B 6. 有以下程序I和II,判断它们的输出(B )。
I #include<stdio.h>
main()
{int a=4,b=7;
printf(“%d\n”,(a=a+1,b+a,b+1));
}
II #include<stdio.h>
main()
{int a=1,b=2;
printf(“%d\n”,a=a+1,a+b,b+1));
}
A、I输出5,II输出2 B、I输出8,II输出2
C、I输出5,II输出3 D、I输出8,II输出3
A 7. 下列程序的输出为(A )。
#include<stdio.h>
main()
{int m=7,n=4;
float a=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf(“%f\n”,x);
}
A、27. B、27.
C、28. D、28.
第五章
D 1. 在C语言中,能代表逻辑值“真”的是(D )。
A、true B、大于0的数 C、非0整数 D、非0的数
C 2. 若给定表达式(M)?(a++):(a--),则其中表达式M(C )。
A、和(M= =0)等价 B、和(M= =1)等价
C、和(M!=0)等价 D、和(M!=1)等价
D 3. 在C语言的if语句中,用作判断的表达式为(D )。
A、关系表达式 B、逻辑表达式
C、算术表达式 D、任意表达式
D 4. 以下程序的输出是(D )。
#include<stdio.h>
main()
{int i,j,k,a=3,b=2;
i=(--a= =b++)?-- a:++b;
j=a++;k=b;
printf(“I=%d,j=%d,k=%d\n”,i,j,k);
}
A、i=2,j=1,k=3 B、i=1,j=1,k=2
C、i=4,j=2,k=4 D、i=1,j=1,k=3
B 5. 执行下面的程序:
main()
{int x;
scanf("%d", &x);
if (x++>5) printf("%d\n", x);
else printf("%d\n",-x);
}
若输入5,则输出为(B )。
A、6 B、-6 C、5 D、-5
6. 有程序段:
int a,b;
a=9; b=10;
则表达式:(++a= =b--)?--a:++b的值为(B )。
A、8 B、9 C、10 D、11
●7. 假设所有变量都是整型,则表达式:
a=2,b=5,a>b?a++:b++,a+b
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论