南工院07-08_1_C语言期末B卷
南京工业职业技术学院
2007/2008 第一 学期 期末考试试卷
课程: 《C语言程序设计》
一、选择题(每题2分,共50分)
1、 若变量x、y已正确定义并赋值以下符合C语言语法的表达式是A ++x, y=x—B x+1 y C x x+10 x+y D double x /10 2、若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式 x-y ? x++ : y++ 中的条件表达式 x-y 等价的是A x-y 0 B x-y 0 C x-y 0‖ x-y 0 D x-y 0
3、若有以下程序段,其输出的结果是 。
int a 0,b 0,c 0;
c a- a-5 , a b,b+3 ;
printf “%d,%d%d\n”,a,b,c ;
A 0,0,10 B 0,0,5 C -10,3,-10 D 3,3,-10A的ASCII码为十进制数65,且c2为字符型,则执行语句c2 ‘A’+ ‘6’- ‘3’;后,c2中的值为 ______ 。
A)D B)68 C)不确定的值 D)C
5、一个用C语言编写的源程序中, ______是必不可少的。
A 取名为main的函数定义 B #include
C 变量声明 D 注释
6、已知字符A的机内编码为65,则执行下列函数调用语句时,不能输出字符B的是_____ 。
A)putchar ‘B’ B)putchar “B” C)putchar 66 D)putchar ‘\x42’
7、把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是
A)k%2B)k%2 1 C) k%2 ! 0 D)!k%2 1“int a;”,以下不能正确表达数学关系10 a 15的表达式是____ 。
A 10 a 15 B a 11||a 12||a 13||a 14
C a 10 && a 15 D ! a 10 && ! a 15
9、以下关于if语句的错误描述是_____ 。
A)条件表达式可以是任意的表达式 (B)条件表达式只能是关系表达式或逻辑表达式
C)条件表达式的括号不可以省略 D)与else配对的if语句是其之前最近未配对的if语句
10、逻辑“异或”运算可描述为“a xor b”,其中a和b为参加运算的两个操作数,运算结果为当且仅当a、b两个操作数中只有一个为真时才为真,其他情况下均为假。以下表达式中_____可以正确表示逻辑“异或”运算。
A)a||b B) a&&b &&! a||b C) a&&b D) a||b &&! a&&b
11、有字符数组s1[10]和s2[10],则以下正确的输入语句是_________。
A)gets s1,s2 ; B)scanf "%s,%s",s1,s2 ;
C)gets " s1" ;gets "s2 " ; D)scanf "%s,%s",&s1,&s2 ;
12、设k为整型变量,则以下循环执行次数是_______。
for k 6;k 4; printf “%d”,k-- ;
A)0 B)1 C)2 D)死循环
13、以下叙述正确的是 。
A do_while语句构成的循环不能用其他语句构成的循环来代替。 B do_while语句构成的循环只能用break语句退出。
C 用do_while语句构成循环时,只有在while后的表达式为非零时结束循环。 D 用do_while语句构成循环时,只有在while后的表达式为零时结束循环。
14、以下程序的运行结果是_____ 。
main int m 5; if m++ 5 printf “%d\n”,m ; else printf “%d\n”,m-- ;
A)4 B)5 C)6 D)7
15、以下程序段的输出结果是 。
main int i; for i 1;i 5;i++ if i%2 printf “*” ; else continue; printf “#” ; printf “$\n” ; A *#*#*#$ B #*#*#*$ C *#*#$ D #*#*$
16、若要求从键盘读入含有空格字符的字符串,应使用函数 。
A getc B gets C getchar D scanf
17、有以下程序程序运行后的输出结果是 main
char p[] 'a', 'b', 'c' , q[] "abc";
printf "%d %d\n", sizeof p ,sizeof q ;
;
A)4 4 B)3 3