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

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3373009.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语言程序开发环境及数据描述四、程序清单1编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black答案:#includemain() printf(The dress is longn); printf(The shoes are bign); printf(The trousers are blackn);2编写程序:(1) a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。(2)a=160,b=

2、46,c=18,d=170, 编写求(a+b)/(b-c)*(c-d)的程序。答案:(1)#includemain() int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf(a/b的商=%dn,x); printf(a/c的商=%dn,y); x=a%b; y=a%c; printf(a/b的余数=%dn,x); printf(a/c的余数=%dn,y);(2)#includemain() int a,b,c,d; float x; a=160; b=46; c=18; d=170; x=(a+b)/(b-c)*(c-d); printf

3、(a+b)/(b-c)*(c-d)=%fn,x);3. 设变量a的值为0,b的值为-10,编写程序:当ab时,将b赋给c;当a=b时,将0赋给c。(提示:用条件运算符)答案:#includemain() int a,b,c; a=0; b=-10; c= (ab) ? b:a; printf(c = %dn,c);五、调试和测试结果1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black2、(1) 编译、连接无错,运行后屏幕上显示以下结果:a/b的商=7 a/c的商=3 a/b的余数=1

4、0 a/c的余数=15(2) 编译、连接无错,运行后屏幕上显示以下结果:(a+b)/(b-c)*(c-d)=-1064.00003. 编译、连接无错,运行后屏幕上显示以下结果:c =-10实验二 顺序结构程序设计四、程序清单1键盘输入与屏幕输出练习问题1 D 。问题2 改printf(%c,%c,%dn,a,b,c);这条语句 改成:printf(%c %c %dn,a,b,c);问题3 改scanf(%c%c%d,&a,&b,&c);这条语句 改为:scanf(%c,%c,%d,&a,&b,&c);问题4 改printf(%c,%c,%dn,a,b,c);这条语句 改成:printf(%c

5、%c %dn,a,b,c);问题5 把scanf(%c%c%d,&a,&b,&c);和printf(%c,%c,%dn,a,b,c);改成scanf(%c%*c%c%*c%d,&a,&b,&c);printf(%c,%c,%dn,a,b,c);2(1)从键盘输入两个八进制数,计算两数之和并分别用十进制和十六进制数形式输出。#include int main() int a,b,c; scanf(%d%d,&a,&b); c = a + b; printf(%dn,c); printf(%xn,c); return 0;2(2)编写程序:从键盘输入两个实数a和x,按公式计算并输出y的值: #in

6、clude#includeint main() float a,x,y; scanf(%f%f,&a,&x); y = pow(a,5) + sin(a*x) + exp(a*x) + log(a+x); printf(y=%fn,y); return 0;五、调试和测试结果2(1) 输入: 12 14 输出:26 1a2(2) 输入:1 0输出:2.000000实验三 选择结构程序设计四、设计流程(算法描述) (请写出上机内容2(3)题的算法描述) 主要是两两比较,然后得出最大的数五、程序清单(1)输入一个整数,若大于等于0,输出提示信息“is positive”,否则输出“is negat

7、ive”。#include#includemain() int a; scanf(%d,&a); if(a=0) printf(the number is positven); else printf(the number is negetiven); return 0;(2)输入两个整数a和b,若a=b时,求其积c并显示;若ab时,求其商c并显示。#include main() int a,b,c; scanf(%d%d,&a,&b); if(a=b) printf(c=%dn,a*b); else printf(c=%dn,a/b); return 0;(3)输入a、b、c三个整数,输出最

8、大数。#includemain() int a,b,c,x; scanf(%d%d%d,&a,&b,&c); if(a=b) x=a; else x=b; if (xc) x=c; printf(the max number is:%dn,x); return 0;六、调试和测试结果2(1) 输入: 2 输出:the number is positve 输入: 0 输出:the number is positve输入: -2 输出:the number is negetive2(2) 输入: 3 2 输出:c=6输入: 2 3 输出:c=02(3) 输入:3 2 1 输出:the max nu

