ImageVerifierCode 换一换
格式:DOCX , 页数:47 ,大小:34.13KB ,
资源ID:11095261      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11095261.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《C语言程序设计》习题.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

《C语言程序设计》习题.docx

1、C语言程序设计习题第1章 习题一、选择题 1. 关于C语言的源程序的叙述中,错误的是( )。A)C语言的源程序由函数构成 B)main函数可以书写在自定义函数之后C)必须包含有输入语句 D)一行可以书写多个语句 2. 以下说法中正确的是( )。A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分 3. 在一个C语言程序中,main函数的位置( )。A)必须放在最开始 B)必须在系统调用的库函数后面C)必须在最后 D)可以任意4. C语言程序

2、编译时,程序中的注释部分将( )。A)参加编译,并会出现在目标程序中 B)参加编译,但不会出现在目标程序中C)不参加编译,但会出现在目标程序中 D)不参加编译,也不会出现在目标程序中 5. 一个完整的可运行的C源程序是( )。 A)至少要由一个主函数和(或)一个以上的辅函数构成B)由一个且仅由一个主函数和零个以上(含零)的辅函数构成 C)至少要由一个主函数和一个以上的辅函数构成 D)至少由一个且只有一个主函数或多个辅函数构成6. 对于C语言源程序,以下叙述错误的是( )。A)可以有空语句B)函数之间是平等的,在一个函数内部不能定义其它函数C)程序调试时如果没有提示错误,就能得到正确结果D)注释

3、可以出现在在语句的前面7. 一个C语言程序是由( )组成的A)一个主程序和若干子程序 B)若干过程 C)函数 D)若干子程序8. 以下叙述正确的是( )。A)C程序的每行只能写一条语句 B)在对一个C程序进行编译的过程中,可以发现注释中的拼写错误C)C语言本身没有输入、输出语句 C)在C程序中,mian函数必须位于程序的最前面9. 以下叙述不正确的是( )。A)C程序的执行总是从main函数开始 B)一个C源程序必须包含一个main函数C)C语言程序的基本组成单位是函数 D)在编译C程序源程序时,可发现注释中的拼写10. C程序的基本单位是( )。A)子程序 B)程序 C)子过程 D)函数11

4、. 下面关于C语言用户标识符的描述,正确的是( )。A)不能区分大小写 B)用户标识符不能描述常量C)类型名也是用户标识 D)用户标识符可以作为变量名二、填空题1. 一个C语句中至少包含一个( )。2. C语言标识符由 ( )、( )和( )来构造。 3. C程序执行过程生成的3种文件及扩展名为.C、.obj和( )。第2章 习题一、选择题1. 以下选项中不合法的用户标识符是( )A)st.n B)FILEC)MainD)GO2. 下列属于字符型常量的是( )。 A)AA B)”B” C)117 D)x93L3. 以下( )是正确变量名。A)5f B)if C)f.5 D)_f54. char

5、 型变量存放的是( )。A)ASC码值 B)字符本身 C)十进制代码值 D)十六进制代码值5. C语言中最简单的数字类型包括( )。A)整型、实型、逻辑型 B)整型、实型、字符型C)整型、字符型、逻辑型 D)整型、实型、逻辑型、字符型6. 下面叙述正确的是( )。)强制类型转换运算的优先级高于算术运算)若a和b是整型变量,(a+b)+是合法的)”A”*B是合法的)”A”+”B”是合法的7. 不是C语言实型常量的是( )。A)55.0 B)0.0 C)55.5 D)55e2.58. 已知char a=R;则不正确的赋值表达式是( )。A)a=(a+)% 4 B)a+2=3 C)c a+=256-

6、 D)a=0789. 以下选项中属于C语言数据类型的是( )。A)复数型 B)逻辑型 C)双精度型 D)集合型10. 若已定义f,g为double类型,则表达式:f=1,g=f+5/4的值是( )。A)2.0 B)2.25 C)2.1 D)1.5 D)1.5 D)1.5 D)1.511. 设整形变量a为5, 使b不为2的表达式是( )。A)b=(+a)/3 B)b=6-(-a) C)b=a%2 D)b=a/212. 若t为double类型,表达式t=1,t*5,t的值为( )。A)1 B)6.0 C)2.0 D)1.013. 在C语言中,运算对象必须是整型数的运算符是( )。A)% B) C)

