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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

份考试C语言程序设计第三次作业.docx

1、份考试C语言程序设计第三次作业2013年9月份考试C语言程序设计第三次作业一、填空题(本大题共40分,共 20 小题,每小题 2 分)1. 编写C语言程序四个步骤是: _ , _ , _ , _ .2. 源程序的基本单位是 _ 3. 函数体一般包括 _ 部分和 _ 部分4. C语言提供的预处理功能有 _ 、 _ 、 _ 等三种.5. 在C语言中(以16位PC为例),一个float类型的数据在内存中所占的字节数是 _ ;一个double类型的数据在内存中所占的字节数是 _ .6. C语言中变量和函数的存储方式有四种,分别是: _ , _ , _ , _ .7. 写出下面表达式运算后Val 的值,

2、假设Val = 10 ,Num = 5.Val 和 Num 都定义为整型变量. (1) _ ,(2) _ ,(3) _ (1) Val += Val; (2) Val *= Num + Val; (3) Val += Val -= Val *= Val;8. 下面程序段的运行结果是 _ . Char s80,*sp=HELLO!;sp=strcpy(s,sp);s0=h; puts(sp);9. 下列程序的输出结果是 _ main() int a=-1,b=4,k; k=(a+0)&(!(b-=0);printf(%d%d%dn,k,a,b) ; 10. 当a的值分别为:1,2,3时,程序的结

3、果是 _ include main() int a;printf(Please enter a=);scanf(%d,&a); switch(a) case 1: printf(*); break; default: printf(#); case 2: printf(-) ;11. 下面程序段的运行结果是 _ char s80,*sp=you; sp=strcpy(s,sp); s0=Y;puts(sp);12. 以下程序的执行结果是: _ .include main() int a,b,c,d,x;a=c=0; b=1; d=20; if(a) d=d-10;else if(!b) if(

4、!c) x=15; else x=25; printf(d=%dn,d);13. 写出下面表达式运算后Val 的值,假设Val = 12 ,Num = 7.Val 和 Num 都定义为整型变量. _ Val += Val; _ Val *= Val; _ Val *= Num + Val; _ Val %= (Num %= 4); _ Val /= Val + Val; _ Val += Val -= Val *= Val;14. 若a是 int型变量,则执行下面表达式后a的值是 _ . a=25/3%315. 输入:teacher时,下列程序的输出结果是 _ include main() c

5、har c ;int v0=0,v1=0;do switch(c=getchar() case a: case b: case c:v0+; default: 2:v1+;while(c!=n);printf(v0=%d,v1=%dn,v0,v1); 16. 下列程序的输出结果是 _ main() int a=-1,b=4,k;k=(+a0)&(!(b-b?a:b; return(c);main()int a=8; printf(%d,max(a,b): 19. 当a的值分别为:1,2,3时,程序的结果是 _ .include main()int a;printf(Please enter a

6、=);scanf(%d,&a);switch(a)case 1: printf(a); break;default: printf(b); case 2: printf(c) ; 20. 下列程序的输出结果是 _ . include main() int a=-1,b=2,k; k=(+a0)&(!(b-=0); printf(%d%d%dn,k,a,b) ; 二、程序阅读题(本大题共60分,共 10 小题,每小题 6 分)1. 表示整数x的绝对值大于5时值为真的C语言表达式是( ).2. 已知字符A的ASCII码值为65,以下语句的输出结果是( ).char ch=B;printf(%c %

7、dn,ch,ch);3. 以下程序运行时,若从键盘输入:10 20 30,输出的结果是( ). include main() int i=0,j=0,k=0;scanf(%d%*d%d,&i,&j,&k);printf(%d%d%dn,i,j,k); 4. 以下程序运行后的输出结果是( ).void swap(int x,int y) int t;t=x;x=y;y=t;printf(%d %d ,x,y); main()int a=3,b=4; swap(a,b);printf(%d %d,a,b); 5. 以下程序运行后的输出结果是( ). main()char m; m=B+32;pri

8、ntf(%cn,m);6. 以下程序运行后的输出结果是( ).main()int a44=1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18;int i=0,j=0,s=0; while(i+4) if(i=2|i=4) continue;j=0; do s+= aij; j+; while(j4);printf(%dn,s);7. 有以下语句段int n1=10,n2=20; printf(( ),n1,n2); 要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空. n1=10 n2=208. 以下程序运行后的输出结果是( )main ()char

9、a=Language,b=Programe;char *p1,*p2; int k;p1=a; p2=b;for(k=0;k0.10. 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13.求出这个数列的前20项之和.答案:一、填空题(40分,共 20 题,每小题 2 分)1. 参考答案:编辑 编译 连接 运行解题方案:基本知识、记忆评分标准:每答对1空得2分2. 参考答案:函数解题方案:基本知识点、记忆评分标准:每答对1空得2分3. 参考答案:声明 执行解题方案:函数体一般包括声明部分和执行部分评分标准:每答对1空得2分4. 参考答案:宏定义 文件包含 条件编译解题方案:基本概

10、念,记忆评分标准:每答对1空得2分5. 参考答案:4 8解题方案:Float 4字节 Double 8字节评分标准:每答对1空得2分6. 参考答案:自动(auto) 静态(static) 寄存器(register) 外部的(extern)解题方案:4种存储方式是自动(auto)、静态(static)、 寄存器(register)、 外部的(extern)评分标准:每答对1空得2分7. 参考答案:20 150 0解题方案:Val += Val, Val=20 等价于Val *= (Num + Val),Val=150 等价于Val *= Val, Val -= Val, Val += Val,

11、Val=0评分标准:每答对1空得2分8. 参考答案:hELLO!解题方案:HELLO!字符串常量自动添加结束符0,所以sp=strcpy(s,sp); s=triz,且sp指向s所以输出hELLO!评分标准:每答对1空得2分9. 参考答案:103解题方案:(a+0)&(!(b-=0)等价于1&(!0) 所以k=1,a=0,b=3评分标准:每答对1空得2分10. 参考答案:*-#-解题方案:执行case 1,输出* 执行case 2,输出执行default,输出#-评分标准:每答对1空得2分11. 参考答案:Y ou解题方案:you 字符串常量自动添加结束符0,所以sp=strcpy(s,sp)

12、; s=you ,且sp指向s所以输出Y ou评分标准:每答对1空得2分12. 参考答案:d=20解题方案:Else和最近的if配对,所以 if(a)假 d=d-10; else if(!b)假 if(!c) x=15; else x=25; 从而,赋值语句都没有执行,所以d=20评分标准:每答对1空得2分13. 参考答案:24 144 228 0 0 0解题方案:(1)Val+=Val, Val = 24 (2)val*=Val, Val = 144 (3) 等价Val*=(Num+Val), Val=12*(12+7)=228 (4) Val %= (Num %= 4); Val%=(Nu

13、m%4)=12%(7%4)=12%3=0 (5 )等价Val /=( Val + Val) 12/=(12+12) Val=0 (6)等价Val *= Val,Val -= Val,Val *= Val+=Val,则Val=(144, 0, 0, 0)=0评分标准:每答对1空得2分14. 参考答案:2解题方案:/优先即高于%,等价于(25/3)%3=8%3=2评分标准:每答对1空得2分15. 参考答案:v0=2,v1=8解题方案:Case中没有break,因此?v0增加2次,v1增加8次,所以v0=2,v1=8评分标准:每答对1空得2分16. 参考答案:004解题方案:+a0 即 00为假,不

14、执行&的后的表达式,所以k=0,a=0,b=4评分标准:每答对1空得2分17. 参考答案:a=2,b=1解题方案:执行case 1,case中没有break,执行完该switch语句,所以a=2,b=1评分标准:每答对1空得2分18. 参考答案:8解题方案:对于全局变量和局部变量同名时,在程序局部变量作用域,局部变量覆盖全局变量,所以max(a,b)等价于max(8,5)评分标准:每答对1空得2分19. 参考答案:acbc解题方案:Case 1 输出a Case 2 输出c Case 3 输出bc评分标准:每答对1空得2分20. 参考答案:002解题方案:(+a0)&(!(b-=0)即(00)

15、&( !(b-=0),即0&( !(b-=0),所以( !(b-5|x5 或 abs(x)5 或 (x5)|(x5)解题方案:要使整数x的绝对值大于5,则x大于5或x小于-5,用C语言表示即为:x5|x5)|(x-5).评分标准:回答正确得5分,错误不得分2. 参考答案:B 66解题方案:printf函数的一般格式为 printf(格式控制,输出表列) 格式控制是用双引号括起来的字符串,也称转换控制字符串. 1、d格式符,用来输出十进制整数. 2、c格式符,用来输出一个字符. 已知字符A的ASCII码值为65,则字符B的ASCII码值为66,所以本题输出结果为:B 66评分标准:回答正确得5分

16、,错误不得分3. 参考答案:10300解题方案:在scanf格式控制符中,如果在%后有一个*附加说明符,表示跳过它指定的列数.本题中%d%*d%d表示将10赋给i,%*d表示读入整数但不赋给任何变量,然后再读入整数30赋给变量j,那么变量k并没有重新赋值,仍为初始值0.所以输出的结果为10300.评分标准:回答正确得5分,错误不得分4. 参考答案:4 3 3 4解题方案:用变量作为函数的实参时,属单向传递,即值传送方式,此种函数参数的传递方式只能由实参传给形参,不能由形参传回来给实参.本题中,变量a,b的值传递给了函数swap的形参x,y,并在函数中对x,y的值进行了交换,所以函数swap中输

17、出的x,y的值为4,3,但此时实参a,b的值并没有随形参x,y的改变而改变,所以在主函数中输出的a,b的值为3,4.评分标准:回答正确得5分,错误不得分5. 参考答案:b解题方案:考察的主要知识点是不同类型数据间的转换与运算.本题所要实现的功能是把大写字母转换为小写字母,在C中,小写字母的ASCII码值比大写字母的ASCII码值大32.评分标准:回答正确得5分,错误不得分6. 参考答案:92解题方案:本题考查的是循环的嵌套. 解题过程: (1)当i=0时执行while 1)i4,i=1 2)因为i=1,所以不执行continue 3)j赋值0 4)执行do while s=0+a10=5,j=

18、1,因为j4,所以继续循环 s=5+a11=5+6=11,j=2,因为j4,所以继续循环 s=11+a12=11+7=18,j=3,因为j4,所以继续循环 s=18+a13=18+8,j=26,因为j=4,所以终止循环(2)当i=1时,i4执行while,i=2,因为i=2,所以执行continue,结束本次while循环(3)当i=2时,i4执行while,i=3 1)因为i=3,所以不执行continue 2)j赋值0 3)执行do while s=26 s=26+a30=26+15=41,j=1,因为j4,所以继续循环 s=41+a31=41+16=57,j=2,因为j4,所以继续循环

19、s=57+a32=57+17=74,j=3,因为j4,所以继续循环 s=74+a33=74+18=92,j=4,因为j=4,所以终止循环(4)i=3时,i4执行while,i=4因为i=4,所以执行continue,结束本次循环(5)当i=4时,i=4结束while循环(6)结果输出s=92.评分标准:回答正确得5分,错误不得分7. 参考答案:n1=%dnn2=%d解题方案:printf函数的一般格式为 printf(格式控制,输出表列) 格式控制是用双引号括起来的字符串,也称转换控制字符串,它包括两种信息: 1、格式说明,由%和格式字符组成,如%d,%f等.它的作用是将输出的数据转换为指定的

20、格式输出.格式说明总是由%字符开始的. 2、普通字符,即需要原样输出的字符. 结果要求输出为: n1=10 n2=20 所以格式控制中需含有n1=部分,又因为要求按两行输出,需含有回车符:n.评分标准:回答正确得5分,错误不得分8. 参考答案:gae解题方案:解题过程: (1) 当k=0时,*(p1+0)=L,*(p2+0)=P,L!=P,所以没有输出(2) 当k=1时,*(p1+1)=a,*(p2+1)=r,a!=r,所以没有输出(3) 当k=2时,*(p1+2)=n,*(p2+2)=o,n!=o,所以没有输出(4) 当k=3时,*(p1+3)=g,*(p2+3)=g,g=g,所以输出g (

21、5) 当k=4时,*(p1+4)=u,*(p2+4)=r,u!=r,所以没有输出(6) 当k=5时,*(p1+5)=a,*(p2+5)=a,a=a,所以输出a (7) 当k=6时,*(p1+6)=g,*(p2+6)=m,g!=m,所以没有输出(8) 当k=7时,*(p1+7)=e,*(p2+7)=e,e=e,所以输出e (9) 当k=8时结束循环(10) 输出结果为:gae.评分标准:回答正确得5分,错误不得分9. 参考答案:include main() float a,b,c,disc,x1,x2,p,; scanf(a=%f,b=%f,c=%f,&a,&b,&c); disc=b*b-4*

22、a*c; p=-b/(2*a); q=sqrt(disc)/(2*a);x1=p+q; x2=p-q; printf(nnx1=%5.2fnx2=%5.2fn,x1,x2); 解题方案:一元二次函数的球根公式是(-b+sqrt(b*b-4*a*c))/2a, (-b-sqrt(b*b-4*a*c))/2a评分标准:程序机构3,算法5,其他210. 参考答案:main() int n,t,number=20; float a=2,b=1,s=0; for(n=1;n=number;n+) s=s+a/b;t=a;a=a+b;b=t; printf(sum is %9.6fn,s); 解题方案:分子的规律是2,3,5,8,13 分母的规律是1,2,3,5,8,13 可知第n项fn的值为fn-1+fn-2评分标准:程序机构3,算法5,其他2

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

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