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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C语言习题及答案可编辑修改word版.docx

1、C语言习题及答案可编辑修改word版习题一【习题 1-1】C 语言源程序最多可能由 部分组成? A)预处理部分 B)变量说明部分C)函数原型声明部分 D)函数定义部分【习题 1-2】一个完整的 C 语言源程序最少必须有 。A)若干个主函数 B)若干个函数C)且只能有一个主函数 D)一个函数【习题 1-3】C 语言以函数为源程序的基本单位最主要有利于 。A)程序设计结构化 B)程序设计模块化C)程序设计简单化 D 提高程序设计有效性【习题 1-4】要使得 C 语言编写的程序能够在计算机上运行并得出正确结果,必须要先经过 。A)编辑和链接 B)编译和链接C)修改和运行 D 运行并输入数据【习题 1

2、-5】选择一个 C 语言集成开发环境并启动它,然后分别输入【例 1-1】、【例1-2】、【例 1-3】的源程序,依次编译、链接、运行,看看能否达到预想的结果? 从中了解程序的开发过程。习题二一、单项选择题【习题 2-1】已知A的 ASCII 代码是 65,以下程序的输出结果是() #include?stdio.hmain() int?c1=65,c2=66; printf(%c,?%c,c1,c2);A.因输出格式不合法,输出错误信息 B.65,66 C.A,B? D.65,66【习题 2-2】若变量已正确定义,要将 a 和 b 中的数进行交换,下面不正确的语句组是()A.a=a+b,b=a-

3、b,a=a-b;? B.t=a,a=b,b=t; C.a=t,t=b,b=a;? D.t=b;b=a;a=t;【习题 2-3】若 k 是整型变量,则以下程序段的输出是() k=-8567;printf?(“|%d|n”,k);A.输出格式不正确? B.输出为|008567|C.输出为|8567|? D.输出为|-8567|【习题 2-4】下列可作变量的标识符是() A.3rt? B.je_c C.$89? D.a+6【习题 2-5】C 语言中的标识符只能由字母、数字和下划线三种字符组成, 且第一个字符()A.必须为字母或下划线 B.必须为下划线C.必须为字母D.可以是字母、数字和下划线中的任一

4、种字符【习题 2-6】C 语言并不是非常严谨的算法语言,在以下关于 C 语言的不严谨的叙述中,错误的说法是()A.大写字母和小写字符的意义相同B.有些不同类型的变量可以在一个表达式中运算C.在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D.同一个运算符号在不同的场合可以有不同的含义二、简答题【习题 2-7】C 语言数据类型有哪几类?基本数据类型包括哪几类?【习题 2-8】C 语言中十进制、八进制和十六进制整常量是如何表示的?【习题 2-9】C 语言为什么规定对所用到的变量“先定义,后使用”,这样做有什么好处?【习题 2-10】C 语言中的语句有几类?控制语句有哪些?【习题 2-11

5、】怎样区分表达式和表达式语句?为什么有人称 C 为表达式语言?【习题 2-12】字符常量与字符串常量有什么区别?【习题 2-13】下面各数用八进制和十六进制数表示:(1)10(2)32(3)75(4)-617(5)-111(6)2483(7)-28654(8)21003三、阅读程序写结果或填空【习题 2-14】写出以下程序的运行结果: #includemain()charc1=a,c2=b,c3=c,c4=101,c5=116; printf(a%cb%ctc%ctabcn,c1,c2,c3);printf(tb%c%cn,c4,c5);【习题 2-15】写出以下程序的运行结果: #inclu

6、demain()intn=177; printf(%on,n);【习题 2-16】写出以下程序的运行结果: #includemain()inta,n=0; n+=(a=10);printf(%dn,a);【习题 2-17】写出以下程序的运行结果: #includemain()inta=5,b=7; floatx=67.8564,y=-789.124;charc=A; longn=1234567; unsignedu=65535; printf(%d%dn,a,b);printf(%3d%3dn,a,b);printf(%f,%fn,x,y);printf(%-10f,%-10fn,x,y);

7、printf(%8.2f,%8.2f,%.4f,%.4f,%3f,%3fn,x,y,x,y,x,y); printf(%e,%10.2en,x,y);printf(%c,%d,%o,%xn,c,c,c,c);printf(%ld,%lo,%xn,n,n,n);printf(%u,%o,%x,%dn,u,u,u,u);printf(%s,%5.3sn,COMPUTER,COMPUTER);【习题 2-18】写出以下程序的运行结果: #includemain()inti,j,m,n; i=8;j=10;m=+i; n=j+;printf(%d,%d,%d,%d,i,j,m,n);【习题 2-19】