9、mber is:3 输入:2 3 1 输出:the max number is:3输入:1 2 3 输出:the max number is:3实验四 循环结构程序设计四、设计流程(算法描述)(请写出上机内容2的算法描述)首先求出每一个给定数的所有因子和,然后从2到5000循环,那一个数x与因子之和相等,就是完数。五、程序清单1编写程序:求1+2+3+100和12+22+33+1002。#include#includeint main() int i,j,sum; sum = 0; for (i=1;i=100;i+) sum += i; printf(the sum is:%dn,sum);

10、 sum =0; for(i=1;i=100;i+) j=pow(i,2); sum +=j; printf(the square sum is:%dn,sum); return 0; 2一个数如果恰好等于它的因子之和,这个数就称为“完数”,编写程序找出25000中的所有完数。 #include#include main() int i,j,sum=0; for(i=2;i=5000;i+) /遍历从2到5000的所有数 sum = 0; for (j=1;j=i/2;j+) /找出给定整数X的所有因子和 if(i%j = 0) sum +=j; if(i = sum) /sum为因子和,如果

11、和i相等,则输出 printf(%d ,i); return 0; 3.编写程序:计算sinx的近似值,精确到10-6。 其实 所以程序#include #include main() float x,sinx,i,t; printf(请输入一个x值(弧度值):); scanf(%f,&x); sinx=0; t=x;i=1; while(fabs(t)=1e-6) sinx=sinx+t; t=t*(-x*x/(2*i*(2*i+1); i+; printf(sin(%.2f)=%.6fn,x,sinx);六、调试和测试结果1:结果:the sum is:5050 the square su

12、m is:3383502:结果:6 28 4963、输入0,输出sin(0.00)=0.000000 输入1.57,输出sin(1.57)=1.000000 输入0.5,输出sin(0.50)=0.479426实验五 函数和编译预处理四、设计流程(算法描述)(请写出上机内容2的算法描述)求素数的方法就是:给定一个大于3的数x,从2到X的平方根遍历,只要有数可以被x整除,就不是素数五、程序清单1编写自定义函数long power(int m,int n),计算的值。利用此函数编程序实现:从键盘输入两个整数m和n,计算出的值。 #includelong power(int m,int n)/要返回

13、的是long型 int i; long s;/因为是要返回的数,所以这里也定义为long型 s=1; for(i=1;i=n;i+) s *=m; return s;int main(void) int m,n; scanf(%d%d,&m,&n); printf(s=%ldn,power ( m,n); return 0; 2编写自定义函数prime(int x),判断x是否为素数。利用此函数编写程序找出35000中的所有素数,并输出素数的个数。#include#includeint prime(int m) int i,k; k=sqrt(m); for(i=2;ik)return 1;

14、return 0;main() int i,k; k=0; for(i=3;i=5000;i+) if(prime(i)=1)k+;printf(%d is a prime muber n,i); printf(共有%d个素数n,k); 3. 编写自定义函数count(int x),计算x的因子个数。利用此函数找出并输出11000中有奇数个不同因子的整数。#include#includeint count(int x) int sum,i; sum =0;/记住因子的个数 for(i=1;i=x/2;i+) if(x%i = 0) sum +=1; return sum+1;int main(

15、void) int i,y; for(i=1;i=100;i+) y=count(i); if(y%2=1)printf(%dt,i); return 0; 六、调试和测试结果1.输入:2 3 输出:s=82.输出:共有668个素数2. 3、输出结果为:实验六 数组四、设计流程(算法描述)(请写出上机内容1的算法描述)设置两个变量分别指示头和尾。第一个和最后一个元素值互换,然后头和尾变量向里移动,最终到两变量相遇为止。五、程序清单1编写程序:从键盘输入一串整数保存到数组中,调用函数antitone()将数组反序输出。自定义函数void antitone(int a,int n)实现将数组中的n

16、个数据按逆序存放。 void antitone(int a,int n) int i,j; int k; i=0; j=n-1; while(ij) k=ai; ai=aj; aj=k; i +=1; j -=1; 2已知某数列的前两项为2和3,其后每一项为其前两项之积。编程实现:从键盘输入一个整数x,判断并输出x最接近数列的第几项?#include#includevoid Mad(int a,int n) int i; a0=2; a1=3; for(i=2;iai;i+); k1 = abs(x-ai-1); k2 = abs(x-ai); if(k1k2) printf(the most

