2023年C语言上机实验 超详细解析超详细解析答案.pdf

上传人:C****o 文档编号:92547238 上传时间:2023-06-07 格式:PDF 页数:29 大小:682.39KB
返回 下载 相关 举报
2023年C语言上机实验 超详细解析超详细解析答案.pdf_第1页
第1页 / 共29页
2023年C语言上机实验 超详细解析超详细解析答案.pdf_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《2023年C语言上机实验 超详细解析超详细解析答案.pdf》由会员分享,可在线阅读,更多相关《2023年C语言上机实验 超详细解析超详细解析答案.pdf(29页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、C 语言上机实验 答案 实验一 上机操作初步(2 学时)一、实验方式:一人一机 二、实验目的:1、熟悉 VC+语言的上机环境及上机操作过程。2、了解如何编辑、编译、连接与运行一个 C 程序。3、初步了解 C 程序的特点。三、实验内容:说明:前三题为必做题目,后两题为选做题目。1、输出入下信息:(实验指导书 P79)*Very Good*2、计算两个整数的与与积。(实验指导书 P81)3、从键盘输入一个角度的弧度值 x,计算该角度的余弦值,将计算结果输出到屏幕。(书P3)4、在屏幕上显示一个文字菜单模样的图案:=1 输入数据 2 修改数据 3 查询数据 4 打印数据=5、从键盘上输入两个整数,交

2、换这两个整数。四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include void main()printf(“*n”);printf(“Very Goodn”);printf(“*n”);2、#include void main()int a,b,c,d;printf(“Please enter a,b:”);scanf(“%d,%d”,&a,&b);c=a+b;d=a*b;printf(“%d+%d=%dn”,a,b,c);printf(“%d*%d=%dn”,a,b,d);C 语言上机实验 答案 3、#include#include void main()double x,

3、s;printf(“Please input value of x:”);scanf(“%lf”,&x);s=cos(x);printf(“cos(%lf)=%lfn”,x,s);4、#include void main()printf(“=n”);printf(“1 输入数据 2 修改数据 n”);printf(“3 查询数据 4 打印数据 n”);printf(“=n”);5、#include void main()int x,y,t;printf(“Please enter x and y:”);scanf(“%d%d”,&x,&y);t=x;x=y;y=t;printf(“After

4、sn”,x,y);实验二 简单的 C 程序设计(4 学时)一、实验方式:一人一机 二、实验目的:1、掌握 C 语言的数据类型。2、学会使用 C 语言的运算符及表达式。3、掌握不同数据类型的输入输出方法。三、实验内容:说明:前四题为必做题目,后两题为选做题目。1、输入 r1、r2,求出圆形垫片面积。(实验指导书 P84)2、输入华氏温度 h,输出摄氏温度 c。(实验指导书 P85)3、从键盘输入一个 3 位整数,将输出该数的逆序数。(实验指导书 P89)4、输入并运行以下程序,分析运行结果。#include C 语言上机实验 答案 void main()int i,j;i=8;j=10;prin

5、tf(“%d,%dn”,+i,+j);i=8;j=10;printf(“%d,%dn”,i+,j+);i=8;j=10;printf(“%d,%dn”,+i,i);i=8;j=10;printf(“%d,%dn”,i+,i);5、输入三角形三条边的边长,求三角形的面积。(书 P55)6、输入 3 个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。(书 P55)四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include#define PI 3、14 void main()float r1,r2;double s1,s2,s;printf(“Please enter r1,

6、r2:n”);scanf(“%f%f”,&r1,&r2);s2=r2*r2*PI;s1=r1*r1*PI;s=s2-s1;printf(“s=%lfn”,s);2、#include void main()float h,c;printf(“请输入华氏温度:”);scanf(“%f”,&h);c=5、0/9*(h-32);printf(“n 摄氏温度:%fn”,c);3、#include void main()int a,b,c,x,y;printf(“请输入一个 3 位的正整数:n”);scanf(“%d”,&x);C 语言上机实验 答案 a=x/100;/*求 x 的百位数*/b=(x-a*