8、下面运算表达式的值是: x+a%3*(int)(x+y)%2/4设 x=2.5,a=7,y=4.7【习题 2-20】下面运算表达式的值是: (float)(a+b)/2+(int)x%(int)y设 a=2,b=3,x=3.5,y=2.5【习题 2-21】写出下面赋值表达式运算后 a 的值,设原来 a=12; (1)a+=a(2)a-=2(3)a*=2+3(4)a/=a+a(5)a%=(n%=2),n 的值等于 5(6)a+=a-=a*=a【习题 2-22】数学表达式:-5x5 或 x-5 又是如何表达?请写出相应的 C 语句。四、编写程序题【习题 2-23】设圆半径 r=1.5,圆柱高 h=

9、3,求圆周长、圆面积、圆球表面积(4R2)、圆球体积(V=4R3/3)、圆柱体积。用 scanf()输入数据,输出计算结果, 输出时要求有文字说明,取小数点后 2 位数字。请编写程序。5【习题 2-24】输入一个华氏温度,要求输出摄氏温度。公式为 c= (F-32),9输出要有文字说明,取 2 位小数。【习题 2-25】编程序,用 getchar()函数读入两个字符给 cl、c2,然后分别用 putchar()函数和 printf()函数输出这两个字符。并思考以下问题:(1)变量 c1、c2 应定义为字符型或整型?抑或二者皆可?(2)要求输出 c1 和 c2 值的 ASCII 码,应如何处理?

10、用 putchar 函数还是printf 函数?(3)整型变量与字符变量是否在任何情况下都可以互相代替?如“charc1,c2;”与“intcl,c2;”是否无条件地等价?【习题 2-26】编写程序,从终端键盘输入圆的半径 r,圆柱的高 h,分别计算出圆周 c1、圆面积 cs 和圆柱的体积 cvz。输出计算结果要求有文字说明,并取小数点后两位数字。【习题 2-27】编写程序,读入一个字母,输出与之对应的 ASCII 码,输入输出都要有相应的文字提示。习题三一、单项选择题【习题 3-1】“基本结构”不具有以下特点()A.只有一个入口,只有一个出口 B.没有死循环C.没有永远执行不到的语句 D.不

11、允许退出循环【习题 3-2】在流程图中,菱形框表示的操作是()A.数据的输入输出? B.程序的开始C.条件判断 D.赋值【习题 3-3】以下程序的运行结果是() #includemain()intm=5,n=10; printf(%d,%dn,m+,-n); A.5,9B.6,9C.5,10D.6,10【习题 3-4】逻辑运算符两侧的数据类型() A.只能是 0 和 1B.只能是 0 或非 0 正数C.只能是整型或字符型数据 D.可以是任何类型的数据【习题 3-5】下列关系表达式结果为假的是()A.0!=1B.2=D.=【习题 3-7】写出下面各逻辑表达式的值。设 a=3,b=4,c=5。a+

12、bc&b=ca|b+c&b-c!(ab)&!c|1!(x=a)&(y=b)&0!(a+b)+c-1&b+c/2二、简单题【习题 3-8】什么是算法?算法有哪些特性?从日常生活中举出几个算法的例子。【习题 3-9】算法有哪些描述方法?各有什么优缺点?【习题 3-10】结构化的算法有哪几种结构?试分别描述。【习题 3-11】选择语句和循环语句对条件的判断的标准是什么?(即何值为真、何值为假?)三、用传统流程图表示求解以下问题的算法。【习题 3-12】有两个瓶子 A 和 B,分别盛放醋和酱油,要求将它们互换(即 A瓶原来盛醋,现改盛酱油,B 瓶则相反);【习题 3-13】依次将 10 个数输入,要求

13、将其中最大的数打印出来;【习题 3-14】有三个数 a、b、c,要求按大小顺序把它们打印出来;【习题 3-15】求 1+2+3+100;【习题 3-16】判断一个数 n 能否同时被 3 和 5 整除;【习题 3-17】将 100200 之间的素数打印出来;【习题 3-18】求两个数 m 和 n 的最大公约数;【习题 3-19】求方程式 ax2+bx+c=0 的根(a、b、c 从键盘输入)。四、编写程序题【习题 3-20】有一函数写一程序,输入 x,输出 y 值。【习题 3-21】给一个不多于 5 位的正整数,要求:求出它是几位数; 分别打印出每一位数字;按逆序打印出各位数字,例如原数为 321

14、,应输出 123。【习题 3-22】企业发放的奖金根据利润提成。利润 I 低于或等于 10 万元的, 奖金可提 10%;利润高于 10 万元,低于 20 万元(100000I200000)时,低于 10 万元的部分按 10%提成,高于 100000 元的部分,可提成 7.5%;200000I400000 时,低于 20 万元的部分仍按上述办法提成(下同)。高于 20 万元的部分按 5% 提成;400000I600000 时,高于 40 万元的部分按 3%提成;600000100,则输出 a2+b2之和的百位以上的数字,否则直接输出 a2+b2 的和。【习题 3-27】编写程序判断输入的正整数是