7、%和 D)*14. 字符串”abcdtef0g”的长度是( )。 A)9 B)7 C)6 D)4二、填空题1. 的整数可以用十、八和( )三种进位制表示。2. 字符串”ab034x79”的长度为( )。3. 表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3)值的数据类型为( )。4. 设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c的结果类型为 ( )。5. 若k为int型变量且赋值11。请写出运算k+后表达式的值( )。6. 表达式3.5+1/2的计算结果是 ( )。7. 若A、

8、b和c均是int 型变量,则执行下面表达式后,c值为( )。c=(a=5)-(b=2)+a8. 条件”20x30或x-100”的C语言表达式是( )。9. C语言的基本数据类型有整型、实型和( )。10. 若有定义:char c=010;则变量c中包含的字符个数为( )。11. C语言中普通整型变量的类型声明符为( )。第3章 习题一选择题 1. 结构化程序设计不包括( ) A)最优化 B)自顶而下,逐步细化 C) 模拟化设计 D)结构化编码 2. 下面叙述中,( )不是结构化程序设计中的三种基本结构之一A)数据结构 B)选择结构 C)循环结构 D)顺序结构3. 已知:int a,b;用语句s

9、canf(“%d%d”,&a,&b);输入a、b的值时,不能作为输入数据分隔符的是( ) A) , B)空格 C)回车 D)TAB4. 已知:int y;执行语句y=5/2;则变量y的结果是( ) A)2 B)-2 C)2.5 D)2.05. 已知:int y;执行语句y=5%-3;则变量y的结果是( )A)2 B)-2 C)1 D)-1 6. 设int a=2,b=2; 则+a+b的结果是( ) A)2 B)3 C)4 D)57. getchar()函数的功能是从终端输入( )A)一个整型量值 B)一个实型变量值 C)多个字符 D)一个字符8. putchar()函数的功能是向终端输出( )

10、A)多个字符 B)一个字符 C)一个实型变量值 D)一个整型变量表达式9. 已有如下定义和输入语句int a; char c1,c2;scanf(“%d,%c,%c”, &a, &c1, &c2);若要求ac1c2的值分别为10A和B,正确的数据输入是( )A)10AB B)10,A,B C)10A B D)10 AB10. 若有声明和语句:int a=5,b=6;b*=a+1;则b的值为( )A)5 B)6 C)31 D)3611. 使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据输入是( )A)a=2.2,b=3 B)a=2.2 b=3 C)2.2 3 D)

11、2.2,312. 下列程序的运行结果是( )#include void main( ) int a=2,c=5;printf(a=%d,b=%dn,a,c); A)a=%2,b=%5 B)a=2,b=5 C)a=d, b=d D)a=%d,b=%d二填空题1. 设有以下变量定义,并已赋确定的值, char w; int x; float y; double z; 则表达式w*x+z-y所求得的数据类型是( )2. 若有定义int y=7;float x=2.5,z=4.7;则下面表达式的值为( )x+(int)(y/3*(int)(x+z)/2)%43. 若有声明和语句:int a=25,b=

12、60;b=+a;则b的值是( )三程序分析题(写出程序运行结果)1. #include void main() int a,b,c; a=-1;b=-2; c=+a-b+;printf(%d,c);2. #include void main() int x,y,z;x=1;y=3;z=+x+(+y);printf(%d,z); 第4章 习题一选择题1. 若整型变量a,b,c,d中的值依次为1,4,3,2,则条件表达式ab?a:cd?c:d的值为( )A)1 B)2 C)3 D)42. 若a是数值类型,则逻辑表达式(a=1)|(a!=1)的值是( )A)1 B)0 C)2 D)不知道a的值,不能

