C语言程序设计-自测练习(2013第一稿)

更新时间:2023-12-03 18:46:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1.7 自测练习

1. C语言是一种( )。

A. 低级语言 B. 高级语言 C. 机器语言 D. 汇编语言 2. 以下描述中错误的是( )。

A. 不同的计算机可以理解的机器语言也不同

B. 机器语言和汇编语言都和具体的硬件平台相关,因此统称为低级语言 C. 高级语言编写的程序较为简洁,可读性较好

D. 编译方式执行速度较快,且每次修改源程序后不必重新进行编译处理 3. 以下描述中正确的是( )。

A. C语言编程的一个显著特点是以计算机工作方式来思考和组织程序代码

B. 面向过程的程序设计方法以提高执行效率、少占内存作为目标 C. 面向过程的程序设计方法一般采用结构化和模块化设计思想

D. 面向对象的程序设计方法提高了软件开发的可重用性,但增加了程序开发的复杂性 4. 以下描述中错误的是( )。

A. 编写C程序的过程通常称为编辑,结果将得到 .c源文件

B. C源程序经过编译,将生成本机目标代码文件,扩展名为obj

C. 链接过程通常是将目标代码文件和程序中使用到的其他代码连接在一起 D. 运行结果不对,通常是由于语法错误引起的 5.语句“printf(\”将输出( )。

A. 1行 B. 2行 C. 3行 D. 4行 6.有以下程序 #include \void main( )

{ float a=b=2, result;

result=a/b;

printf(\ } 正确的说法是( )。

A. 因为变量声明问题导致编译出错

B. 因为result=a/b;语句有误导致编译出错 C. 输出结果为result=2.000000 D. 输出结果为result=1.000000

7.下列程序运行时输入3 4,则程序的输出结果是(#include \int multi(int a,int b) { return a*b; } void main() { int x,y,t;

printf(\scanf(\t= multi(x,y);

printf(\

A. 3 B. 4 C. 7 D. 12 8.以下程序的运行结果是( )。 #include \#define RATE 0.05 void main( )

{ double salary,tax;

salary=5000.00;

tax=(salary-3000)*RATE;

printf(\ }

。 ) A. 5000.00 B. 100.00 C. 4900.00 D. 3000.00 9.以下程序的运行结果为( )。 #include \void main()

{ printf(\ A. 148 B. 1,4,8 C. 144 D. 13 10.有以下程序 #include \void main() { char ch; printf(\输入一个大写字母:\ scanf(\ digit=ch-'A'; printf(\ }

若程序运行时输入 B ,则程序的输出结果是( )。 A. 编译时出错 B. b,B C. b,1 D. B,1

2.5 自测练习

1.已定义: int k,a,b;unsigned long w=5;double x=1.42, 不正确的表达式是( )。 A.x%(-3) B.w+= -2 C.k=(a=2,b=3,a+b) D.a+=a-=(b=4)*(a=3) 2. 单精度变量x=3.0,y=4.0,下列表达式中的y的值为9.0的是( )。 A. y/=x*27/4 B. y+=x+2.0 C. y-=x+8.0 D. y*=x-3.0

3.已定义 int num=sum=7, (sum=num++, sum++, ++num)表达式的结果是( )。 A.7 B.8 C.9 D.10

4.若有定义:int a=7; float x=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是( )。 A.2.500000 B.4.50000 C.3.500000 D.0.00000

5.若x、i、j和k都是int型变量,则执行下面表达式x=(i=4,j=16,k=32)后x的值为( )。 A.4 B.16 C.32 D.52

6. 设有定义:int x=2;,以下表达式中,值不为6的是( )。 A.x*=x+1 B.x++,2*x C.x*=(1+x) D.2*x,x+=2 7. 若变量a、i已正确定义,且i已正确赋值,合法的语句是( )。 A. a==1 B. ++i; C. a=a++=5; D. a=int(i); 8. 执行下面程序段的输出结果是( )。

int x=023,y=5,z=2+(y+=y++,x+8,++x); printf(\A.18,13 B.19,14 C.22,21 D.20,22

9. 已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1,j的值为2,k的值为3,以下选项中正确的输入语句是( )A.scanf(\B.scanf(\

C.scanf(\ D.scanf(\10. 执行下面程序段的输出结果为( )。 int x=13,y=5; printf(\A.3 B.2 C.1 D.0 3.6 自测练习

1.为表示关系x≥y≥z,应使用C语言表达式( )。

A. (x>=y)&&(y>=z) B. (x>=y)and(y>=z) C. x>=y>=z D. (x>=Y)&&(Y>=z) 2.以下运算符中优先级最低的运算符为( )。

A. && B. & C.!= D. || 3.下列表达式中,( )不满足“当x的值为偶数时其值为真,为奇数时其值为假”的要求。A. x%2==0 B.!x%2!=0 C. (x/2*2-x)==0 D.!(x%2) 4.判断char型变量ch是否为大写字母的正确表达式是( )。 A. 'A'<=ch<='Z' B. (ch>='A')&(ch<='Z') C. ch>='A' && ch<='Z' D. ('A'<=ch)AND('Z'>=ch) 5.在C语言中,要求运算数必须是整型的运算符是( )。 A./ B.++ C.!= D.% 6.下述程序段的输出结果是( )。 int a=2,b=3,c=4,d=5; int m=2,n=2;

a=(m=a>b)&&(n=c>d)+5; printf(\

A. 0 B. 1 C. 2 D. 5 7.执行下列程序段后,变量m的值是( )。 int w=1,x=2,y=3,z=4,m; m=(w

A. 4 B. 3 C. 2 D. 1

8.有定义语句:int a=1,b=2,c=3,x;,则以下选项中各程序段执行后,x的值不为3的是( A.if(c3) x=3; else if(a<2) x=2; else x=1;

。 )

本文来源:https://www.bwwdw.com/article/9kot.html

Top