15、否既是 5 又是 7 的整数倍。若是则输出“yes”,否则输出“no”。【习题 3-28】编写程序实现功能:根据表 3-1 的函数关系,对输入的每个 x的值,计算出相应的 y 值。表 3-1 习题 3-28 的函数关系xyx000x10x10x201020x40-0.5x+20【习题 3-29】编写程序实现,输入一个整数,判断它能否被 3、5、7 整除, 并输出以下信息之一:(1)同时被 3、5、7 整除;(2)能被其中两个数整除(要指出是哪两个数); (3)能被其中一个数整除(要指出是哪个数); (4)不能被 3、5、7 中任意一个整数整除。【习题 3-30】用 switch 编程实现以下函

16、数【习题 3-31】编写程序,用 switch 实现:对 制成绩,改成相应的 A、B、C、D、E 表示,90 分以上为 A,8089 为 B,7079 为 C,6069 为 D,60 以下为 E。【习题 3-32】编写程序实现功能:输入一个复数,输出其共轭复数,如, 输入 2+3i,输出 2-3i。【习题 3-33】求 Sn=a+aa+aaa+aaa(n 个 a)之值,其中 a 是一个数字。例如:2+22+222+2222+22222(此时 n=5),n 由键盘输入。20【习题 3-34】求 n!(即求 1!+2!+3!+4!+20!)。n=1100 50 102【习题 3-35】求 k +

17、k + k 。k =1k =1k =1【习题 3-36】打印出所有的“水仙花数”,所谓“水仙花数”是指一个 3 位数,其各位数字立方和等于该数本身。例如,153 是一水仙花数,因为153=13+53+33。【习题 3-37】每个苹果 0.8 元,的一天买了 2 个苹果;从第二天开始,每天买前一天的两倍,直到每天购买的苹果个数达到不超过 100 的最大值,编写程序求每天平均花多少钱。【习题 3-38】试编写程序,找出 199 之间的全部同构数。同构数是这样一组数,它出现在平方数的右边。例如,5 是 25 的右边数,25 是 625 的右边数, 所以 5 和 25 都是同构数。【习题 3-39】假

18、设 x、y 是整数,编写程序求 xy 的最后 3 位数,要求 x、y从键盘输入。【习题 3-40】一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6 的因子为 1、2、3,而 6=1+2+3,因此 6 是“完数”。编程序找出 1000 之内的所有完数,并按下面格式输出其因子:6itsfactorsare1,2,3【习题 3-41】有一分数序列2 3 5 8 13 21, , , , , ,1 2 3 5 8 13求出这个数列的前 20 项之和。【习题 3-42】一球从 100m 高度自由落下,每次落地后反跳回原高度的一半, 再落下。求它在第 10 次落地时,共经过多少米?第 10

19、次反弹多高?【习题 3-43】猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半, 还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,就只剩一个桃子了。求第一天共摘多少桃子。【习题 3-44】编程打印出以下图案。*3*-*45】用迭代法求 x= 。求平方根的迭代公式为*1xn+1= (xn+a/xn)2要求前后两次求出的 x 的差的绝对值小于 10-5。【习题 3-46】用牛顿迭代法求下面方程在 1.5 附近的根。2x3-4x2+3x-6=0【习题 3-47】两个乒乓球队进行比赛,各出 3 人。甲队为

20、 A、B、C3 人,乙队为 X、Y、Z3 人。已抽签决定比赛名单。有人向队员打听比赛的名单,A 说他不和 X 比,C 说他不和 X、Z 比,请编程序找出 3 对赛手的名单。习题四一、单项选择题【习题 4-1】一个 C 程序的执行是从。A)本程序的 main 函数开始,到 main 函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序文件的第一个函数开始,到本程序 main 函数结束D)本程序的 main 函数开始,到本程序文件的最后一个函数结束【习题 4-2】以下叙述正确的是。A)在对一个 C 程序进行编译的过程中,可发现注释中的拼写错误B)在 C 程序中,main

21、 函数必须位于程序的最前面C)C 语言本身没有输入输出语句D)C 程序的每行中只能写一条语句【习题 4-3】以下叙述正确的是 。A)main 函数不可以有返回值 )main 函数不可以有参数C)函数可以有多个返回值 D)函数的形参可以是静态变量【习题 4-4】以下叙述正确的是 。A)void 类型的函数体中不可以有 return 语句B)void 类型的函数体中可以有 return 语句C)函数体中不可以有多个 return 语句D)函数体中定义的变量名称与形式参数的名称可以相同【习题 4-5】以下叙述正确的是 。A)一个程序文件中定义的内部函数,其他文件可以调用它 B)一个程序文件中定义的内

