2.4习题
一、选择题
1. ⊙一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是()。
A. 有0个或多个输入 B.有0个或多个输出C.有穷性 D.可行性 2. ⊙以下叙述中正确的是()。
A.用C程序实现的算法必须要有输入和输出操作 B.用C程序实现的算法可以没有输出但必须要有输入 C.用C程序实现的算法可以没有输入但必须要有输出 D.用C程序实现的算法可以既没有输入也没有输出
3. ⊙针对简单程序设计,以下叙述的实施步骤顺序正确的是()。 A.确定算法和数据结构、编码、调试、整理文档 B.编码、确定算法和数据结构、调试、整理文档 C.整理文档、确定算法和数据结构、编码、调试 D.确定算法和数据结构、调试、编码、整理文档 4. C语言中用于结构化程序设计的3种基本结构是()。 A.顺序结构、选择结构、循环结构B.if、switch、break C.for、while、do-whileD.if、for、continue 5. 以下叙述中错误的是()。
A.用户所定义的标识符允许使用关键字 B.用户所定义的标识符应尽量做到“见名知意” C.用户所定义的标识符必须以字母或下划线开头 D.用户定义的标识符中,大、小写字母代表不同标识 6. 以下选项中合法的用户标识符是()。 A.long B._2Test C.3Dmax D.for
7. 以下4个用户定义标识符中,全部合法的一组是()。 A._main encludeInt B.if –max turbo
-5-
C.txt REAL 3COM D.int k_2 _001 8. ⊙以下不是C语言提供的转义字符的是()。 A.?\\\\? B.?\\?? C.?074? D.?\\0? 9. C语言中,定义PI为一个符号常量,正确的是()。 A. #definePI3.14B.#define
C. #definePI =3.14 D.#include
10. 在定义变量时同时给a、b、c三个整型变量赋初值5的正确语句是()。 A.int a=b=c=5; B.int a, b, c = 5;
C.int a =5 ;b = 5; c =5 ; D.int a =5, b = 5, c =5;
11. 在C语言中,要求参加运算的数必是整数的运算符是()。 A./ B.* C.%D.=
12. 若int k=7,x=12;则能使值为3的表达式是()。
A.x%=(k%=5) B.x%=(k-k%5)C.x%=k-k%5 D.(x%=k)-(k%=5) 13. 若a是int型变量,则执行下面表达式a=25/3%3后a的值为( )。 A. 2 B.0 C.2.3 D.25
14. 若以下选项中的变量已正确定义,则正确的赋值语句是()。 A.x1=26.8%3; B.1+2=x2; C.x3-=12; D.x4=1+2=3; 15. ⊙已知char a=‘B’,b=‘O’,c=‘Y’;int i;则表达式i=a+b+c的值为()。 A.
BOY B.?BOY? C.?a+b+c?D. 234
16. 定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值为()。 A.1.4 B.1 C.2.0 D.2
17. 假定x和y为double型,则表达式x=2,y=x+3/2的值是()。 A.3.500000 B.3 C.2.000000 D. 3.000000 18. int x=11,表达式(x++*1/3)的值是()。 3 B.4 C.11 D.12
19. ⊙假设a=5,则printf(“%d,%d\\n”,a,a++ );语句的执行结果为()。 A . 5,5 B.5 5 C.6,5 D.6 5
20. ●运行如下程序段int a=5; printf(“%d%d\\n”,a,(a++)+( a++));后运行结果是()。 A.7 14 B.6 12 C.5 10 D.7 11
21. 运行如下程序段int i=10,j=1; printf(“%d,%d\\n”,i--,++j);后运行结果是()。 A.9,2 B. 10,2 C. 9,1 D. 10,1 22. ⊙以下为非法的赋值表达式是()。 A.n=(i=2,++i) B.j++C. ++(j+1) D. x=j>0
23. 设a和b均为double型变量,a=5.5,b=2.5则表达式(int)a+b/b的值是()。
-6-
A.6.500000 B.6 C.5.500000 D.6.000000
24. 已知x=3,y=2,则表达式x*=y+8的值为()。 A.3 B.2 C. 30 D.10
25. ⊙若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。 A .-3 B.9 C.-12 D.6
26. 已知ch是字符型变量,下面不正确的赋值语句是()。 A.ch=?boy?; B.ch=?\\0?; C.ch=98 D.ch=?\\\\?; 27. 执行下列程序片段时运行结果是()。 int x=13,y=5;
printf(“%d”,x%=(y/=2)); A.3 B.2 C.1 D.0
28. ⊙假设所有变量均为整型,且num=7,sum=7;则表达式sum=num++,sum++,++num执行后的值为()。
A. 7
B. 8 C. 9
D. 10
29. 设x,i,j,k都是int型变量,表达式x=(i=4,j=16,k=32)计算后,x的值为()。 A. 4 B.16 C.32 D.表达式不正确 30. ●执行下列程序片段时运行结果是()。 int x=5,y;
y=2+(x+=x++,x+8,++x); printf(“%d”,y); A.13 B.14 C.15 D.16 二、填空题
1. C 语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须是字母或下划线。
2. 在C语言中的实型变量分为单精度实型float和双精度实型 double两种类型。 3. 表达式m%=3+n等价于__m= m%(3+n)______________。 4. 若有定义int a=5,n=2;则执行表达式a%=(n%=2)+1后a的值是0。 5. 如果a=3,b=0,c=-1,以表达式(a+c) || b && c的结果为___1_______。 6. ⊙设a=2,b=3,x=3.5,y=2.5,则(float)(a+b)/2+(int)x%(int)y的结果为3.5。 7. ⊙设int a;float f;double i ;则表达式10+’a’+i*f值的数据类型是double。 8. 假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为9。 三、程序分析题
1. 以下程序的运行结果是:_(a+b)*3=66↙__________。 #include
-7-
int main( ) {int a,b,s;
a = 4;b =18;
s = (a + b)*3; printf(“(a+b)*3=%d\\n”,s); return 0; }
2. 以下程序的运行结果是:___8,9,4,17↙_________。 #include
i=6; j=9; m=++i-3; n=j+(++i);
printf(“%d,%d,%d,%d\\n”, i, j, m, n); return 0; }
3. 数字字符0的ASCII值为48,以下程序的运行结果是:__2 #include
printf(“%c”,b++); printf(“%d\\n”,b-a); return 0; }
4. 以下程序的运行结果是:____2,1↙________。 #include
a=d/10%9; b=a&&(-1);
printf(“%d,%d\\n”,a,b); return 0; }
-8-
2↙_____。

