

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章1. 什么是程序?什么是程序设计语言?2. C 语言有什么特点?3. 什么是算法?算法的描述有哪些基本方法?第一章主要关注两个概念:一是程序的三种结构(顺序、分支或叫选择、循环) ; 二是函数,主函数 main()第二章1.指出下列哪些是 C 语言合法的用户识别符。void a3_b3 For 2a defi ne_123 _abc DO2.指出下列哪些是 C 语言合法的常量。34 0 x1g33 a E20 18 0 xa1.E-53.F0.12a34 双引号内表示字符串,但要在一个串内含有单引号、双引号要用转义字 符正确的是: 40 x 是十六进制的表示形式之一,但十六进制里没有g这
2、个数值0 xa带一个单引号、0 开头,无意义.这里要注意ddd,1-3 位八进制数, xhh,1-2 位十进制数,他们都表示对应的ASCII值E20, E 表示指数形式,但两边必须都有数字。将此题全部弄懂,所有关于常量的分基本跑不掉了。3.指出下列定义变量语句中的错误。int a;b=5;/同类型的两个变量,中间不能用分号。doubel h; /doubleint x,float y;/中间要用分号float f(x);/非法符号定义变量要注意, 数据类型的关键字, 还有就是变量名称必须是合法标识符4.写出能表示数学式子 1/(2a + 1/2a)的 C 语言表达式1.0/(2*a+1/(2*
3、a)5.#include int main()double x=1,y;y=x+3/2;prin tf(y=%fn,y);return 0;结果是:2.000000,注意 3/2=1#i ncludeint main()float x=2.9,y=3.2, z;int a=8;z=x+a%3*(i nt)(x+y)/2;prin tf(z=%fn,z);return 0;结果是:8.900000,注意(int)(x+y)=6。#i ncludeint main()int a=65,b=-20;char ch=A;float x=12.345678f;prin tf(abcn101tx41101
4、n);prin tf(a=%d,%c,%o,%xn,a,a,a,a);prin tf(b=%d,%o,%x,%un,b,b,b,b);prin tf(ch=%d,%cn,ch,ch);prin tf(x=%f,%.2f,%10.2f,%-10.fn,x,x,x,x); return 0;abcAA161a-65,Ajei 31b=-20,37777777754,ffffffec,4294967276ch = 65, Ax=12.345678 J2.35,12.35 J 2此题包含的内容较多,都是细节,希望对照教材仔细分析结果 6 程序设计。(1)输出如下的图形。*此题答案参考实验指导书。这题在
5、这章出现,主要是练习printf(),(2)已知铁的比重是 7.86,计算并输出直径为 100 毫米的铁球重量#i nclude#defi ne PI 3.1415926void mai n() double w,r=100.0/20,p=7.86;w=p*4.0*PI*r*r*r/3.0;prin tf(%.2fn,w);第三章1.写出表示变量 x 的值在0,100范围内的逻辑表达式。x=0 &xbc 的值是多少? 04已知变量 x,y的值分别为 5, 9,逻辑表达式 x&y-9)*6-!x的值是多少?05.已知变量 m,n 的值都为 1,逻辑表达式 m-&n+执行后
6、,m,n 的值是多少?m=0,n=2, 逻辑表达式的值是真。6(1):#i nclude int main()int x=2,y;if(x) y=x;else y=3*x-1;prin tf(y=%dn,y); return 0;运行结果是:y=2#i nclude int main()int a=2,b=2,c=3;if (a=b)if(b=c)prin tf(a=b=cn);else prin tf(a!=bn);return 0;运行结果是:a!=b#i nclude int main()int x=1,y=0,a=0,b=0;switch(x)case 1:switch(y)case
7、0:a+; break;case 1:b+; break;case 2: a+; b+; break; case 3: a+; b+;prin tf(a=%d,b=%dn ,a,b);return 0;运行结果是:a=2,b=1#i nclude int main() int n=5;while( n2)n-;prin tf(%dn, n);return 0;运行结果是:432(5):#i nclude int main()int a,b;for(a=1,b=1;a=20) break;if (b%3=1)b+=3;con ti nue;b_=5;prin tf(%dn,a);return 0
8、;运行结果是:87.程序设计(1)从键盘输入一个字符。若该字符是小写,输出相应的大写字母; 若该字符是大写字母, 输出对应的小写字母;若是其他字符,则原样输出。#i nclude int mai n() char s;sca nf(%c, &s);if (s=A&s =a&s=z)s=s-32;prin tf(%c n , s);return 0;(2) 从键盘输入 3 个整数,输出其中的最大值。#i nclude void mai n() int a,b,c;int m;prin tf(Please in put a b cn ”);sca nf(%d,%d,%d,
9、&a,&b,&c);m=ab?a:b;m=mc?m:c;prin tf(Max is %dn,m);本题解法比较多。注意此题的逻辑关系。(3)从键盘输入一个整数, 输出分段函数f (x)的值。1-xA2( x2)f( x) = 1+2x-xA2( 2=x=10)#i nclude int main()float x,y;scan f(%f, &x);if(X2)y=1_x*x;else if(x10)y=1+2*x-x*x;elsey=1_x+x*x;prin tf(a=%fn ”,y);return 0;此类题,注意数轴方向。从一边为起点。(4 )从键盘上输入
10、一个整数,求其中每个数位的数字之和。#in cludeint mai n()int sum=O,a;sca nf(%d,&a);if(a0);prin tf(%dn,sum);return 0;此题答案只考虑输入的是正整数,如果输入的是小于0 的整数,加个判读,用绝对值函数处理下即可。(5)将 100 元换成 1 元,5 元,10 元的零钱有多少种换法?#in cludeint mai n()int x,y, z,i=0;for(x=0;x=10;x+)for(y=0;y=20;y+)for(z=0;z=100;z+)if(x*10+5*y+z=100)pri ntf(%5d,%5d,
11、%5dn,x,y,z);i+;prin tf(There are %d ways.n,i);return 0;(6 )计算方程 XA2+YA2=1989 的所有整数解。#in clude#in cludevoid mai n()in t v,i,j;v=(i nt)sqrt(1989);for (i=0; i=v; i+)for (j=O;j=v;j+)if(i*i+j*j=1989) pri ntf(%5d,%5dn,i*i,j*j);(7)输出所有的 3 位水仙花数。3 位水仙花数是指一个整数的每个数位上的数字的3 次方之和等于它本身,例如:1A3+5A3+3A3=153.#in clud
12、evoid mai n()int a,b,c,d;for(a=100;a=999;a+)b=a/100;c=a%10;d=(a/10)%10;if(b*b*b+c*c*c+d*d*d=a) pri ntf(%5dn,a);(8)在印度有一个古老的传说:舍罕王打算奖赏国际象棋的发明人一一宰相西萨班 达依尔。国王问他想要什么,他对国王说:“陛下,请你在这张棋盘的第1 个小格里,赏给我一粒麦子,在第二个格子里给 2 粒,第三格给 4 粒,以后每一小格都比前一小格加一一倍。陛下啊,把这样摆满棋盘上所有64 个小方格的麦粒, 都赏赐给你的仆人吧!”。请帮国王计算一下,放完整个棋盘要多少颗小麦。#in c
13、ludevoidmai n() int i;double n,s;i=1; n=1.0; s=1.0;for(i=2;i=4)的偶数都可以用2 个素数之和表示,将4100所有偶数分别用两个素数之和的形式输出。(例如:4=2+2,100=3+97)#in clude#in cludeint ss(int n)/*检查 n 是否为素数,如果是则返回1 否则返回 0*/ int i;for (i=2; i=(i nt)sqrt (n); i+)if (n %i=0) return 0;return 1;int main( void) int i,j,k=0; /*k 用来控制打印换行*/for (i
14、=4;i=100; i+=2)for(j=2; ji; j+) if (ss(j)&ss(i-j)prin tf(%d=%d+%d ,i,j,i-j);k+;if (k%5=0) putchar(n);break; return 0;注意判断素数的 3 种方法。n-1,n/2,(int)sqrt(n)(10)一球从 100 米高度自由落下,每次漏地后反跳回原高度的一半,求在第 10 次落地时,共经过多少米?第 10 次反弹多高?#in cludeint mai n() float sn=100.0,hn=sn/ 2;int n;for(n=2; *=10; n+)sn=sn+2*hn;
15、/*第 n 次落地时共经过的米数*/hn=hn/2; /*第 n 次反跳高度*/prin tf(the total of road is %fn ,s n);prin tf(the tenth is %f meter n,h n);return 0;第4章1.程序填空(1)请在横线上填空,使程序输出数组S 中最大元素的下标#i ncludeint main()int k,p,s=1,-9,7,2,-10,3;for(p=0,k=0;psk)k=p;prin tf(%dn,k);return 0;注意:红色部分为原题填空部分,下同。(2)请在横线上填空,使程序输出以下形式的图标。I23 4678
16、II1216#i nclude int main()intnum44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,i,j;for(i=0;i4;i+)for (j=i;j4;j+) printf(%-5d,numij);prin tf(n);return 0;2.阅读下列程序,写出程序运行结果(1)#inelude int main()int i,k,a10,p3;k=5;for(i=0;i10;i+) ai=i; for(i=0;i3;i+) pi=ai*(i+1);for(i=0;i3;i+) k+=pi*2; prin tf(%dn,k);return
17、0;运行结果:21#i nclude int main()in t p7=11,13,14,15,16,17,18,i=0,k=0;while(i7&pi%2)k=k+pi;i+;prin tf(%dn,k);return 0;运行结果:24#i nclude int main()int i;int a33=1,2,3,4,5,6,7,8,9;for(i=0;i3;i+)prin tf(%d ,a2-ii);return 0;运行结果:7533.程序设计。(1)从键盘输入 10 个成绩,输出最高分和最低分。(2)在一次评奖中有 10 个评委对 5 个参赛选手打分, 选手的最终得分为:
18、高分、一个最低分后剩余 8 个分数的平均值。从键盘输入每个选手的得分,终得分。(3)从键盘输入 5 门课程 6 个同学的成绩,。输出每门课程的最高分。(4)从键盘上输入一个 4x5 的矩阵,输出矩阵个周边元素的和。例如输入以下矩阵, 输出:32。10203048917097080451第五章1、程序填空。去掉一个最输出每个选手最(1)请在横线上填空,使 fun ()函数实现 Hi)2的功能int fun(int a,int b)int mul;mul=(a+b)*(a+b);retur n mul;注意:红色部分就是原来需要填空的地方,下同(2)请在横线上填空,使 fun ()函数返回参数 s
19、 所表示的数组中各 元素的和,其中参数 len 表示数组 s 的长度。double fun( double s ,i nt n)int i;double y=0;for(i=0;ivn;i+)y+=si;return y;2、阅读下列程序,写出程序运行结果。#i nclude #define LEN 10void reverse nt a ,i nt n)int i,t;for(i=0;i n;i+)t=ai; ai=a n-1-i;a n-1-i=t;return ;int main() int bLEN=1,2,3,4,5,6,7,8,9,10,i,s=0;reverse(b,8);for
20、(i=6;i10;i+) s+=bi;prin tf(s=%dn,s);return 0;运行结果:s=34(2) #i nclude int d=1;void fun (int p)int d=5;d+=p+;prin tf(%d,d); return;int main()int a=3;fun( a);d+=a+;prin tf(%dn,d);return 0;运行结果:84(3) #i nclude void fun (i nt x,i nt y,i nt z)z二x*x+y*y;return ;int main()int a=31;fun (5,2,a);prin tf(%d,a);r
21、eturn 0;运行结果:31(4) #in elude #define MAX(x,y) (x)(y)?(x):(y)int main()int a=5,b=2,c=3,d=3,t;t=MAX(a+b,e+d)*10;prin tf(%dn,t);return 0;运行结果:73、程序设计。(1)编写函数 sum,计算 m到 n的累加和(m小于 n),在主函数中调用 sum ()函数,计算并输出的值。(2)编写函数 item,计算 1 到 n 的累加和的倒数,在主函数中调用11 1 1item ()函数,计算并输出+ +山+的值。1 1+2 1-F2+3 III1+2+3+-+11(3) 一个正整数如果等于它的因子(包括 1,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园安全教育日主题班会
- 水利水电工程新项目评审试题及答案
- 2025年中级经济师重要考点试题及回答
- 线护理工作总结与改进计划
- 在c语言期末考试试题及答案
- 孵化跳水测试题及答案
- 医疗机构考试试题及答案
- 钓螃蟹面试题及答案
- 主管工作中的数据分析利用计划
- 学校环境中的艺术装置设计计划
- GB∕T 25119-2021 轨道交通 机车车辆电子装置
- 电池PCBA规格书
- 机械零件加工验收检验记录(共2页)
- 机械加工切削全参数推荐表
- 终端塔基础预偏值(抬高值)计算表格
- 海外医疗服务委托合同协议书范本模板
- (完整版)研究者手册模板
- 菲林检验及管理办法
- 磁芯参数对照表
- 信息技术教学中遇到的问题与思考
- 人教版小学二年级数学下册课程纲要
评论
0/150
提交评论