22、部函数,其他文件不可以调用它C)不同文件中定义的内部函数不可以有相同的名称D)函数的定义不能放在调用它的函数之后【习题 4-6】在由多个文件构成的 C 程序中,以下叙述正确的是 。A)外部变量与局部变量不能同名B)不同程序文件中可以定义相同名称的内部变量C)只能把外部变量指定为静态存储方式D)只能把局部变量指定为静态存储方式【习题 4-7】以下叙述正确的是 。A)一个 C 程序必须由多个函数组成B)一个 C 源程序必须包括宏命令C)C 源程序的宏命令以分号标明命令行的结束D)C 注释可以位于源程序的任意位置二、判断题(正确用错误用标记)【习题 4-8】宏替换时先求出实参表达式的值,然后代入形参

23、求值。()【习题 4-9】.在 C 语言中,函数不可以嵌套定义,但宏可以嵌套定义。()【习题 4-10】所有的递归问题都可以用非递归算法来实现。()【习题 4-11】在 C 语言中,不同函数体内定义的变量可以同名。()【习题 4-12】多个文件组成的 C 语言程序,其中各个文件中可以定义同名函数。()【习题 4-13】在 C 语言中,一个函数只能被它所在文件的其它函数调用,称之为内部函数。()三、阅读程序写结果或填空【习题 4-14】下列程序执行后的输出结果是 。intfun(intk)staticints=0; while(k0)s=s+k-; returns;main()ints,t; s

24、=fun(4);t=fun(5);printf(s=%d,t=%dn,s,t);【习题 4-15】下列程序执行后的输出结果是 。#includestdio.hinta=0; main()inti;for(i=1;i=3;i=i+1)staticintb=0; intc=1; a+;b+;c+;printf(%d:resultis%dn,i,a+b+c);【习题 4-16】下列程序执行后的输出结果是 。#includestdio.hintfunc(intn)ints; if(n=1)s=1;elses=2+func(n-1);returns;main()intk=1,s=0; while(k(b

25、)?(a):(b)main()inti=10,j=15; printf(“%dn”,10*M(i,j);【习题 4-18】下列程序的输出结果是: #include“stdio.h” #defineSQR(x)x*xmain()inta,k=3; a=SQR(k+1);printf(“%d”,a);【习题 4-19】以下程序运行的结果是longf(intn)longs; if(n=1|n=2)s=2; elses=n+f(n-1); return(s);main()longx; x=f(4);printf(x=%dn,x);【习题 4-20】下列程序的输出结果是 ? #defineTap(x)2

26、*x+1main()inta=6,k=2,m=1; a+=Tap(k+m);printf(“%d”,a);【习题 4-21】在以下程序的下划线处填写适当的语句使程序执行的结果4,16,256。test()intx=2; x=x*x;printf(%d,x);main()test();test();test();【习题 4-22】下列程序的输出结果是#includeintf(intc)staticinta=10; intb=+a; return(a+b+c); main()printf(“%d”,f(f(5);【习题 4-23】以下函数调用语句中实参的个数是 ?Sub1(x1,x2),(x3,x

27、4,x5),x6)四、程序设计题【习题 4-24】编写一个递归函数计算 1+X+2X2+3X3+?+nXn1n=0F(n,x)=F(n-1,x)+nXnn0【习题 4-25】编写递归程序的输出如右所示的结果*【习题 4-26】编写*递* 归程序的输出杨辉三角形【习题 4-27】编写*程*序*计算:S=直到 N!106 为止。【习题 4-28】编写程序计算 1100 之间的素数,并按照由大到小的次序输出。习题五一、单项选择题【习题 5-1】在 C 语言中,数组名代表了 。A)数组的全部元素值 B)数组中第一个元素的值C)数组中元素的个数 D)数组中第一个元素的地址【习题 5-2】不能把字符串ch

28、ina赋予数组 a 的语句是 。A)chara8=c,h,i,n,aB)chara=chinaC)chara8;a=china;D)chara8;strcpy(a,china);【习题 5-3】设有如下定义语句: inta10=1,2,3,4,5,6,7,8,9,10;则下面是正确的数组元素的是。A)aa2+1B)a(4)C)a10D)aa4+5【习题 5-4】设 a,b 是两个已定义的字符数组,则下面语句中正确的是。A)gets(a,b);B)scanf(%s%s,a,b); C)scanf(%s%s,&a,&b);D)gets(a);gets(b);【习题 5-5】设有定义: intj=2,a=1,2,3,4,5;则数组 aj的值为。A)2B)3 C)4D)5【习题 5-6】C 语言中,一维数组下标的最小值是。A)随便 B)根据说明 C)1D)0【习题 5-7】下面描述中不正确的是。A)字符数组中可以存放字符串B)可以对字符数组进行整体输入、输出C)可以对任何数组进行整体输入、输出D)不能通过赋值运算符=

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

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