2022年郑州大学C语言实验报告答案 .pdf

上传人:Q****o 文档编号:25320447 上传时间:2022-07-11 格式:PDF 页数:43 大小:143.78KB
返回 下载 相关 举报
2022年郑州大学C语言实验报告答案 .pdf_第1页
第1页 / 共43页
2022年郑州大学C语言实验报告答案 .pdf_第2页
第2页 / 共43页
点击查看更多>>
资源描述

《2022年郑州大学C语言实验报告答案 .pdf》由会员分享,可在线阅读,更多相关《2022年郑州大学C语言实验报告答案 .pdf(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、郑州大学 C语言实验报告答案实验一1、#include void main()int a,b,c;scanf(%d,%d,%d,&a,&b,&c);printf(sum=%dn,a+b+c);2、#include void main()int a,b,he,cha,ji,shang;scanf(%d,%d,&a,&b);he=a+b;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 43 页cha=a-b;ji=a*b;shang=a/b;printf(he=%dn,he);printf(cha=%dn,cha);printf(ji=%d

2、n,ji);printf(shang=%dn,shang);3、#include void main()int a,b,c,d,e,sum;scanf(%d,%d,%d,%d,%d,&a,&b,&c,&d,&e);sum=a*a+b*b+c*c+d*d+e*e;printf(sum=%dn,sum);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 43 页4#include include void main()double a,b,c,sum;scanf(%lf,%lf,%lf,&a,&b,&c);sum=sqrt(a)+sqrt(b

3、)+sqrt(c);printf(sum=%fn,sum);5、#include #define PI 3.14159void main()float r,l,s;printf( 请输入圆半径 (r):);scanf(%f,&r);l=2*PI*r;s=r*r*PI;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 43 页printf(n圆周长l=%6.2fn,l);printf( 圆面积s=%6.2fn,s);6、#include void main()printf(what a beautiful campus!n);printf(

4、I wish you every success!n);实验二1、#include void main()int a,b,c;float x;scanf(a=%d,b=%d,c=%d,x=%f,&a,&b,&c,&x);printf(%f,a*x*x*x+b*x*x+c);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 43 页2、#include void main()int a,b;scanf(a=%d,b=%d,&a,&b);printf(ji=%d,shang=%d,yushu=%d,a*b,a/b,a%b);3、#includ

5、e void main()float c,f;printf( 请输入一个华氏温度f:);scanf(%f,&f);c=5.0/9.0*(f-32);printf(n摄氏温度为 : %5.2fn,c);4、精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 43 页#include #define PI 3.14159void main()float r,l,s;printf( 请输入圆半径 (r):);scanf(%f,&r);l=2*PI*r;s=r*r*PI;printf(n圆周长l=%6.2fn,l);printf( 圆面积s=%6.

6、2fn,s);5、#include void main()float c=3.123456789;printf(%f,c);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 43 页6、#include void main()int a=2;a+=a;printf(%dn,a);a-=2;printf(%dn,a);a*=2+3;printf(%dn,a);a/=a+a;printf(%dn,a);实验三1、#include void main()int a=3,b=4,c=5;精选学习资料 - - - - - - - - - 名师归纳总

