正确答案: A
3.28 下列关于复合语句和空语句的说法错误的是 A)复合语句是由“{”开头,由“}”结尾的 B)复合语句在语法上视为一条语句
C)复合语句内,可以有执行语句,不可以有定义语句部分 D)C程序中的所有语句都必须由一个分号作为结束 正确答案: C
3.29 下列关于字符串的说法中错误的是
A)在C语言中,字符串是借助于字符型一维数组来存放的,并规定以字符′\\0′作为字符串结束标志
B)′\\0′作为标志占用存储空间,计入串的实际长度 C)在表示字符串常量的时候不需要人为在其末尾加入′\\0′ D)在C语言中,字符串常量隐含处理成以′\\0′结尾 正确答案: B
二、填空题(请将每一个空的正确答案写在答题卡相应序号后。) 3.30 以下程序的输出结果是【1】。 int a=1234; printf (\,a); 正确答案: 1234
3.31 在计算机中,字符的比较是对它们的【2】进行比较。 正确答案: ASCII码
3.32 在内存中,存储字符′x′要占用1个字节,存储字符串″X″要占用【3】个字节。 正确答案: 2
3.33 在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为4;一个double型数据在内存中所占的字节数为【4】。 正确答案: 8
3.34 以下程序段的输出结果是【5】。 main ()
{int a=2,b=3,c=4; a*=16+(b++)-(++c); printf(\ }
正确答案: 28
3.35 以下程序段的输出结果是【6】 。 int x=17,y=26;
printf (\ 正确答案: 5
3.36 下列y的值是 【7】 。 int y; y=sizeof(2.25*4); 正确答案: 8
3.37 以下程序的输出结果是 【8】 。 main () {int i=010,j=10; pirntf (\ }
正确答案: 8,10
3.38 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=′a′+′8′-′3′的值为 【9】 。 正确答案: f
3.39 如下语句printf(\′B′+40);在执行后的输出结果是 【10】 。 正确答案: j
3.40 定义int a=5,b=20;若执行语句printf(\后,输出的结果为 【11】 。
正确答案: 9
第4章 顺序程序设计
一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)
4.1 若变量已正确说明为float型,要通过语句scanf(\给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是 A)10<回车>22<回车>33<回车> B)10.0,22.0,33.0<回车> C)10.0<回车>22.0 33.0<回车> D)10 22<回车>33<回车> 正确答案: B 4.2 现有以下程序段 #include main() { int a,b,c;
scanf(\ printf(\
若输出的结果为a=20,b=30,c=40,则以下能够正确输入数据的是 A)a=10]20,b=20]30,c=40 B)20,30,40 C)a=20,b=30,c=40 D)a=10]20,b=30]20,c=40 [注]: “]”表示空格,表示回车 正确答案: D
4.3 x,y,z被定义为int型变量,若从键盘给x,y,z输入数据,正确的输入语句是 A)INPUT x、y、z;
B)scanf(\ C)scanf(\ D)read(\ 正确答案: B
4.4 已有定义int a=-2;和输出语句 printf(\以下正确的叙述是 A)整型变量的输出形式只有%d一种
B)%x是格式符的一种,它可以适用于任何一种类型的数据
C)%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的 D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度
正确答案: D
4.5 下列程序段的输出结果是: int a=1234; float b=123.456; double c=12345.54321; printf(\ A)无输出
B)12,123.5,12345.5 C)1234,123.5,12345.5 D)1234,123.4,1234.5 正确答案: C
4.6 执行下列程序时输入:123<空格>456<空格>789<回车> 输出结果是 main()
{ char s[100]; int c, i;
scanf(\ printf(\ A)123,456,789 B)1,456,789 C)1,23,456,789 D)1,23,456 正确答案: D
4.7 若已定义:int a=25,b=14,c=19;以下三目运算符(?:)所构成语句的执行后
a<=25&&b--<=2&&c?printf(\,a,b,c);程序输出的结果是 A)***a=25,b=13,c=19 B)***a=26,b=14,c=19 C)### a=25,b=13,c=19 D)### a=26,b=14,c=19 正确答案: C
4.8 请选出以下语句的输出结果 printf(\ A)5 B)14 C)8