13、确定3. 在C语言中,switch语句后一对圆括号中表达式的类型( )A)可以是任何类型 B)只能是int类型C)可以是整型或字符型 D)只能是整型或实型4. 下列运算符的优先级最高的是( )A)关系运算符 B)算术运算符 C)赋值运算符 D)逻辑运算符5. 下列运算符中优先级最低的运算符是( )A)| B)!= C)=10 or a=0 | a=10&a=10 | ab B)(ab)=c C)b+cb11. 表示关系12=x=y的C语言表达式为 ( )A)(12=x)&(x=y) B) (12=x)&(x=y) C) (12=x)|(x=y) D)(12=x)|(xb)&(y=cb)的值为(

14、 )A)0 B)1 C) 5 D)6二填空题 1. C语言中逻辑值 真用( )表示2. C语言中逻辑值假用( )表示 3. 在C语言中,当表达式值为0时表示逻辑值假,当表达式值为( )时表示逻辑值真 4. 设x为int型变量,请写出一个关系表达式( ),用以判断x同时为3和7的倍数时,关系表达式的值为真5. C语言中逻辑运算符优先级按由低到高分别是( )三程序分析题 1. 以下程序的功能是#include void main() char ch;scanf(“%cn”,&ch);ch=( ch=A&ch=Z )?ch+32:ch;printf(“char=%cn”,ch);2. 若int i=

15、10;则执行下列程序后,写出变量i的正确结果switch (i) case 9:i+=1;case 10:i+=1;case 11:i+=1;default:i+=1;3. 有以下程序#include void main() int a=1,b=2,c=3,d=0;if (a=1) if (b!=2) if(c!=3) d=1; else d=2; else if(c!=3) d=3; else d=4; else d=5; printf(“%dn”,d);写出程序运行后的输出结果四程序填空题1. 输入三角形的三条边a,b,c,求三角形的面积 #include “math.h” #includ

16、e “stdio.h” void main( ) float a,b,c,d,t,s; printf(“请输入三角形的三条边:”); scanf(“%f,%f,%f”,&a,&b,&c); if (1) printf(“%f%f%f不能构成三角形!”, a,b,c);else t=(a+b+c)/2;s= (2) printf(“a=%7.2f,b=%7.2f,c=%7.2f,area=%7.2fn”, a,b,c,s);五程序设计题1. 请编程序,输入一个4位数字,要求输出这4个数字字符,每个数字间空一个空格如输入1990,应输出1 9 9 0第5章 习题一选择题1. 有以下程序#inclu

17、devoid main()int y=10;while(y-);printf(“y=%dn”,y);程序执行后的输出结果是( )A)y=0 B)y= -1 C)y=1 D)while构成无限循环2. 运行下面程序段的输出结果是( ) int i; for(i=0;i10;i+); printf(“%d”,i);A) 9 B)10 C)8 D)11 3. 设有程序段int k=10;while (k=0) k=k-1;则下面的描述正确的是( )A)while循环执行10次 B)循环是无限循环C)循环体语句一次也不执行 D)循环体语句执行一次 4. 关于break语句的描述正确的是( )A)bre

18、ak语句只能用于循环体中 B)break语句可以一次跳到多个嵌套循环体之外C)在循环结构中可以根据需要使用break语句 D)在循环结构中必须使用break语句5. C语句中while 和do-while循环的主要区别是( )A)do-while的循环体至少无条件执行一次 B)while 的循环控制条件比do-while的循环控制条件严格C)do-while 允许从外部转到循环体内 D)do-while的循环体不能是复合语句 6. 对于整型变量x,与while(!x)等价的是( )A)while(x!=0) B)while(x=0) C)while(x!=1) D)while(x)7. 下列d

19、o-while循环的循环次数为( )已知: int i=5;do printf(“%dn”,i-); i-; while (i!=0); A)0 B)1 C)5 D)无限8. 要求以下程序的功能是计算:s= 1+1/2+1/3+1/10#includevoid main() int n; float s; s=1.0; for(n=10;n1;n-) s=s+1/n; printf(%6.4fn,s);程序运行后输出结果错误,导致错误结果的程序行是( ) A)s=1.0; B)for(n=10;n1;n-) C)s=s+1/n; D)printf(%6.4fn,s);9. 下面关于for循环的

20、正确描述是( )A)for循环是先执行循环体语句,后判断循环条件 B)若for循环的循环体中包含多条语句,多条语句必须用括号括起来C)for循环只能用于循环次数已经确定的情况 D)在for循环中,不能用break语句跳出循环体10. 以下程序的输出结果是( )#includevoid main() int i;for(i=1;i6;i+) if(i%2) printf(“#”);continue; printf(“*”); printf(“n”);A) #*#*# B) # C)* D)*#*#*二填空题 1. 若for循环用以下形式表示for(表达式1;表达式2;表达式3) 循环体语句则执行

