您的当前位置:首页正文

C语言程序设计复习题(专升本)

2021-08-07 来源:个人技术集锦
C语言程序设计复习题(专升本)

《C语言程序设计》复习题(专升本) 一、填空题

1、关系操作的特点是操作。

2、按照软件测试的一般步骤,集成测试应在测试之后进行。 3、软件工程三要素包括方法、工具和过程,其中,支持软件开发的各个环节的控制和管理。

4、E-mail地址由用户和域名两部分组成,这两部分的分隔符为。 5、在二维表中,元组的不能再分成更小的数据项。

6、设变量a和b已正确定义并赋初值。请写出与a-=a+b等价的赋值表达式。

7、在DOS环境下,表示打印机的设备文件名为。 8、数据的逻辑结构有线性结构和两大类。

9、顺序存储方法是把逻辑上相邻的结点存储在物理位置的存储单元中。

10、一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的。

11.是C程序的基本单位,一个C程序总是从开始执行。 12.C语言规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或。

13.著名计算机科学家沃思提出的一个公式:数据结构+=程序 14.表达式 !!5的值是______。 15.下列程序段的输出结果是______。 printf(\"%xn\16.下列程序段的输出结果是_____。 int k, s;

for(k=0, s=0; k<10; k++) if (s>k) break ; else s += k;

printf(\"k=%d s=%d\17.下列程序段的输出结果是_____。 #define MIN(x,y) (x)<(y)?(x) : (y) printf(\"%d\

18.下列程序在运行时可能会出错,原因是______。 # include void main( )

{ char *s; gets(s); puts(s); } 19. 表达式1<0<5的值是。 20. 表达式 ~(10>>1^~5) 的值是。 二、选择题

1、以下叙述中正确的是 A. C语言比其他语言高级

B. C语言可以不用编译就能被计算机识别执行

C. C语言以接近英语国家的自然语言和数学语言作为语言的表达形式

D. C语言出现的最晚,具有其他语言的一切优点 2、C语言中用于结构化程序设计的三种基本结构是 A.顺序结构、选择结构、循环结构 B. if、switch、break C. for、while、do-while D. if、for、continue 3、在一个C程序中

A.main函数必须出现在所有函数之前 B. main函数可以在任何地方出现 C. main函数必须出现在所有函数之后 D. main函数必须出现在固定位置 4、下列叙述中正确的是

A.C语言中既有逻辑类型也有集合类型 B. C语言中没有逻辑类型但有集合类型

C. C语言中有逻辑类型但没有集合类型 D. C语言中既没有逻辑类型也没有集合类型 5、下列关于C语言用户标识符的叙述中正确的是 A.用户标识符中可以出现在下划线和中划线(减号) B.用户标识符中不可以出现中划线,但可以出现下划线

C.用户标识符中可以出现下划线,但不可以放在用户标识符的开头

D.用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头

6、以下叙述中正确的是 A.构成C程序的基本单位是函数 B.可以在一个函数中定义另一个函数 C.main()函数必须放在其他函数之前 D.C函数定义的格式是K&R格式 7、应用数据库的主要目的是 A.解决数据保密问题 B.解决数据完整性问题 C.解决数据共享问题 D.解决数据量大的问题 8、一个C语言程序是由 A.一个主程序和若干子程序组成 B.函数组成 C.若干过程组成 D.若干子程序组成

9、请选出可用作C语言用户标识符的是 A.void,define,WORD B.a3_b3,_123,IF3、 C.FOR,--abc,Case D.2a,Do,Sizeof

10、下列各数据类型不属于构造类型的是

A.枚举型 B.共用型 C.结构型 D.数组型

11、在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是

A.a=20000+20000; B.a=4000*10; C.a=30000+10000; D.a=4000L*10L

12、以下不正确的叙述是

A.在C程序中,逗号运算符的优先级最低 B.在C程序中,APH和aph是两个不同的变量

C.若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变

D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

13、sizeof(float)是 A.一个双精度型表达式 B.一个整型表达式 C.一种函数调用 D.一个不合法的表达式

14、若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为

A.4 B.16 C.32 D.52

15、设有定义:int n=0,*p=&n,**q=&p,则下列选项中正确的赋值语句是

A.p=1; B.*q=2; C.q=p; D.*p=5;

16、以下叙述中正确的是 A.C程序的基本组成单位是语句 B.C程序中的每一行只能写一条语句 C.简单C语句必须以分号结束 D.C语句必须在一行内写完 17、计算机能直接执行的程序是 A.源程序 B.目标程序 C.汇编程序 D.可执行程序

18、以下关于宏的叙述中正确的是 A.宏名必须用大写字母表示

B.宏定义必须位于源程序中所有语句之前 C.宏替换没有数据类型限制 D.宏调用比函数调用耗费时间 19、以下选项中正确的定义语句是 A.double a;b; B. double a=b=7 C.double a=7,b=7; D.double,a,b;

20、以下不能正确表示代数式2ab/cd 的C语言表达式是 A.2*a*b/c/d B.a*b/c/d*2 C.a/c/d*b*2 D.2*a*b/c*d

21、C源程序中不能表示的数制是

A.二进制 B.八进制 C.十进制 D.十六进制

22.检查软件产品是否符合需求定义的过程称为 A.确认测试 B.集成测试 C.验证测试 D.验收测试

23.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是

A.控制流 B.加工 C.数据存储 D.源和潭

24.若变量已正确定义为

int 型,要通过语句

scanf(〞%d,%d,%d〞,&a,&b,&c.给a赋值1、给b赋值2、给c赋值3,以下输入形式中错误的是(u代表一个空格符.

A.uuu1,2,3<回车> B.1u2u3<回车> C.1,uuu2,uuu3<回车> D.1,2,3<回车> 25.有以下程序段 int a,b,c;

a=10;b=50;c=30; if(a>b) a=b,b=c,c=a;

printf(〞a=%d b=%d c=%d\\n〞,a,b,c); 程序的输出结果是

A.a=10 b=50 c=10 B. a=10 b=50 c=30

B.a=10 b=30 c=10 D.a=50 b=30 c=50 26、一个C语言程序是 A.一个主程序和若干子程序组成 B.函数组成 C.若干过程组成 D.若干子程序组成

27、一个C程序的执行是从

A.本程序的main函数开始,到main函数结束

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C.本程序的main函数开始,到本程序文件的最后一个函数结束 D.本程序文件的第一个函数开始,到本程序main函数结束 28、以下叙述不正确的是

A.一个C源程序可由一个或多个函数组成 B.一个C源程序必须包含一个main函数 C.C程序的基本组成单位是函数

D.在C程序中,注释说明只能位于一条语句后面 29、以下能对一维数组a进行正确初始化的语句是 A.int a[10]=0,0,0,0,0); B.int a[10]={}; C.int a[]={0}; D.int a[10]={10*1};

30、以下正确的函数定义形式是 A.double fun(int x,int y) B.double fun(int x;int y) C.double fun(int x,int y); D.double fun(int x,y); 三、判断题

1.在C语言中,各种类型的整型数据在内存中都占2个字节。 2. 表达式 (j=3, j++) 的值是4。

3.格式字符%e以指数形式输出实数数字部分小数位数7位。 4.char c[6]=\"abcde\"; printf(\"%3s\表示输出的字段的宽度为3位,如果被输出的数据的位数大于3,只输出3位数。

5.设d=1,e=2,f=3,则逻辑表达式!(d+e)+f&&e+f*2的值为0。 6.已知a=1,b=2,c=3,d=4,则条件表达式a>b?a:(c>d?c:d)的值为4。

7.已知a=3,b=4,c=5.则逻辑表达式a+b>c && b==c值为0。 8.do-while循环由do开始,while结束,循环体可能一次也不做。 9.对于for(表达式1;表达式2;表达式3)语句来说,continue语句意味着转去执行表达式2。

10.在do-while循环中,任何情况下都不能省略while。 11.对静态变量的初始化不是在编译阶段完成的。 12.定义 int x[5],n;则x=x+n;或x++;都是正确的。

13.语句 char ch[12]={\"C Program\与语句 char ch[ ]=\"C Program\";具有不同的赋初值功能。

14.数组名作为函数调用时的实参,实际上传递给形参的是数组第一个元素的值。

15.变量根据其作用域的范围可以分作局部变量和全局变量。 16.当变量的存储类型定义缺省时,系统默认为变量的存储类型为auto类型,分配在静态区。

17.若有宏定义:#define S(a,b) t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。

18.for循环的三个表达式都可以省略。

19.continue语句对于while和do-while循环来说,意味着转去计算While表达式。

20.在打开文件时,必须说明文件的使用方式,\"wb+\"表示以读/写方式打开一个二进制文件。

四、程序填空

1、输入a、b、c三个值,输出其中最大者。 main(){ int a, b, c,max;

print(\"请输入三个数a,b,b:\\n\"); scanf(\"%d,%d,%d\max=a;

if(max max=b; if(max c) max=c;

printf(\"最大数为:%d\}

2、求1!+2!+…+20!的值。 main(){ float s=0,t=1; int n;

for (n=1;n<=20; ){ t=t n s=s+t; }

print(\"1!+2!++20!=%e\\n\}

3.以下程序的功能是输出杨辉三角形前10行,请在下划线处填上正确的内容,使程序能正确运行。

#include #define N 11 main() {int i,j,a[N][N];

for(i=1;i {a[i][1]= ;

a[i][i]= ; }

for(i=3;i for(j=2;j<=i-1;j++) a[i][j]= a[i-1][j-1]+a[i-1][j]; for(i=1;i {for(j=1;j<=i;j++) printf(\"%6d\j] ); printf(\"\\n\"); } }

4.以下程序的功能是利用函数求100-200间素数(质数)的个数,请在下划线处填上正确的语句,使程序能正确运行。

#include int isprime(int n) { int i,f; f=1;

for(i=2;i<=\"\" p=\"\"> if( ) {f=0; i=n; } return(f); } main()

{int i=100,n=0; for(;i<200;i++) if( )n++;

printf(\"Numbers of prime:%d\}

五、程序设计题

1、一球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过多少m?第10次反弹多高?

2、给出一个不多于5位的正整数,要求①求出它是几位数②分别打印出每一位数③逆序打印此数据。

3、输入一个数,输出这个数的质因子乘积的形式。例如输入72后,输出:72=2*2*2*3*3。

4、验证一个数是否为素数。 参考答案 一、填空题 1、集合 2、单元 3、过程 4、@ 5、分量 6、a=-b

7、PRN或LPT1或LPT2 8、非线性 9、相邻 10、可重用性 11、主函数 12、下划线 13、算法 14、1 15、12 16、k=4 s=6 17、15

18、指针变量s未赋初值 19、1 20.0 二、

1-5 CABDB 6-10 ACBBA 11-15 DDBCD 16-20 CDCCD 21-25AAABA 26-30 BADCA 三、 1-5 FFFFF 6-10 TTFFT 11-15 FFFFT 16-20 FFTTF 四、略 五、略

因篇幅问题不能全部显示,请点此查看更多更全内容