7、结 - - - - - - -第 7 页,共 43 页float x=1.414,y=1.732,z=2.712;printf(a=%-7d b=%-7d c=%-7dnx=%-7.3f y=%-7.3f z2、#include void main()int a,b,c;float x,y,z;scanf(%d,&a);scanf(%d,&b);scanf(%d,&c);scanf(%f,&x);scanf(%f,&y);scanf(%f,&z);printf(a=%d,b=%d,c=%dnx=%.3f,y=%.3f,z=%.3f,n,a,精选学习资料 - - - - - - - - - 名师

8、归纳总结 - - - - - - -第 8 页,共 43 页3、#include void main()int a,b,c,x1,x2;scanf(%d,%d,%d,&a,&b,&c);x1=a+b+c;x2=a-b-c;printf(x1=a+b+c=%d+%d+%d=%dn,a,b,c,x1);printf(x2=a-b-c=%d-%d-%d=%dn,a,b,c,x2);4、#include void main()char c1,c2,c3,c4;scanf(%c%c%c%c,&c1,&c2,&c3,&c4);printf(%d,%d,%d,%d,c1,c2,c3,c4);精选学习资料 -

9、 - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 43 页5、#include void main()int d1=60,d2=61,d3=62,d4=63;printf(%c,%c,%c,%c,d1+5,d2+5,d3+5,d4+5);6、#include void main()int m=12345678,n=3456789;printf(m=%d n=%d,m,n);7、#include void main()int a=20,b=64,c=127;printf(a=%d,%o,%xn,a,a,a);精选学习资料 - - - - - - - - -

10、 名师归纳总结 - - - - - - -第 10 页,共 43 页printf(b=%d,%o,%xn,b,b,b);printf(c=%d,%o,%xn,c,c,c);8、#include void main()float x,y,z;x=1.414;y=1.732;z=2.712;printf(%6.2f,%6.2f,%6.2f,x,y,z);9、#include void main()printf(%.6f%,1.0/3);10、#include void main()精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 43 页i

11、nt a,b,a=getchar(b=getchar()c=getchar();a=a+32;b=b+32;c=c+32;putchar(a);putchar(b);putchar(c);实验四 选择结构程序设1.有三个整数 a,b,c, 由键盘输入,输出其中最大的数。参考程序main()精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 43 页 int a,b,c,max;printf( “请输入 a,b,c= ”);scanf( “%d,%d,%d ”,&a,&b,&c);max=a;if (maxb) max=b;if (maxc

12、) max=c;printf( “n 最大数 max=%dn ”,max);2参看 C 程序设计第三版谭浩强 第108页的例 5.6.3有一函数:写一程序,输入x, 输出 y 。main() float x,y;printf( “请输入 x=”);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 43 页scanf( “%f”,&x);if (x1) y=x;else if (x=90) r=A;else if (s=80) r=B ;else if(s=70) r=C ;精选学习资料 - - - - - - - - - 名师归纳总结

13、- - - - - - -第 14 页,共 43 页else if(s=60) r=D ;else r=E;printf( “n score=%d result=%c n”, s, r);参考程序 2main() int s ,i;char r;printf( “请输入 score= ”);scanf( “%d”,&s);i=(s-s%10)/10;switch (i) case 10:case 9: r=A; break;case 8: r=B ; break;case 7: r=C ; break;case 6: r=D ; break;default: r= E;精选学习资料 - - -

14、 - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 43 页printf( “n score=%d result=%c n”, s, r);5. 企业发放奖金 I 根据利润提成,以下是提成办法:I=10 万部分10%10I=20 万部分7.5%20I=40 万部分5%40I=60 万部分3%60I100 万部分1% 从键盘输入当月利润I,求应发奖金总数。要求:用 if 语句编程序;用switch 语句编程序。参考程序main()float b1,b2,b3,b4,b5,b6,I;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - -

15、- -第 16 页,共 43 页printf( 请输入本月利润 :);scanf(%f,&I);b1=b2=b3=b4=b5=b6=0;if (I100) b6=(I-100)*0.01;b5=40*0.015;b4=20*0.03;b3=20*0.05;b2=10*0.075;b1=10*0.1;else if (I60) b5=(I-60)*0.015;b4=20*0.03;b3=20*0.05;b2=10*0.075;b1=10*0.1;else if(I40) b4=(I-40)*0.03;b3=20*0.05;精选学习资料 - - - - - - - - - 名师归纳总结 - - -

16、 - - - -第 17 页,共 43 页b2=10*0.075;b1=10*0.1;else if(I20) b3=(I-20)*0.05;b2=10*0.075;b1=10*0.1;else if(I10) b2=(I-10)*0.075;b1=10*0.1;else b1=I*0.1;printf(n本月利润I=%f 万元; 奖金 b=%f 万元n,I,b1+b2参考程序main()float b1,b2,b3,b4,b5,b6,I,B;printf( 请输入本月利润 :);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 43

17、页scanf(%f,&I);B=0;b6=(I-100)*0.01;b5=40*0.015;b4=20*0.03;b3=20*0.05;b2=10*0.075;b1=10*0.1;if (I100) B+=b1+b2+b3+b4+b5+b6;else if (I60) B+=(I-60)*0.015+b4+b3+b2+b1;else if(I40) B+=(I-40)*0.03+b3+b2+b1;else if(I20) B+=(I-20)*0.05+b2+b1else if(I10) B+=(I-10)*0.075+b1;else B=I*0.1;printf(n本月利润I=%f 万元; 奖

18、金 B=%f 万元n,I,B);参考程序 3精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 43 页main()float b1,b2,b3,b4,b5,b6,I,B;int n;printf( 请输入本月利润 :);scanf(%f,&I);B=0;b6=(I-100)*0.01;b5=40*0.015;b4=20*0.03;b3=20*0.05;b2=10*0.075;b1=10*0.1;n=i/10;switch(n) case 0: B=I+0.1; break;case 1: B+=(I-10)*0.075+b1; brea

19、k;case 2:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 20 页,共 43 页case 3: B+=(I-20)*0.05+b2+b1; break;case 4:case 5: B+=(I-40)*0.03+b3+b2+b1; break;case 6:case 7:case 8:case 9: B+=(I-60)*0.015+b4+b3+b2+b1; break;case 10:default : B+=b1+b2+b3+b4+b5+b6;printf(n本月利润I=%f 万元; 奖金 B=%f 万元n,I,B);6给一个不多于 5位

20、的正整数,要求:求出它是几位数;分int n1,n2,n3,n4,n5,n;long num;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 21 页,共 43 页printf( 请输入 0-99999 之间的一个数 :);scanf(%ld,&num);if (num9999) n=5;else if(num999) n=4;else if(num99) n=3;else if(num9) n=2;else n=1;n3=num/100%10; /*取百位*/n4=num/10%10; /*取十位 */n5=num%10; /*取个位 */pri

21、ntf(n 原数据 num=%ldn,num);printf( 反序数为 : );switch(n) case 1: printf(%dn,n5); break;case 2: printf(%d%dn,n5,n4); break;case 3: printf(%d%d%dn,n5,n4,n3); break;case 4: printf(%d%d%d%dn,n5,n4,n3,n2); breakcase 5: printf(%d%d%d%d%dn,n5,n4,n3,n2,n1); 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 22 页,共 43

22、 页n1=num/10000; /*取万位 */n2=num/1000%10; /*取千位 */实验五 循环(一)1、参看谭浩强(第三版) P114115 2 、main() int i , j; for (i=1 ; i11; i+)for (j=1; j=40-i ; j+) printf( “”);for (j=1; j=1.0e-5; n+) t=1.0/(n*n+1); sum=sum+p*t ; p=-p; printf(“n”,sum);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 23 页,共 43 页 4 、main() cha

23、r c; int k; int n1=0,a1=0,u1=0; /*分别存放数字、字母及其它字符printf(“ n Input 30 chars:”); for (k=1; k=A&c= a&c=0 & c=9) n1+; else u1+; printf(“n”,n1 5 、main() int i; long int f1, f2; f1=0; f2=1;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 24 页,共 43 页 for (i=1; i=10; i+) printf(%12ld %12ld,f1,f2);if (i%2=0) pr

24、intf(“ n”); /*输出两次后换行 */ f1=f1+f2; f2=f2+f1; 实验六 循环(二)1、main() float sum=0,mul=1; int i; for(i=1;i=10;i+) mul*=i; sum+=mul; printf(n 1!+2!+3!+4!+.+10!=%fn,sum); 2 、main() int k,m;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 25 页,共 43 页 for( k=1; k=9; k+) for (m=1; m=k; k+) printf(“%d*%d=% - 2d “,m

25、,k,mprintf(“ n”); 3 、main() int i , j; for (i=1 ; i5 ; i+) for (j=1; j=40-i ; j+) printf(“ ”); for (j=1; j0 ; i-) for (j=1; j=40-i ; j+) printf(“ ”); for (j=1; j=2*i-1;j+) printf(“*”);printf(“ n”); 4 、main() int x,y,z;printf(“n 大公鸡母鸡雏鸡); for (x=0; x20; x+) for (y=0;y34;y+) z=100-x-y;精选学习资料 - - - - -

26、 - - - - 名师归纳总结 - - - - - - -第 26 页,共 43 页 if (z%3!=0) continue; if (5*x+3*y+z/3=100) printf(n%8d %8d %8d,x,y,z); 5 、main() long s=0,sn=0; int k, n;printf(“ n Input n=“);scanf( “%d ”,&n); for (k=1; k=n ; k+) sn=sn+k; s=s+sn; printf(“n”,n,s); 实验七 数组(一)1、用随机函数产生 15个100以内的随机整数存入一维数组,然后#include 精选学习资料 -

27、 - - - - - - - - 名师归纳总结 - - - - - - -第 27 页,共 43 页void main() int a15,i; for (i=0; i15; i+) ai=rand(); /* 产生-9032767之间的随机整数 */ if(ai0) ai= -ai; ai=ai%101; if(i%5=0) printf(n); printf(%8d ,ai); 2、求出 n 个学生一门课程中的最高成绩和最低成绩及高于平均成#define N 10void main() float aN=78,86,65,55,91,83,78,90,69,81; float max=0,

28、min=100,avg=0; int i, num=0; for (i=0; imax) max=ai;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 28 页,共 43 页if(aimin) min=ai; avg=avg+ai; avg=avg/N; for (i=0; iavg) num+; printf(n max=%.2f, min=%.2fn,max,min); printf(n %.2f=%dn,avg,num);3、使用数组 , 求出下列数列的前 20项:1, 1, 2, 4, 7, 13void main() long a20=1

29、,1,2; int i; for(i=3;i20;i+) ai=ai-1+ai-2+ai-3; for(i=0;i20;i+) if(i%5=0) printf(n); printf(%9ld ,ai);4、将一个一维数组反序放置如:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 29 页,共 43 页a=67,89,76,98.66反序放置后 a=66,98,76,8967#define N 5void main() int aN=67,89,76,98,66, i, k; for(i=0; iN/2; i+) k=ai; ai=aN-i-1;

30、aN-i-1=k; printf(“ n a=%d”,a0);for(i=1;iN;i+)printf(“,%d,ai);printf(“ n”);5、有10个学生一门课程成绩 , 使用选择排序法将成绩由高向低排#define N 10void main()int aN=67,89,76,98,66,55,77,79,96,89; int i, j, p, k;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 30 页,共 43 页 for(i=0; iN-1; i+) p=i; for ( j=i+1; jN;j+) if (apaj) p=j;

31、if (p!=i) k=ai; ai=ap; ap=k; for( i=0; iN; i+) printf(%4d, ai);实验七 数组(二)1、将一个一维数组a9 中各元素值按行的顺序放入二维数组bvoid main()int a9=1,2,3,4,5,6,7,8,9,b33,i,j,k=0; for (i=0;i3;i+) for (j=0; j3; j+) bij=ak+; printf(%8d,bij);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 31 页,共 43 页 printf(n); 2 、有一 m n矩阵, 各元素由随机数产

32、生 , 将矩阵增加一列 , 求矩#include #define m 3#define n 4void main() long an+1; int i,j; for (i=0;im;i+) ain=0; for(j=0;jn;j+) aij=rand();ain=ain+aij; pri printf( %8ld n,ain); 3 、有一 m n矩阵, 找出最大元素值及其所在的行、列位置。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 32 页,共 43 页#include #define m 3#define n 4main() long an

33、; int i,j,row=0,col=0;for (i=0;im;i+) for (j=0; jn; j+) aij=rand(); printf(%8ld,aij); if (arowcolaij) row=i;col=j; printf(n); printf(n max=%ld row=%d col=%d n,arowcol,row+精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 33 页,共 43 页 4 、有 n 个考生,每个考生有考号和总分成绩,如果录取m人,绩。void main() float a1002,temp,temp1; i

34、nt i,j,p,n; printf(n input number of student n=); scanf(%d,&n); for (i=0;in;i+) printf(n input num,score of %dth student:,i+1 scanf(%f,%f,&temp1,&temp); ai0=temp1;ai1=temp; for (i=0; in-1; i+) p=i; for (j=i+1; jn ; j+) if(ap1aj1) p= if (p!=i) temp=ap1;ap1=ai1;ai1=temp; temp=ap0;ap0=ai0;ai0=temp; 精选学

35、习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 34 页,共 43 页 printf(n input admittable number:);scanf(%d,&p); printf(n output name list: n); for (i=0; ip ; i+) printf(%10.0f %10.1fn,ai0,ai1);5、将矩阵 m(n,n) 对角线上的元素置为 1,他置 0.#define n 10void main() int ann=0, i, j; for(i=0;in; i+) aii=1; ain-1-i=1; for(j=0;j

36、n;j+) printf(%4d,aij); printf(n); 实验十四文件1、打开“开始 - 程序-附件-记事本”输入:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 35 页,共 43 页1001 zhangsan 78 90 891002 lisi 99 88 771003 wangwu 89 76 551004 zhaoliu 53 55 44存在 e 盘根目录下,文件名为chengji 2 、#include #include #define N 5 main( ) FILE *fp; int num,sc1,sc2,sc3,scor

37、e,i; char name10; if(fp=fopen(e:chengji.txt,r)=NULL) printf(Error); exit(0); for (i=1;i=N;i+)精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 36 页,共 43 页 fscanf(fp,%d%s%d%d%dn,&num,name,&sc1,&sc2,&sc3); score=sc1+sc2+sc3; printf(%6d%10s%6d%6d%6d%6dn,num,name,sc1,sc2,sc3, fclose(fp); 3 、#include #inclu

38、de #define N 5struct student int num; char name10; int score; char dianhua10;main( ) FILE *fp;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 37 页,共 43 页 int i; struct student stuN; clrscr(); if(fp=fopen(e:xuesheng.txt,w)=NULL) printf(Error); exit(0); for (i=0;iN;i+) scanf(“%d%s%d%s,&stui.num,stui.na

39、me,&stui.scfprintf(fp,%6d%10s%6d%10sn,stui.num,stui.name,s fclose(fp); 4 、 #include #include #define N 5struct student int num; char name10;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 38 页,共 43 页 int score; char dianhua10;main( ) FILE *fp; int i,xuehao; struct student stuN; clrscr();xuesheng.txt,

40、”r)=NULL) printf(Error); exit(0); scanf( “%d ”,&xuehao); for (i=0;iN;i+) fscanf(fp, %d%s%d%sn,&stui.num,stui.name,&stuif(stui.num=xuehao)printf(%6d%10s%6d%10sn,stui.num,stui.name,stui精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 39 页,共 43 页 fclose(fp);5、#include #include void main( ) FILE *fp1,*fp2

41、; char ch; if( fp1=fopen( “c:file4.c”, r)=NULL) /以读 printf(Error); exit(0); if( fp2=fopen(“c:file5.c”, w)=NULL) /以写 printf(Error); exit(0); 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 40 页,共 43 页ch=fgetc(fp1); while(ch!=EOF) fputc(ch,fp2); /把该字符写入目标磁盘文件ch=fgetc(fp1); /从原有磁盘文件中读一个字符 fclose(fp1);fc

42、lose(fp2); 6 、#include #include #include #define N 5void main( ) FILE *fp; int num,jd1,jd2,jd3,jd4,jidu,i;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 41 页,共 43 页 if(fp=fopen(e:xiaoshou.txt,w+)=NULL) printf(Error); exit(0); clrscr(); for (i=1;i=N;i+) num=fabs(rand()%500+1); jd1=fabs(rand()%100+1);

43、 jd2=fabs(rand()%100+1); jd3=fabs(rand()%100+1); jd4=fabs(rand()%100+1); fprintf(fp,%6d%6d%6d%6d%6dn,num,jd1,jd2,jd3,jd4); rewind(fp); / 移动文件内部位置指针到文件首 for (i=1;i=N;i+) fscanf(fp,“%d%d%d%d%dn,&num,&jd1,&jd2,&jd3,&jd4); jidu=jd1+jd2+jd3+jd4;printf(“%6d%6d%6d%6d%6d%6dn,num,jd1,jd2,jd3,jd4,ji精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 42 页,共 43 页fclose(fp);精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 43 页,共 43 页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