C语言复习题整理 下载本文

第2部分 C语言程序设计习题与解答 题解1 绪 论 1.1 习题 一、选择题

1.一个完整的可运行的C源程序中(

B

)。

A.可以有一个或多个主函数 B.必须有且仅有一个主函数 C.可以没有主函数 D.必须有主函数和其他函数

2.构成C语言源程序的基本单位是(

D

)。

A.子程序 B.过程 C.文本 D.函数

3.某C程序由一个主函数main( )和一个自定义函数max( )组成,则该程序(

D

)。

A.总是从max( )函数开始执行 B.写在前面的函数先开始执行 C.写在后面的函数先开始执行 D.总是从main( )函数开始执行

4.C语言规定,一个C源程序的主函数名必须为(

C

)。

A.program B.include C.main D.function

5.下列说法正确的是(

C )。

A.在书写C语言源程序时,每个语句以逗号结束 B.注释时,'/'和'*'号间可以有空格

C.无论注释内容的多少,在对程序编译时都被忽略 D.C程序每行只能写一个语句

6.C语言源程序文件的后缀是(

C

),经过Compile后,生成文件的后缀是(

A

),经过Build后,生成文

件的后缀是(

B )。

A

D

C)。

A..obj B..exe C..c D..doc

7.Visual C++ 6.0 IDE的编辑窗口的主要功能是( ),输出窗口的主要功能是( ),调试器(Debug)的主要功能是(

A.建立并修改程序 B.将C源程序编译成目标程序 C.跟踪分析程序的执行 D.显示编译结果信息(如语法错误等)

8.在Visual C++ 6.0开发环境下,C程序按工程(project)进行组织,每个工程可包括(

函数。

A.1个 B.2个

D )C/CPP源文件,但只能有( A )main

C.3个 D.1个以上(含1个)

9.调试程序时,如果某个语句后少了一个分号,调试时会提示错误,这种情况一般称之为(

A

)。而某个“计算2的平方”的程序

在调试时没有提示出错,而且成功执行并计算出了结果,只是结果等于5,这种情况一般称之为(

A.语法错误 B.正常情况

D )。

C.编译器出错 D.逻辑设计错误 二、简答题

1.如何使用注释语句?使用注释有何好处?

符号名包括模块名、常量名、标号名、子程序名等。

这些名字应该能反映它所代表的实际东西,具有一定的意义,使其能够见名知义,有助于对程序功能的理解

3.简述C程序上机调试的一般步骤?编辑,编译,连接,运行

2.C程序对书写格式有何要求?规定书写格式有何好处?4.简述C程序从.c源文件到.exe可执行文件的生成过程?

第一步是预处理,包括语法检查等工作。 gcc -P abc.c

第二步由源程序生产汇编语言代码。 gcc -S abc.c

会生成abc.s文件,这个文件里就是汇编代码。

第三步编译器生成目标代码,一个源文件生成一个目标代码。 gcc -c abc.c 会生成abc.o

第四步连接器从目标代码生成可执行文件。 gcc abc.o

题解2 基本数据类型与运算符

2.1 习题 一、选择题

1.C语言中最基本的非空数据类型包括( D )。

A.整型、浮点型、无值型 B.整型、字符型、无值型 C.整型、浮点型、字符型 D.整型、浮点型、双精度型、字符型 2.C语言中运算对象必须是整型的运算符是( A )。

A.% B./ C.= D.〈= 3.若已定义x和y为int类型,则执行了语句x=1;y=x+3/2;后y的值是( B )。

A.1 B.2 C.2.0 D.2.5 4.若有以下程序段:

int a=1,b=2,c; c=1.0/b*a;

则执行后,c中的值是( A )。

A.0 B.0.5 C.1 D.2 5.能正确表示逻辑关系:\≥10或a≤0\的C语言表达式是( D )。

A.a>=10 or a<=0 B.a>=0|a<=10 C.a>=10 && a<=0 D.a>=10‖a<=0 6.下列字符序列中,不可用作C语言标识符的是( B )。

A.xds426 B.No.1 C._ok D.zwd 7.在printf( )函数中,反斜杠字符'\\'表示为( D )。

A.\\' B.\\0 C.\\n D.\\\\ 8.设先有定义:

int a=10;

则表达式a+=a *=a的值为( D )。

A.10 B.100 C.1000 D.200 9.设先有定义: int a=10;

则表达式(++a)+(a --)的值为( C )。

A.20 B.21 C.22 D.19 10.有如下程序: #include main( ) {

int y=3,x=3,z=1;

printf(\ %d\\n\}

运行该程序的输出结果是( D )。

A.3 4 B.4 2 C.4 3 11.假定x、y、z、m均为int型变量,有如下程序段:

x=2; y=3; z=1; m=(y

则该程序运行后,m的值是( C )。

A.4 B.3 C.2 12.以下选项中合法的字符常量是( B )。

A.\ B.'\\010' C.68 13.设x=3,y=4,z=5,则表达式((x+y)>z)&&(y==z)&&x||y+z&&y+z的值为( B )

A.0 B.1 C.2 ((x+y)>z)&&(y==z)&&x||(y+z)&&(y+z)=1&&0&&3||9&&9=0||1=1

14.如果a=1,b=2,c=3,d=4,则条件表达式a

A.1 B.2 C.3 15.设int m=1,n=2; 则m++==n的结果是( A )。

A.0 B.1 C.2 二、填空题

1.表达式10/3的结果是 3 ;10%3的结果是 1 。 2.执行语句:int a=12;a+=a-=a*a;后的值是 -264 。 3.以下语句的输出结果是 -1 。

short b=65535; printf(\

4.以下程序的执行结果是 X=3,a=2,b=2 。

D.3 3

D.1

D.D

D.3

D.4

D.3

#include main( ) {

int a,b,x; x=(a=3,b=a--);

printf(\}

5.以下程序的执行结果是 0 。

#include main( ) {

float f1,f2,f3,f4; int m1,m2; f1=f2=f3=f4=2; m1=m2=1;

printf(\}

6.以下程序的执行结果是 n=1 。

#include main( ) {

float f=13.8; int n; n=(int)f%3;

printf(\}

三、简答题

2.简述转义字符的用途并举实例加以说明。

题解3 控制结构

3.1 习题 一、选择题

1.结构化程序模块不具有的特征是( B )。

A.只有一个入口和一个出口 B.要尽量多使用goto语句

C.一般有顺序、选择和循环3种基本结构 D.程序中不能有死循环

2.C语言中,逻辑“真”等价于( C )。

A.整数1 B.整数0 C.非0数 3.以下4条语句中,有语法错误的是( D )。

A.if (a>b) m=a; B.if D.TRUE m=b;

(a