7、100)/10;/*求 x 的十位数*/c=x-a*100-b*10;/*求 x 的个位数*/y=c*100+b*10+a;printf(“%d:%dn”,x,y);4、运行结果:9,11 8,10 9,8 8,8 5、#include#include void main()int a,b,c;double area,s;printf(“Please enter a,b,c:”);scanf(“%d,%d,%d”,&a,&b,&c);s=(double)(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“area=%、2lfn”,area);6、#i

8、nclude void main()char a,b,c;float x;printf(“Please enter:n”);a=getchar();b=getchar();c=getchar();x=(a+b+c)/3、0;printf(“(a+b+c)/3=%、2fn”,x);实验三 选择结构程序设计(2 学时)一、实验方式:一人一机 二、实验目的:1、熟练掌握 if 语句与 switch 语句。2、练习并掌握多分支选择结构的编程方法。3、学习调试与修改程序的步骤。三、实验内容:说明:前三题为必做题目,后两题为选做题目。C 语言上机实验 答案 1、读入 3 个分别表示箱子长、宽、高的整数值,

9、判断并输出该箱子就是立方体还就是长方体。(实验指导书 P104)2、输入某一年月,输出该月的天数。(实验指导书 P105)3、有一函数:x(x1)y=2x-1(1x10)3x-11(x10)编写程序,输入 x 值,输出 y 值。4、从键盘输入一个字符,如果该字符为小写字母,则转换为大写字母输出;如果该字符为大写字母,则转换为小写字母输出;如果为其她字符,原样输出。(书 P94)5、输入 4 个整数,要求按由小到大的顺序输出。四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include void main()int l,w,h;printf(“请输入箱子的长、宽、高:n”);scan

10、f(“%d%d%d”,&l,&w,&h);if(l=w&w=h)/*如果长、宽、高相等,则为立方体*/printf(“该箱子就是立方体。”);else printf(“该箱子就是长方体。”);2、#include void main()int year,month,days;printf(“Please enter year and month:n”);switch(month)case 2:if(year%4=0&year%100!=0|year%400=0)days=29;else days=28;break;case 1:case 3:case 5:case 7:case 8:case

11、10:case 12:days=31;break;case 4:case 6:case 9:case 11:days=30;printf(“%d年%d月有%d天 n”,year,month,days);3、#include void main()float x,y;C 语言上机实验 答案 printf(“Please input x:n”);scanf(“%f”,&x);if(x1)y=x;else if(x10)y=2*x-1;else y=3*x-11;printf(“y=%fn”,y);4、#include void main()char x;printf(“Enter a char:n

12、”);x=getchar();if(x=a&x=A&x=Z)x=x+32;putchar(x);5、#include void main()int a,b,c,d,t;printf(“请输入 4 个整数:”);scanf(“%d%d%d%d”,&a,&b,&c,&d);if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(ad)t=a;a=d;d=t;if(bc)t=b;b=c;c=t;if(bd)t=b;b=d;d=t;if(cd)t=c;c=d;d=t;printf(“排序结果如下:n”);printf(“%d,%d,%d,%dn”,a,b,c,d);实验四 循环结

13、构程序设计(4 学时)一、实验方式:一人一机 二、实验目的:C 语言上机实验 答案 1、熟练掌握 while 语句、do-while 语句与 for 语句。2、练习并掌握循环结构的嵌套形式。3、掌握循环结构的程序设计方法。三、实验内容:说明:前四题为必做题目,后两题为选做题目。1、从键盘上输入若干个学生的成绩,统计并输出最高成绩与最低成绩,当输入负数时结束输入。(实验指导书 P117)2、求所有的水仙花数。水仙花数就是一个 3 位数的自然数,该数各位数的立方与等于该数本身。(实验指导书 P118)3、判断输入的某个数就是否为素数。若就是,输出 YES,否则输出 NO。(书 P123)4、计算的

14、近似值。公式如下:/4=1-1/3+1/5-1/7+,直到最后一项的绝对值小于10-6为止。(书 P123)5、计算 s=1!+2!+20!的值并输出。6、输入 10 个整数,统计并输出其中正数、负数与零的个数。四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include void main()float x,max,min;printf(“Please input scores:”);scanf(“%f”,&x);max=min=x;while(x=0)if(xmax)max=x;if(xmin)min=x;scanf(“%f”,&x);printf(“nmax=%fnmin=%

15、fn”,max,min);2、#include void main()int x,y,z;int k=100;while(k=999)x=k/100;y=(k-x*100)/10;z=k-x*100-y*10;if(k=x*x*x+y*y*y+z*z*z)C 语言上机实验 答案 printf(“%dn”,k);k+;3、#include#include void main()int i,x,yes,a;printf(“Enter integer number:”);scanf(“%d”,&x);yes=1;i=2;a=(int)sqrt(double)x);while(yes&i=a)if(x

16、%i=0)yes=0;i+;printf(“%d”,x);if(yes)printf(“YESn”);else printf(“NOn”);4、#include#include void main()float pi,t,n;int sign=1;pi=0;n=1;t=1;while(fabs(t)=1e-6)t=sign/n;pi+=t;n+=2;sign=-sign;pi=pi*4;printf(“pi=%fn”,pi);5、#include void main()C 语言上机实验 答案 float s=0,t=1;int n;for(n=1;n=20;n+)t=t*n;s=s+t;pri

17、ntf(“1!+2!+20!=%fn”,s);6、#include void main()int x,i,a1=0,b1=0,c1=0;for(i=1;i0)a1+;else if(x0)b1+;else c1+;printf(“整数有%d个,负数有%d个,零有%d个 n”,a1,b1,c1);实验五 综合实验 1:结构化程序设计(2 学时)一、实验方式:一人一机 二、实验目的:1、进一步掌握选择结构、循环结构的编程特点。2、掌握 C 语言的结构化程序设计思想。3、学习利用循环结构实现的一些常用算法(如穷举、迭代、递推等)。三、实验内容:说明:前两题为必做题目,后两题为选做题目。1、编一程序,

18、对于给定的一个百分制成绩,输出对应 A,B,C,D,E 表示的的等级成绩。设:90分以上为 A,80-89 分为 B,70-79 分为 C,60-69 分为 D,60 分以下为 E。(书 P93)2、百马百担问题。(实验指导书 P121)3、输入一行字符,分别统计出其中英文字母、空格、数字与其她字符的个数。4、输出如下图案:*C 语言上机实验 答案 四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include void main()int score,temp,logic;char grade;logic=1;while(logic)printf(“Input score:”);s

19、canf(“%d”,&score);if(score100|score0)printf(“nError,Input again!n”);else logic=0;printf(“n”);if(score=100)temp=9;else temp=score/10;switch(temp)case 9:grade=A;break;case 8:grade=B;break;case 7:grade=C;break;case 6:grade=D;break;default:grade=E;printf(“Score is%d,the grade is%c、n”,score,grade);2、#inc

20、lude void main()int m,n,k;int sum=0;printf(“各种驮法如下:n”);for(m=1;m=100;m+)for(n=1;n=100-m;n+)k=100-m-n;if(k%2=0&m*3+n*2+k/2=100)C 语言上机实验 答案 printf(“大马%3d匹;中马%3d匹;小马%3d匹、n”,m,n,k);sum+;printf(“共有%d种驮法、n”,sum);3、#include void main()char c;int letter=0,space=0,digit=0,other=0;printf(“请输入一行字符:n”);while(c=

21、getchar()!=n)if(c=a&c=A&c=0&c=9)digit+;else other+;printf(“字母数=%d,空格数=%dn”,letter,space);printf(“数字数=%d,其她字符数=%dn”,digit,other);4、#include void main()int i,j,k;for(i=0;i=3;i+)for(j=0;j=2-i;j+)printf(“”);for(k=0;k=2*i;k+)printf(“*”);printf(“n”);for(i=0;i=2;i+)for(j=0;j=i;j+)printf(“”);for(k=0;k=4-2*i

22、;k+)printf(“*”);printf(“n”);实验六 函数程序设计(4 学时)C 语言上机实验 答案 一、实验方式:一人一机 二、实验目的:1、掌握 C 语言中函数的三要素:函数定义、函数调用与函数说明。2、掌握通过参数在函数间传递数据的方法。3、掌握全局变量、局部变量、动态变量、静态变量的概念与使用方法。三、实验内容:说明:前四题为必做题目,后两题为选做题目。1、从键盘输入三角形的 3 条边,调用三角形面积函数求出其面积,并输出结果。(实验指导书 P130)2、输入整数 n,输出高度为 n 的等边三角形。当 n=5 时的等边三角形如下:(实验指导书P134)*3、输入并运行以下程序

23、,分析运行结果。#include int a=5;int b=7;void main()int a=4,b=5,c;c=plus(a,b);printf(“a+b=%dn”,c);plus(int x,int y)int z;z=x+y;return(z);4、求 500 以内的所有亲密数对。若正整数 A的所有因子(包括 1 但不包括自身,下同)之与为 B,而 B 的因子之与为 A,则称 A与 B 为一对亲密数对。(实验指导书 P136)5、输入并运行以下程序,分析运行结果。#include int d=1;fun(int p)static int d=5;d+=p;printf(“%d”,d

24、);return(d);C 语言上机实验 答案 void main()int a=3;printf(“%d”,fun(a+fun(d);6、设计一个函数,输出整数 n 的所有素数因子。(书 P157)四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include#include float area(float a,float b,float c)float s,p,area;s=(a+b+c)/2;p=s*(s-a)*(s-b)*(s-c);area=sqrt(p);return(area);void main()float x,y,z,ts;scanf(“%f%f%f”,&x,&

25、y,&z);if(x0&y0&z0&x+yz&y+zx&x+zy)ts=area(x,y,z);printf(“area=%fn”,ts);else printf(“data error!n”);2、#include void trangle(int n)int i,j;for(i=0;in;i+)for(j=0;j=n-i;j+)putchar();/*打印每一行的空格*/for(j=0;j=2*i;j+)putchar(*);/*打印每一行的*号*/putchar(n);void main()int n;printf(“Please enter n:”);C 语言上机实验 答案 scanf

26、(“%d”,&n);printf(“n”);trangle(n);3、a+b=9 4、#include int facsum(int m)int sum=1,f=2;while(f=m/2)if(m%f=0)sum=sum+f;f+;return sum;void main()int m=3,n,k;while(m=500)n=facsum(m);k=facsum(n);if(m=k&m=n)printf(“%d,%dn”,m,n);m+;5、6 15 15 6、#include int prime(int n)int i,flag=1;for(i=2;i=n/2;i+)if(n%i=0)fl

27、ag=0;retun flag;return flag;void factor(int n)int i;i=2;while(i=n)C 语言上机实验 答案 if(n%i=0)&prime(i)printf(“%d”,i);n=n/i;continue;i+;void main()int num;printf(“Enter num:”);scanf(“%d”,&num);printf(“prime factor is:n”);factor(num);实验七 数组程序设计(4 学时)一、实验方式:一人一机 二、实验目的:1、掌握数组的定义、赋值与输入输出的方法。2、学习用数组实现相关的算法(特别就

28、是排序算法)。3、掌握 C 语言中字符数组与字符串处理函数的使用。三、实验内容:说明:前四题为必做题目,后两题为选做题目。1、下列程序的功能就是:输入 10 个整数,按每行 3 个数输出这些整数,最后输出 10 个整数的平均值。程序中有几处错误,试找出它们后加以修改,并上机验证修改结果。#include void main()int i,n,a10,avg;for(i=0;i n;i+)scanf(“%d”,ai);for(i=0;in;i+)if(i%3=0)printf(“n”);printf(“%d”,ai);for(i=0;in;i+)avg+=ai;printf(“navg=%fn”

29、,avg);C 语言上机实验 答案 2、写一个函数,对输入的 10 个整数按从小到大的顺序排序(升序,用冒泡排序实现)。(实验指导书 P147)3、编写程序,判断某一字符串就是不就是“回文数”,回文数就是从左至右或从右至左读起来都就是一样的字符串。(实验指导书 P153)4、输入一个 3 行 3 列矩阵的所有元素,然后求出主对角线元素之与。5、给定某年某月某日,将其转换成这一年的第几天并输出。(实验指导书 P152)6、编写程序,在有序的数列中查找某数,若该数在此数列中,则输出它所在的位置,否则输出 no found。(书 P191)四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#i

30、nclude void main()int i,n=10,a10;float avg=0;for(i=0;in;i+)scanf(“%d”,&ai);for(i=0;in;i+)if(i%3=0)printf(“n”);printf(“%d”,ai);for(i=0;in;i+)avg+=ai;avg=avg/n;printf(“navg=%fn”,avg);2、#include void sort1(int s,int n)int i,j;int t;for(i=0;i=i+1;j-)if(sjsj-1)t=sj;sj=sj-1;sj-1=t;void main()int i,a10;pri

31、ntf(“Please input 10 numbers:n”);for(i=0;i10;i+)C 语言上机实验 答案 scanf(“%d”,&ai);sort1(a,10);printf(“The sorted 10 numbers:n”);for(i=0;i10;i+)printf(“%d”,ai);3、#include#include#define N 40 void main()char strN,ch=Y;int i;int len;printf(“Input a string:n”);scanf(“%s”,str);len=strlen(str);for(i=0;ilen/2;i+

32、)if(stri!=strlen-1-i)ch=N;break;if(ch=Y)printf(“%s就是一个回文数 n”,str);else printf(“%s不就是一个回文数 n”,str);4、#include void main()int a33,sum;int i,j;sum=0;for(i=0;i3;i+)for(j=0;j3;j+)scanf(“%d”,&aij);for(i=0;i3;i+)sum=sum+aii;printf(“sum=%dn”,sum);5、#include C 语言上机实验 答案 int day_tab213=0,31,28,31,30,31,30,31,

33、31,30,31,30,31,0,31,29,31,30,31,30,31,31,30,31,30,31;int day_year(int year,int month,int day)int i,j,s=0;if(year%4=0&year%100!=0|year%400=0)i=1;else i=0;for(j=1;jmonth;j+)s=s+day_tabij;return(s+day);void main()int y,m,d;printf(“Input year,month and day:n”);scanf(“%d%d%d”,&y,&m,&d);printf(“就是这年的第%d天

34、n”,day_year(y,m,d);6、#include#define N 10 void main()int aN;int num,i;char ch=n;printf(“请输入一个数组:n”);for(i=0;iN;i+)scanf(“%d”,&ai);printf(“输出数组:n”);for(i=0;iN;i+)printf(“%d”,ai);printf(“n”);printf(“请输入一个数:n”);scanf(“%d”,&num);printf(“开始查找 n”);for(i=0;iN;i+)if(num=ai)ch=y;printf(“%d在数组的第%d位 n”,num,i+1

35、);if(ch=n)printf(“no foundn”);C 语言上机实验 答案 实验八 指针程序设计(2 学时)一、实验方式:一人一机 二、实验目的:1、通过实验进一步掌握指针的概念,会定义与使用指针变量。2、能正确使用指向数组与字符串的指针变量。3、熟悉指针作为函数参数的编程特点。三、实验内容:说明:前两题为必做题目,后两题为选做题目。要求用指针方法实现。1、指针基础及指针运算。(实验指导书 P168)2、输入 3 个整数,按从小到大的次序输出。(书 P234)3、数据交换。实验要求:1)定义两个函数,分别为 void swap1(int a,int b)与 void swap2(int

36、*a,int*b),用于交换 a,b 的值。2)从主函数中分别输入两个整型变量 a、b。3)从主函数中分别调用上述两个交换函数,并打印输出交换后 a、b 的结果。(实验指导书 P169)4、编写一个程序计算字符串长度的函数,模拟 C 的 函数库内的计算字符串长度的函数 strlen()。四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include#include#define N 5 void main()int*p,*q,aN;int i,tmp;p=a;q=(int*)malloc(N*sizeof(int);printf(“Please input the first gro

37、up:”);for(i=0;iN;i+)scanf(“%d”,p+i);/*使用指针 p 输入 a 的 N个元素*/printf(“Please input the second group:”);for(i=0;iN;i+)scanf(“%d”,&qi);/*使用数组输入指针 q地址上的 N个整数*/for(i=0;i*(q+i)tmp=*(p+i);*(p+i)=*(q+i);*(q+i)=tmp;交换 printf(“Result:n”);for(i=0;iN;i+)C 语言上机实验 答案 printf(“%d”,*(a+i);/*按指针输出第一组数*/printf(“n”);for(i

38、=0;iN;i+)printf(“%d”,qi);/*按数组输出第二组数*/printf(“The memory address of p,a,q are:%x,%x,%xn”,p,a,q);free(q);2、#include void s*p1,int*p2)int p;p=*p1;*p1=*p2;*p2=p;void main()int n1,n2,n3;int*p1,*p2,*p3;printf(“Please input three integer datas:”);scanf(“%d%d%d”,&n1,&n2,&n3);p1=&n1;p2=&n2;p3=&n3;if(n1n2)s)

39、;if(n1n3)s);if(n2n3)s);printf(“After swap:”);printf(“%d%d%dn”,n1,n2,n3);3、#include void swap1(int x,int y);void swap2(int*x,int*y);void main()int a,b;printf(“Please input a=:”);scanf(“%d”,&a);printf(“Please input b=:”);scanf(“%d”,&b);swap1(a,b);printf(“nAfter call s b=%dn”,a,b);swap2(&a,&b);printf(“

40、nAfter call s b=%dn”,a,b);void swap1(int x,int y)C 语言上机实验 答案 int temp;temp=x;x=y;y=temp;void swap2(int*x,int*y)int temp;temp=*x;*x=*y;*y=temp;4、#include int strlength(char*s);void main()int n1,n2;char*list1=“See no evil,hear no evil、”;char*list2=“blind and deaf?”;n1=strlength(list1);n2=strlength(lis

41、t2);puts(list1);printf(“The length of list1=%dn”,n1);puts(list2);printf(“The length of list2=%dn”,n2);int strlength(char*s)int n=0;while(*s!=0)n+;s+;return n;实验九 综合实验 2:函数、数组、指针的综合应用(2 学时)一、实验方式:一人一机 二、实验目的:1、进一步掌握通过指针引用数组元素的方法。2、综合运用函数、数组、指针的知识,实现复杂程序的编程。3、掌握调试复杂程序的技巧。三、实验内容:说明:前两题为必做题目,后两题为选做题目。要求

42、用指针方法实现。1、数组元素奇偶排列。实验要求:1)定义一个整型一维数组,任意输入数组的元素,其中包含奇数与偶数。2)定义一个函数,实现将数组元素奇数排列在左,偶数排列在右的排C 语言上机实验 答案 列。3)在上述定义的函数中,不允许再增加新的数组。4)从主函数中分别调用上述函数,打印输出结果。(实验指导书 P172)2、编写函数 lower()模拟标准函数 strlwr(),调用形式为 lower(char*st),其作用就是将字符串 st 中的大写字母转换成小写。(书 P192)3、编写函数,比较两个字符串就是否相等。(书 P234)4、编写函数 reverse()模拟标准函数 strre

