C语言程序设计试题集(第6套)
一、单项选择题(30分,每题2分)
1. 下面关于C语言的说法,错误的是______。
A、一个C程序总是从执行main开始。
B、C程序可以用 /<*??*>/ 对程序作注释。
C、C语言本身没有输入输出语句,输入、输出操作由库函数scanf和printf等来完成。
D、在C程序中,数据定义的最后必须写上一个分号。
2.判断字符串s1是否大于字符串s2,应当使用 。 A、if (s1>s2) B、if (strcmp(s1,s2)) C、if (strcmp(s2,s1)>0) D、if (strcmp(s1,s2)>0)
3. 下列表达式错误的是______。
A、4/7 B、4.0/7.0 C、(-4)%(-7) D、4.0%7.0
4. 以下能定义为用户标识符的是______。
A、scanf B、printf C、_3com_ D、int
5. 能正确表示a和b 同时为正或同时为负的逻辑表达式是______。
A、(a>=0‖b>=0)&&(a< 0‖b<0) B、(a>=0&&b>=0)&&(a< 0&&b<0) C、(a+b>0)&&(a+b<=0) D、a*b>0
6. 若有以下程序段:int c1=1, c2=2 ,c3; c3=2.0+c1? ; 则执行后,c3的值是______。 A、2.0 B、2 C、 3.0 D、3
7.已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是______。 A、scanf(\
B、scanf(\ C、 scanf(\D、 scanf(\
8. 以下程序输出结果是 。
A、 7 B、 6
32
C、 5 D、4
main()
{ int m=5;
if(m++>5) printf(\ esle printf(\ }
9. 有以下程序段 #include
main() {int sum=0,i; scanf(\ do {sum=sum+i;i++;} while(i<=10); printf(\ }
若运行时从键盘输入11,则循环体会执行 。 A、11次 B、10次 C、1次 D、 0次
10.二维数组int a[4][4]前5个元素在内存中的排列次序为 。 A、 a[0][0] a[1][1] a[2][2] a[3][3] a[4][4] B、 a[0][0] a[0][1] a[0][2] a[0][3] a[1][0] C、 a[0][0] a[1][0] a[2][0] a[3][0] a[0][1]
D、 a[0] a[0][0] a[0][0][0] a[0][0][0][0] a[0][0][0][0][0]
11. 在C语言中,表达式1/2+1/2+1/2+1/4+1/5运算后得到的结果是 。
A、1.95 B、1.5 C、0 D、2.0
12.以下程序的输出结果是 。
A、3 B、2 C、1 D、4
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10} , *p ; p=a;
printf(\}
13.下面对一维数组初始化(10个元素,各元素都赋值为0)的语句不合法的是 。
A、int a[10]={0,0,0,0,0,0,0,0,0,0}; B、int a[10]={0}; C、int a[10]={0*10};
33
D、int a[]={0,0,0,0,0,0,0,0,0,0};
14. 有以下程序 main() { int i;
for (i=0; i<3; i++) switch (i)
{ case 1: printf(\ case 2: printf(\ default : printf(\ } }
执行后输出结果是 。 A、 011122 B、012 C、012020
D、 120
15. putchar函数可以向终端输出一个 。
A、整型变量表达式值 B、字符 C、字符串 D、实型变量值
三. 程序填空题(30分,每空3分) 1. 有以下语句段
int n1=10,n2=20;
printf(\ ① \
要求按以下格式输出n1和n2的值,输出行从第一列开始,请填空。 n1=10,n2=20
2. 以下程序的功能是找出x、y、z三个数中的最小值。请填空。
main( )
{ int x=4, y=5, z=8; int u, v;
u=x 3.统计数组元素中值大于等于60的元素的个数。请填空。 main() {int s,i,a[10]={50,60,70,80,90,100,66,44,55,77}; s=0; for(i=0;i<10;i++) if( ③ ) ④ ; printf(\ 34 } 4.用冒泡法对数组中的10个已知元素升序(由小到大)排序。请填空。 main() {int a[10]={3,2,1,8,7,9,5,4,10,12}; int i,j,t; for(i=0;i<9;i++) for(j=0; ⑤ ; j++) if(a[j]>a[j+1]) { t=a[j] ; ⑥ ; ⑦ ; } for(i=0;i<10;i++) printf(\ \} 5.有一函数: -1.0 (x<0.0) y={ 0 (x=0.0) 1.0 (x>0.0) 输入一个x值,输出y值。请填空。 main() { float x , y ; scanf (\ if (x<0) ⑧ ; else if (x>0) ⑨ ; else ⑩ ; printf (\} 三.程序阅读题(20分,每题4分) 1. 写出程序运行的结果: main ( ) {float i,j; 35
相关推荐: