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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

c语言程序设计案例教程 实验项目设计性题目参考答案.docx

1、c语言程序设计案例教程 实验项目设计性题目参考答案C语言程序设计案例教程(含实验)设计性实验的程序参考答案实验项目一 C程序的编辑、编译、连接和运行题目:编写程序,要求屏幕上显示如下信息:* This is a C program .* 程序:#include void main() printf(“*”); printf(“* This is a C program .*”);printf(“*”); 实验项目二 数据类型、运算符、表达式题目(1)程序填空:输入1 个实数x,计算并输出其平方根(保留1 位小数)。填空1double x,root;2root=sqrt(x);(2)输入一个大写

2、英文字母,输出相应的小写字母。填空1.ch=ch+32;实验项目三 顺序结构程序设计题目(1)编写程序,输入三角形的三边长a、b、c,求三角形面积area。程序代码:#include #include main()float a,b,c,s,arer;printf( 请输入三角形的三个边a,b,c:n);scanf(%f,%f,%f,&a,&b,&c);s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);printf(三角形的边为a=%7.2f, b=57.2f, c=%7.2fn,a,b,c);printf(三角形的面积area=%7.2n ,area

3、);(2)设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。程序代码:#include main()float h,r,l,s,sq,vq,vz;float pi=3.1415926;printf( 请输入圆半径 r,圆柱高 h: );scanf(%f,%f,&r,&h);l=2*pi*r;s=r*r*pi;sq=4*pi*r*r;vq=4.0/3.0*pi*r*r?*r;vz=pi*r*r*h;printf(圆周长为:l=%6.2fn,l);printf(圆面积为:s=%6.2fn,s);printf(圆球表面积为:sq=%6.2fn,sq);printf(

4、圆球体积为:vq=%6.2fn,vq) ;printf(圆柱体积为:vz=%6.2n ,vz);(3)分别用getchar函数和scanf函数读入2个字符给变量c1、c2,然后分别用putchar函数和printf函数输出这两个字符。程序代码:#include main()char c1,c2;printf( 请输入两个字符 c1,c2:);c1=getchar();c2=getchar();printf(用putchar语句输出结果为:);putchar(c1);putchar(c2);printf(用printf语句输出结果为:);printf(%c %cn,c1,c2); 实验项目四 分

5、支结构程序设计题目(1)程序填空。输入四个整数,输出其中的最小值。 填空: min=a; if(bmin) min=b; else if(cmin)min=c; else if(dmin)min=d;(2)计算如下函数Y的值。 X (X1) 2X-1 (1X=10) 程序代码:#include main()int x,y;printf( 请输入x:);scanf(%d,&x);if(x1) y=x;else if(x10) y=2*x-1; else y=3*x-11;printf(x=%d,y=%d,x,y); (3)给出一个百分制成绩,输出对应的等级分。共分A、B、C、D、E五个等级。90

6、分以上为A,81-89分为B,70-79分为C,60-69分为D,60分以下为E。要求分别用if语句和switch语句实现。程序代码: 用 if-else 语句实现:#include main()int g;Loop: printf( 请输入g:);scanf(%d,&g);if(g100) goto Loop; if(g90) printf(A); sele if(g80) printf(B); else if(g70) printf(C);else if(g60) printf(D);else printf(E); 用 switch 语句实现:#include main()int g;Lo

7、op: printf( 请输入g:);scanf(%d,&g);if(g100) goto Loop; switch(g/10) case 10: case 9: printf(A);case 8: printf(B);case 7: printf(C);case 6: printf(D);default: printf(E); (4)编写程序,输入奖金数a,计算并输出税率、应缴税款和实得奖金数。奖金 税率a500 0.00500a1000 0.051000a2000 0.082000a5000 0.105000a 0.15提示:a=奖金数 rate=税率值 tax=应缴税款 profit=实

8、得奖金数。计算公式: tax = a* rate , profit= a tax 程序代码: #include main()float a,rate,tax,profit;scanf(%f ,&a);if(a500) rate=0.0; else if (a1000) rate=0.05;else if (a2000) rate=0.08;else if (a5000) rate=0.1;else rate=0.15;tax= a*rate;profit=a-tax;printf( rate=%10.2f,tax=%10.2f, profit=%10.2fn, rate, tax, profi

9、t);实验项目五 循环结构程序设计题目(1)猴子吃桃子。猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第2天早上将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半多一个。到第10天早上想再吃时,只剩下一个桃子。问第一天共摘多少个桃子?(要求使用While循环语句实现)。算法提示 设 total:桃子的总数 x1:前一天的桃子数 x2 :后一天的桃子数 day: 天数计算公式: x1=(x2+1)*2 第1天的桃子数是第2天桃子数加1后的2倍。程序代码:#include void main()int x1,x2,day,total;day=9;x2=1;wh

10、ile(day0) x1=(x2+1)*2;x2=x1;day=day-1;Total=x1;printf( total=%dn, x1);(2)求200300之间的素数。程序代码:#include void main()int m,n,flag;printf(n The primers from 200 to 300 is: n);for(n=201;n300;n+=2) flag=1;for(m=2;m=n/2;m+)if(n/m=0) flag=0;break; if(flag=0) continue;printf(%d ,n);printf(n);(3)程序填空 求11/21/31/4

11、,输入1 个正整数 n(n=100),计算并输出11/21/31/4的前n 项和(保留3 位小数)。程序代码: #include void main( )int i, n, flag;float sum;scanf(%d, &n);/*-以下为所填语句-*/sum=0;flag=1; for(i=1;i=n;i+) sum+=flag*1.0/i; flag=-flag;printf(%.3fn, sum); 统计字符。输入一个正整数repeat (0repeat10),做repeat 次下列运算:输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。程序代码:#include

12、void main( )int ri, repeat;int blank, digit, letter, other;char c;scanf(%d, &repeat);getchar();for(ri=1; ri=a&c=A&c=0&c=9) digit+; else if(c= ) blank+; else other+; c = getchar(); printf(letter=%d, blank=%d, digit=%d, other=%dn, letter, blank, digit, other); 找最大值。输入一个正整数repeat (0repeat10),做repeat 次下

13、列运算:输入 4个整数输出 其中的最大值。例:输入3 (repeat=3)12 6 1 9010 40 30 20-1 -3 -4 -5输出max is 90 (12 6 1 90 中的最大值是90)max is 40 (10 40 30 20 中的最大值是40)max is -1 (-1 -3 -4 -5 中的最大值是-1)程序代码:#include void main( )int ri, repeat;int a, b, c, d, max;scanf(%d, &repeat);/*-以下为所填语句-*/for(ri=1; ri=repeat; ri+)scanf(%d%d%d%d, &a

14、, &b, &c, &d);/*-以下为所填语句-*/max=a;if(maxb)max=b;if(maxc)max=c;if(maxd)max=d;printf(max is %dn, max);(4)编写程序:输出“九九乘法表”。程序代码:#include void main()int i,j;for(i=1;i9;i+);for(j=1;j=i;j+); if(i=j) printf(n); printf(%d*%d= %d ,i, j, i*j); 实验项目六 函数及其应用题目(1)程序填空。计算代数多项式1.1+2.2x+3.3x2+4.4x3+5.5x4的值。例: 输入1.5输出5

15、4.52程序代码:#include float f(float);void main() float x,y; scanf(“%f”,&x); /*-以下为所填语句-*/ y=f(x); printf(%.2fn,y);/*-以下为所填语句-*/float f(float x) float sum=0,t=1;int i;for(i=1;i1) 注意:s 和fas(n)均为长整型。!程序代码:#include void main() long int fas(int);int i, m; long int s=0; for(i=1;i=10;i+) m=fas(i);s=s+m;print(“

16、%d!+”,i); print(“b=%dn”,s); long int fas(int x) if (x=0|x=1) return(1);else return(x*fas(x-1); (3)编写程序,N名裁判给某歌手打分(假定分数都为整数)。评分原则是去掉一个最高分,去掉一个最低分,剩下的分数取平均值为歌手的最终得分。裁判给分的范围是:60 = 分数=100,裁判人数N=10。要求:每个裁判的分数由键盘输入。实验提示定义两个函数:max():返回两个数中较大的值;min():返回两个数中较小的值。程序代码:#include Int m=0;n=100;void main() int i,

17、x,sum; sum=0; for(i=1;i=10;i+) LOOP: scanf(“%d”,&x) ;if(x100)goto LOOP; m=max(x,m);n= min(x,n);sum=sum+x; print(“%d”,(sum-m-n)/8); int max (int x) if (xm) m=x; return(m);int min (int x) if (xn) n=x; return(n);(4)编写程序,用递归法将一个十进制整数转换成二进制数。程序代码:#include void DtoB(int n);void main() int n; scanf(%d,&n);

18、 printf(%d-),n); DtoB(n); printf(n);void DtoB(int n) if(n) DtoB(n/2); printf(%d,n%2); 实验项目七 数组及其应用题目(1)程序填空。 求n个数中较大值及其下标。输入一个正整数n (1n=10),再输入n 个整数,输出最大值极其下标(设最大值唯一,下标从0 开始)。程序代码:#include void main( )int ri, repeat;int i, index, n;int a10;scanf(%d, &repeat);for(ri=1; ri=repeat; ri+)scanf(%d, &n);for

19、(i=0; in; i+)scanf(%d, &ai);/*-以下为所填语句-*/index=0;for(i=1; in; i+)if( aindexai)index=i; printf(max=%d,index=%dn, aindex,index); 逆序输出。输入一个正整数repeat (0repeat10),做repeat 次下列运算:输入一个正整数n (1n=10),再输入n 个整数,按逆序输出这些数。程序代码:#include void main( )int ri, repeat;int i, n, temp;int a10;scanf(%d, &repeat);for(ri=1;

20、ri=repeat; ri+)scanf(%d, &n);for(i=0; in; i+) scanf(%d, &ai);/*-以下为所填语句-*/for(i=0; in/2; i+) temp=ai; ai=an-1-i; an-1-i=temp;for(i=0; in; i+) printf(%d , ai);printf(n); 找鞍点(选作)。输入 1 个正整数 n(1n6)和n 阶方阵a 中的元素,如果找到a 的鞍点(鞍点的元素值在该行上最大, 在该列上最小), 就输出它的下标, 否则,输出NO(设a 最多有1 个鞍点)。程序代码:#include stdio.hvoid main(

21、 ) int ri,repeat;int flag,i,j,k,row,col,n,a66;scanf(%d,&repeat);for(ri=1;ri=repeat;ri+)scanf(%d,&n);for(i=0; in; i+)for(j=0; jn; j+)scanf(%d,&aij);/*-以下为所填语句-*/for(i=0; in; i+) row=i;col=0; for(j=1; jn; j+) if(arowcolarowj) col=j; flag=1; for(k=0; kakcol) flag=0; break;if(flag) printf(a%d%d=%dn, row

22、, col,arowcol); break;if(!flag)printf(NOn);(2)有10个数存放在一个数组中,先对该10个数从大到小排序,然后输入一个数,要求找出该数是数组中第几个元素的值,若找不到,输出未找到信息。实验提示 用冒泡或者选择排序法对数组中的10个数进行排序; 用折半查找的方法在数组中查找指定的数。 程序代码:#include #define N 11#include #define N 11void sort(int aN) /* 排序 */ int i,j,min,temp; for(i=1;i=9;i+) min=i; for(j=i+1;jaj) min=j;

23、temp=ai; ai=amin; amin=temp; void main() int i,j,x,aN; void badd( int,int,int); printf(Enter data:n); for(i=1;i=10;i+) printf(a%d=,i); scanf(%d,&ai); printf( n);for(i=1;i=10;i+) printf(%5d,ai); printf( n); sort(a); printf(n The sorted numbers: n); for(i=1;i=10;i+) printf(%5d,ai); printf(n);scanf(%d,

24、&x);badd(x,a,N); /* zheban find x */void badd (int x,int a ,int n) int mid,top,bot; top=0; bot=n-1; while(topmid) top=mid+1; else bot=mid-1; printf(n cant find %d ! ,x);(3)/*/统计6个学生各4门功课的成绩。要求程序具有如下功能: 每个学生的4门功课的成绩从键盘读入; 计算每个学生的总分和平均分; 按平均成绩进行排序,输出排序后的成绩单(四门功课的成绩和均分),给出名次。 如先输入学生4门课成绩:1: 67,72,65,802:75,82,94,953:70,74,80,76 4:.程序代码:#includemain() int i,j,k,t,s,a77; for(i=1;i=6;i+) ai0=i; /*输入序号*/ for(j=1;j=6;j+) t=0;

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

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