17、 similar x number is:%dn,ai); else printf(the most similar x number is:%dn,ai-1); return 0; 3.编程实现:输入10个学生5门课的成绩并完成如下功能(1)求每个学生的平均分;(2)求每门课程的平均分。 #include#include#define num 10typedef struct student char name20; float math; float englis; float computer; float Chinese; float history;STUDENT;int main(

18、void) STUDENT stunum; int i; float score,sum,average; char s10; float scoreMath,scoreEng,scoreCom,scoreChi,scoreHis; for(i=0;inum;i+) printf(Name: ); gets(stui.name); printf(math score: ); scanf(%f,&score); stui.math = score; printf(englis score: ); scanf(%f,&score); stui.englis = score; printf(comp

19、uter score: ); scanf(%f,&score); puter = score; printf(Chinese score: ); scanf(%f,&score); stui.Chinese = score; printf(history score: ); scanf(%f,&score); stui.history = score; gets(s);/功能是接受最后一个回车符,然后下一次gets(stui.name);才能起到作用 /求每个学生的平均分数 for(i=0;inum;i+) sum=0; sum +=stui.math; sum +=stui.englis;

20、sum +=puter; sum +=stui.Chinese; sum +=stui.history; average = sum/5; printf(%ss average score is:%fn,stui.name,average); /求每门课的平均成绩 scoreMath=0; scoreEng=0; scoreCom=0; scoreChi=0; scoreHis=0; for(i=0;inum;i+) scoreMath += stui.math; scoreEng += stui.englis; scoreCom += puter; scoreChi += stui.Chin

21、ese; scoreHis += stui.history; printf(maths average score is:%fn,scoreMath/num); printf(engliss average score is:%fn,scoreEng/num); printf(computers average score is:%fn,scoreCom/num); printf(Chineses average score is:%fn,scoreChi/num); printf(historys average score is:%fn,scoreHis/num); return 0;实验

22、七 数组和函数四、程序清单 (请写出上机内容2中函数的源代码)void fun(int ttMN,int ppN) int i,j,max; for(j=0; jN; j+ ) max=tt0j; for(i=1;imax)max=ttij; ppj=max; 五、调试和测试结果(写出上机内容1中填空的内容)(1) (1) sum=0 (2) tii (3) 1 (2) (1) 1 (2) i (3) ap+i 实验八 指针(1)四、程序清单(请写出上机内容2中的函数)求出每个位上的数字,然后放在千位上的数字乘以1000,放在百位上的数字乘以100,放在10位上的数字乘以10,然后相加。voi

23、d fun(int a,int b,long *c) int a10,a1,b10,b1; a10=a/10; a1=a%10; b10=b/10; b1=b%10; *c = a10 * 1000 + b1 * 100 + a1 *10 + b10;五、调试和测试结果(请写出上机内容1的输出结果)1(1) 输出结果为:8,7,7,8(2) 6(3) (1)x=10 y=20(2)x=20 y=10 (4) 【1】int *p 【2】&ai 【3】 pi 输入:1 2 3 4 5 6 输出: 1 2 3 4 5 6实验九 指针(2)设计流程(算法描述)(请写出上机内容2中的算法描述)五、程序清

24、单1已知一个整型数组a5,其各元素值为4,6,8,10,12。使用指针编程求数组元素之积。#include int main(void) int a=4,6,8,10,12,sum; int *p; sum=1; for(p=a;pave=0; for(i=0;iave+=a-si; a-ave/=N;五、调试和测试结果(请写出上机内容1的填空结果)上机内容1的填空结果(1) -sno (2) -name (3) &t实验十一 共用体与枚举 文件四、程序清单(请写出上机内容2中的程序源代码)#include #include #include int main(void) int i,sum; FILE *fd; char s10,*p,ch; if( (fd=fopen(D:shi.txt,wt)=NULL) printf(creat the file failedn); exit(0); else

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

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