21、语句for(i=0;i3;i+) printf(“*”);时,表达式3执行( )次 2. 设有如下程序段: int i=0,sum=1; do sum+=i+; while(i0)printf(“%d”,x-);的循环执行次数为( )三程序分析题1. #includevoid main() int x=2; while(x-); printf(“%d”,x);写出程序运行结果2. 当执行下面的程序段后,i、j、k的值分别为( )、( )、( )int a,b,c,d,i,j,k;a=10;b=c=d=5;i=j=k=0;for( ;ab;+b) i+;while(a+c) j+;do k+;w

22、hile(ad+);四程序填空题1. 鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空for(x=1;x=29;x+)y=30-x; if( ) printf(“%d,%dn”,x,y); 2. 下面程序的功能是计算1-3+5-7+-99+101的值,请填空#include void main() int i,t=1,s=0; for(i=1;i=101;i+=2) ;s=s+t; ; printf(“%dn”,s);3. 爱因斯坦的阶梯问题设有一阶梯,每步跨2阶,最后余1阶;每步跨3阶,最后余2阶;每步跨5阶,最后余4阶;每步跨6阶,最后余5阶;只有每步跨7阶时,正好到阶

23、梯顶问至少有多少阶梯#include void main() int a=7; while( ) a+= ( ); printf(Flight of stairs=%dn,a);4. 以下程序的功能是从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入请填空#include void main() float x,amax,amin;scanf(“%f”,&x);amax=x;amin=x;while( ) if(xamax) amax=x;if( ) amin=x;scanf(“%f”,&x);printf(“namax=%fnamin=%fn”,amax,ami

24、n); 五程序设计题1. 设m, n为正整数,且mn,求由m到n的自然数倒数之和2. 请编写一个程序,求序列2/1+3/2+5/3+8/5前20项之和3. 编写程序,打印出所有的对等数对等数是指一个三位数,其各位数字的和与各位数字的积的积等于该数本身例如:144=(1+4+4)*(1*4*4)第6章 习题一选择题1. 已知char s5, c; int b;则调用函数scanf的正确语句是( )A)scanf(“%s%c”, s, c); B)scanf(“%d%c”,&b, c);C)scanf(“%d%c”, b, &c); D)scanf(“%s%c”, s , &c);2. 下列描述中

25、不正确的是( )A)字符型数组中可以存放字符串B)可以对字符型数组进行整体输入输出C)可以对整型数组进行整体输入输出D)不能在赋值语句中通过赋值运算符=“对字符型数组进行整体赋值 3. 在int a5=1,3,5;中,数组元素a1的值是( )A)1 B)0 C)3 D)2 4. 若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )A)int a5= 0 B)int b=0,0,0,0,0 C)int c2+3 D)int i=5,di 5. 已知 int a10;则对a数组元素的正确引用是( ) A) a10 B)a3.5 C)a(5) D)a10-106. 以下能对一维数组a进行正

26、确初始化的语句是( )A)int a5=(0,0,0,0,0,) B)int a5=0 C)int a5=1,2,3,4,5,6,7 D)int a=07. 若有定义int a34=1,2,0,1,2,3;则a11的值为( )A)0 B)1,2 C)1 D)38. 若有声明int a54; 则对其数组元素的正确引用是( )A)a3+12 B)a(3)(2) C)a0,2 D)a359. 在C语言中,引用数组元素时,其数组下标的数据类型允许是( )A)整型常量 B)整型表达式 C)整型常量或整型表达式 D)任何类型的表达式10. 若有int a35=2,2,2,6,2,6,2;则数组a共有个元素( ) A)8 B)5 C)3 D)1511. 设有如下程序段:int a33=1,0,2,1,0,2,1,0,1,i,j,s=0; for(i=0;i3;i+) for(j=0;ji;j+) s=s+aij;则执行该程序段后,s的值是( )A)0 B)1 C)2 D)312. 设有如下定义char str8=“Fujian”;则分

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1