43、v(),调用形式为 reverse(char*st),其作用就是颠倒字符串 st 的顺序,即按与原来相反的顺序排列。(书 P192)四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include#define N 10 void arrsort(int a,int n);void main()int aN,i;for(i=0;iN;i+)scanf(“%d”,&ai);arrsort(a,N);for(i=0;iN;i+)printf(“%d”,ai);void arrsort(int a,int n)int*p,*q,temp;p=a;q=a+n-1;while(pq)while(

44、*p%2)p+;while(!(*q%2)q-;if(pq)temp=*p;*p=*q;*q=temp;p+,q-;2、#include#define N 20 void lower(char*st)int i=0;while(sti!=0)if(sti=A&sti=Z)C 语言上机实验 答案 sti+=32;i+;void main()char sN;printf(“Input a string:n”);scanf(“%s”,s);lower(s);printf(“Output:%sn”,s);3、#include#include int compare(char*p,char*q)int

45、i,l=strlen(p);if(strlen(p)!=strlen(q)return 0;for(i=0;il;i+)if(pi!=qi)return 0;return 1;void main()char str180,str280;printf(“Input first string:”);scanf(“%s”,str1);printf(“Input second string:”);scanf(“%s”,str2);if(compare(str1,str2)printf(“Two strings equation!n”);else printf(“Two strings no equat

46、ion!n”);4、#include#include void reverse(char*st)int i=0,n;char t;n=strlen(st);for(;in/2;i+)C 语言上机实验 答案 t=sti;sti=stn-i-1;stn-i-1=t;void main()char s80;printf(“Input a string:n”);scanf(“%s”,s);reverse(s);printf(“Output:%sn”,s);实验十 综合实验 3:结构体、文件程序设计(6 学时)一、实验方式:一人一机 二、实验目的:1、掌握结构体类型变量的定义与使用。2、掌握结构体类型数

47、组的概念与使用。3、学会使用文件打开、关闭、读、写等文件操作的函数。三、实验内容:说明:前三题为必做题目,后一题为选做题目。1、在选举中进行投票,包含候选人姓名、得票数,假设有多位候选人,用结构体数组统计各候选人的得票数。(实验指导书 P180)2、编写一个学生信息排序程序。要求:1)程序运行时可输入 n 个学生的信息与成绩(n 预先定义)。2)学生信息包括:学号、姓名;学生成绩包括:高等数学、物理、计算机。3)给出一个排序选择列表,能够按照上述所列信息(学号、姓名、高等数学、物理、计算机)中的至少一个字段进行排序,并显示其结果。4)使用函数方法定义各个模块。3、将磁盘上一个文本文件的内容复制

48、到另一个文件中。(实验指导书 P199)4、从键盘输入一行字符串,将其中的小写字母全部转换成大写字母,输出到一个磁盘文件“test、dat”中保存,然后读出并输出在屏幕上。(实验指导书 P204)四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#include#include struct person char name20;int count;a6=“zhang”,0,“li”,0,“wang”,0,“zhao”,0,“liu”,0,“zhu”,0;void main()C 语言上机实验 答案 int i,j;char abc20;for(i=1;i=10;i+)printf(“输

49、入候选人名字:”);scanf(“%s”,abc);for(j=0;j6;j+)if(strcmp(abc,aj、name)=0)aj、count+;for(j=0;j6;j+)printf(“%s:%dn”,aj、name,aj、count);2、#include#include#define N 3 struct student int stunum;char stuname10;int math;int physics;int computer;int sum;void printspace()int i;for(i=0;i40;i+)printf(_);printf(n);void p

50、rintinformation(struct student stu)int i;printf(stuNum stuName math physics computer sum sort:n);printspace();for(i=0;iN;i+)printf(%6d%10s%6d%6d%6d%6d,stui、stunum,stui、stuname,stui、math,stui、physics,stui、computer,stui、sum,i+1);printf(n);printspace();void readinformation(struct student stu)C 语言上机实验 答

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

当前位置:首页 > 教育专区 > 高考资料

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com