版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、编号: C语言应用及实训课程实训指导书编写: 校核: 审批: 版本: 学生实训制度1实训前必须预习实训指导书,了解实训目的和注意事项。2按预约时间进入实训室,不得无故迟到、早退、旷课。3进入实训室后应注意安全、卫生、不准喧哗打闹、不准抽烟、不准乱写乱画乱扔纸屑、不准随地吐痰、不准擅自动仪器设备,或实训过程中未按操作规程操作仪器设备,导致损坏仪器设备者要照价赔偿。4实训时应严格遵守操作步骤和注意事项。若遇仪器设备发生故障,应立即向教师报告,及时检查,待排除故障后才能继续实训。5实训过程中,同组同学应相互配合,认真纪录;应独立完成实训报告。6实训结束后,应将仪器设备、工具擦拭干净,摆放整齐;协助做
2、好实训室清洁卫生。7不得将实训室的工具、仪器、材料等物品携带出实训室。循环编程复习一、项目编号:1二、实训课时:2三、实训目的1、复习while和do-while循环语句编程2、复习for语句编程3、 contiue语句和break语句在C程序当中的应用。四、实训要求1、while和do-while循环语句编程2、for语句编程3、 contiue语句和break语句在C程序当中的应用。五、实训设备 电脑一台六、实训项目本综合项目实训的主要任务如下:1 编程:求sum=1+2+3+4+100 2、编写程序,求1到100以内所有能被3整除的全部数字的和,并将结果输出。3、用/41-1/3+1/5
3、-1/7+公式求的近似值,直到某一项的绝对值小于1e-6为止。绝对值函数fabs( ),要添加#include头文件4,计算r=1到r=10时的圆面积,直到面积area大于100为止5,求(选做)6,求s=a+aa+aaa+aa 其中a是一个数,例如2+22+222+2222+22222(n是5)n由键盘输入(选做)7,随机输入一行字符,统计数字,字母及其他字符的个数1 编程:求sum=1+2+3+4+100 (15分)#include void main() int i,sum=0; i=1; do sum=sum+i; i+; while(i=100); printf(%dn,sum);
4、2、编写程序,求1到100以内所有能被3整除的全部数字的和,并将结果输出。(16分) #include stdio.h main() int sum=0,i; for(i=1;i=100;i+) if(i%3=0) sum=sum+i; printf(nThe sum is %d,sum); 3、用/41-1/3+1/5-1/7+公式求的近似值,直到某一项的绝对值小于1e-6为止。绝对值函数fabs( ),要添加#include头文件#include #includevoid main() int s;float n,t,pi; t=1;pi=0;n=1.0;s=1; while(fabs(t
5、)1e-6) pi=pi+t;n=n+2;s=-s;t=s/n; pi=pi*4;printf(pi=%.6fn,pi);4,计算r=1到r=10时的圆面积,直到面积area大于100为止#include void main() float r, area,pi=3.14159; for(r=1;r100) break; printf(r=%f,area=%fn,r,area);5,求#include ”stdio.h ” main() int i;float s,sum; s=1.0; sum=0; for(i=1;i=20;i+) s=s*i; sum+=s;printf(sum=%en,
6、sum);6,求s=a+aa+aaa+aa 其中a是一个数,例如2+22+222+2222+22222(n是5)n由键盘输入#define a 2#include stdio.h main() int i,n,s,sum=0;s=a; scanf(%d,&n); for(i=1;i=a&c=A&c=0&c=9)number+;elseother+;c=getchar();printf(The letter:%dnThe number:%dnThe other:%dn,letter,number,other);数组编程复习一、项目编号:2二、实训课时:2三、实训目的掌握一维数组简单C程序。掌握二
7、维数组编写简单C程序掌握字符数组编写简单C程序四、实训要求掌握一维数组简单C程序。掌握二维数组编写简单C程序掌握字符数组编写简单C程序五、实训设备电脑一台六、实训项目本综合项目实训的主要任务如下:1、利用循环将数组a到元素赋值为,并反序输出个元素2、用数组来处理,求解Fibonacci数列。Fibonacci数列公式:已知: a1=a2=1 an=an-1+an-2 即:1,1,2,3,5,8,133、输入10个学生成绩,求他们的平均成绩4、 已知一个班10个学生成绩存放在一个数组中,找出成绩最高的成绩和该生学号(选做)5、用起泡法对10个数排序(由小到大)。 参考程序:#include vo
8、id main() int i,a10; for (i=0; i=0; i-) printf(%d,ai); printf(n); #include void main() int i; int f20=1,1;for(i=2;i20;i+)fi=fi-2+fi-1;for(i=0;i20;i+) if(i%5=0) printf(n); printf(%12d,fi); #include void main() float a10; int i; float sum=0,ave=0; printf(input 10 numbers :n); for (i=0;i10;i+) scanf(%f
9、,&ai); for (i=0;i10;i+) sum=sum+ai; ave=sum/10; printf(n%f ,ave); #include void main() float a10; int i,t=0; float max; printf(input 10 numbers :n); for (i=0;i10;i+) scanf(%f,&ai); max=a0; for (i=0;imax) max=ai;t=i; printf(n%fn%d ,max,t);#include void main() int a10; int i,j,t; printf(input 10 numbe
10、rs :n); for (i=0;i10;i+) scanf(%d,&ai); printf(n); for(j=0;j9;j+) for(i=0;iai+1) t=ai;ai=ai+1; ai+1=t; printf(the sorted numbers :n); for(i=0;i10;i+) printf(%d ,ai); printf(n);三种结构综合编程一、项目编号:3二、实训课时:2三、实训目的1、if-else语句复习2、循环语句复习3、contiue语句和break语句的应用4、数组综合编程。四、实训要求1、if-else语句复习2、循环语句复习3、contiue语句和bre
11、ak语句的应用4、数组综合编程。五、实训设备电脑一台六、实训项目本综合项目实训的主要任务如下:1、 输出20100之间被6整除余2的整数?2、在给定的10个数中,查找数12是否存在,输出判断结果3、从键盘输入16个数,按要求编程1)4行4列输出2)求地1行元素的和3)求第1列元素的最大值4、 已知:5个学生5门课成绩,要求求出平均成绩最高的学生成绩,以及该学生的学号5、 已知:3个学生4门课成绩,要求求出没门课的平均成绩程序参考:1 #include stdio.hmain()int m;for(m=20;m=100;m+)if(m%6=2)printf(%5d,m);2 #include s
12、tdio.hmain()int a10=45,9,46,12,56,79,0,6,7,4,i,num=0;for(i=0;i=9;i+)if(ai=12)printf(num=%d,+num);3 #include stdio.h1)main()int i,j,a44=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15;for(i=0;i4;i+) printf(n); for(j=0;j4;j+) printf(%5d,aij);2)main()int s=0,j,a44=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15;for(j=0;j4
13、;j+) s=s+a0j;printf(%d,s);3)main()int i,a44=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,max=a00;for(i=0;i4;i+) if(maxai0) max=ai0;printf(%d,max);4 #include stdio.hmain() int i,j,row; float max=0, sum,a56=78,82,93,74,65,91,82,72,76,67, 100,90,85,72,98,67,89,90,65,78,77,88,99,45,89;for (i=0;i5;i+) sum=0; fo
14、r (j=0;j5;j+) sum=sum+aij; ai5=sum/5; printf(%fn,ai5);for (i=0;imax) max=ai5;row=i; printf(max=%f,row=%dn,max,row); 5 #include stdio.hmain() int i,j,row; float sum,a44=78,82,93,91,82,72, 100,90,85,67,89,90;for (i=0;i4;i+) sum=0; for (j=0;j3;j+) sum=sum+aij; ai3=sum/3; printf(%fn,ai3); 函数编程一、项目编号:4二、
15、实训课时:3三、实训目的1、掌握函数的种类和形式。2、理解函数的参数的种类和特点3、掌握函数的返回值4、掌握函数调用的一般形式和方法。5、掌握函数的嵌套调用6、理解函数的递归调用。四、实训要求理解函数的形参和实参的区别掌握函数的返回值掌握函数调用的一般形式和方法理解函数的递归调用五、实训设备电脑一台六、实训项目本综合项目实训的主要任务如下:任务1:函数简单调用, 1学时任务2:函数嵌套调用, 2学时任务1:1 调用函数编程:输入两个数,求最大值2用函数调用求1+2+1003写两个函数求最大公约数最小公倍数,用主函数调用这两个函数,并输出结果,键盘输入整数程序参考:1 #include ()in
16、t max(int ,int ); int ,; scanf(,); (,); printf( ,); int max(int ,int ) int ; ?; return(); 2 #include stdio.hint sum(int n)int i,c=0;for(i=0;i=n;i+)c=c+i;return c; main()int su; su=sum(100) ; printf(%d,su) ; 3、#include int gyu(int x,int y) int i;for (i=y;i0;i-) if(x%i=0&y%i=0) break; return i; int gb
17、e(int h,int f,int g) return h*f/g; void main() int m,n,a,b; scanf(%d%d,&m,&n); a=gyu(m,n); b=gbe(m,n,a); printf(%dn%d,a,b); 任务2:1输入4个整数,调用函数,求最小值2 有5个人,第5个人说他比第4个人大2岁,第4个人说他比第3个人大2岁,第3个人说他比第2个人大2岁,第2个人说他比第1个人大2岁,第1个人说他10岁。求第5个人多少岁。3编一递归函数求n!。4猴子吃桃问题5一个球从100米高度自由落下,每次落地后反弹回原高度的一半再落下,再反弹。第10次反弹多高?6、递归
18、函数编程:求fibonacci序列前10项7、编一递归函数求xn程序参考:1、()int max4(int a,int b,int c,int d); int ,b,c,d,max; scanf(%,%,%,%,&,&,&c,&d); maxmax4(a,b,c,d); printf( ,max); int max4(int ,int )int max(int,int);int m;m=max (a,b);m=max (m,c); m=max (m,d);return m;int max (int ,int ) int ; ?; return(); 2、 age(int n) int c; i
19、f (n=1) c=10; else c=age(n-1)+2; return c; main() int x; x=age(5); printf(%d,x); 3、 float fac(int x) int f; if (x=1) f=1; else f=fac(x-1)*x; return f; main() int n; float s; scanf(%d,&n); s=fac(n); printf(%d!=%f,n,s); 4、 ge(int n) int c; if (n=10) c=1; else c=2*(ge(n+1)+1); return c; main() int x; x
20、=ge(1); printf(%d,x);5、 float fan(int n)float c; if (n=1) c=100.00; else c=fan(n-1)/2; return c; main() float x; x=fan(10); printf(%f,x); 6 #include int fib(int n) if(n=0 | n=1) return 1; return fib(n-1)+fib(n-2); void main() int i; for(i=0;i10;i+) printf(%-12d,fib(i); 7 long xn(int x,int n) long f=
21、0; if (n0) printf(n0,data error!n); else if (n=0) f=1; else f=x*xn(x,n-1); return (f); main( ) int n,x; long y; scanf(%d,%d,&x,&n); y=xn(x,n); printf(%ldn,y); 数组作为函数参数编程一、项目编号:5二、实训课时:2三、实训目的1、数组作为函数参数的种类。2、数组元素作为函数实参、数组名作为函数参数的区别及应用。四、实训要求1、会读一些数组作为函数参数的程序。2、会利用数组作为函数参数编写简单程序五、实训设备电脑一台六、实训项目本综合项目实训
22、的主要任务如下:任务1:数组作为函数参数编程, 2学时任务1:1. 用值传递比较两组学生(每组10个学生)看哪一组成绩好2. 用地址传递求10个学生成绩最大值3. 用地址传递求2个班学生成绩平均值,一个班5人,一个班10人程序参考:1 #include int large(int x,int y) int flag; if(xy) flag=1; else if(xy) flag=-1; else flag=0; return(flag);main() int a10,b10,i,n=0,m=0,k=0; printf(Enter array a:n); for(i=0;i10;i+)scan
23、f(%d,&ai); printf(Enter array b:n); for(i=0;i10;i+)scanf(%d,&bi); for(i=0;ibi %d timesnai=bi %d timesnaik)printf(a larger); else if(nk)printf(b larger); else printf(a is equal to b); 2 #include float average(int stu10, int n) int i, max=stu0; for( i=1; in; i+ ) if(maxstui) max= stui; return max; voi
24、d main() int score10, i; float max; printf(Input 10 scores:n); for( i=0; i10; i+ ) scanf(%d, &scorei); max=average(score,10); printf(max is:%.2f, max); 3 #include float average(float stu , int n) int i; float av,total=0; for( i=0; in; i+ ) total += stui; av = total/n; return av; void main() float sc
25、ore3=90,80,70;float cl5=80,60,70,70,70; float av1, av2; av1=average(score,3); av2=average(cl,5); printf(%6.2f %6.2f, av1, av2); 指针 编程一、项目编号:6二、实训课时:1.5三、实训目的1、理解指针和指针变量的含义。2、正确引用指针变量编写程序3、正确引用指针变量作为函数参数传输。四、实训要求1、正确引用指针变量编写程序2、正确引用指针变量作为函数参数传输五、实训设备电脑一台六、实训项目本综合项目实训的主要任务如下:任务1:指针 编程, 1.5学时任务1:1引用指针求
26、比较两个数大小2引用指针变量作为函数参数传输求比较大小3引用指针变量比较3个数大小1、main() int *p1,*p2,*p,a,b; scanf(%d,%d,&a,&b); p1=&a; p2=&b; if(ab) p=p1; p1=p2; p2=p; printf(a=%d,b=%dn,a,b); printf(max=%d,min=%dn,*p1,*p2);2 swap(int *p1, int *p2) int p; p=*p1; *p1=*p2; *p2=p; main() int a,b; int *pointer_1,*pointer_2; scanf(%d,%d,&a,&b
27、); pointer_1=&a; pointer_2=&b; if(ab) swap(pointer_1,pointer_2); printf(%d,%d,*pointer_1,*pointer_2); printf(%d,%d,a,b); 3 void swap(int *p1, int *p2) int p; p=*p1; *p1=*p2; *p2=p; main() int a,b,c; int *pointer_1,*pointer_2,*pointer_3; scanf(%d,%d,%d,&a,&b,&c); pointer_1=&a; pointer_2=&b;pointer_3=
28、&c; if(ab) swap(pointer_1,pointer_2); if(ac) swap(pointer_1,pointer_3); if(b1,y=x3+1; -1=x=1,y=x2; x-1,y=x2-1、编一递归函数求xn2、3题选做一道题任务2:1输入4个整数,调用函数,求最小值2编一递归函数求n!。3 调用递归函数编程求2n及xn4 猴子吃桃问题5、递归函数编程:求fibonacci序列前10项任务3:1 猴子吃桃问题2、递归函数编程:求fibonacci序列前10项3、求4、求s=a+aa+aaa+aa 其中a是一个数,例如2+22+222+2222+22222(n是5)
29、n由键盘输入任务4:1引用指针比较两个数大小2引用指针变量作为函数参数传输求比较大小3引用指针变量比较3个数大小任务1:参考程序1、#include void main() float a10; int i; float sum=0,ave=0; printf(input 10 numbers :n); for (i=0;i10;i+) scanf(%f,&ai); for (i=0;i10;i+) sum=sum+ai; ave=sum/10; printf(n%f ,ave); 2、#include stdio.hmain() int i,j,row; float max=0, sum,a
30、56=78,82,93,74,65,91,82,72,76,67, 100,90,85,72,98,67,89,90,65,78,77,88,99,45,89;for (i=0;i5;i+) sum=0; for (j=0;j5;j+) sum=sum+aij; ai5=sum/5; printf(%fn,ai5);for (i=0;imax) max=ai5;row=i; printf(max=%f,row=%dn,max,row); 3 #include stdio.hmain() int i,j,row; float sum,a44=78,82,93,91,82,72, 100,90,8
31、5,67,89,90;for (i=0;i4;i+) sum=0; for (j=0;j1) n=m*m*m+1;else if(m=-1) n=m*m; else n=m*m-1; return(n);main()float x,y;scanf(%f,&x);y=fun(x);printf(%f,y); long xn(int x,int n) long f=0; if (n0) printf(n0,data error!n); else if (n=0) f=1; else f=x*xn(x,n-1); return (f); main( ) int n,x; long y; scanf(
32、%d,%d,&x,&n); y=xn(x,n); printf(%ldn,y); 任务2:参考程序1、()int max4(int a,int b,int c,int d); int ,b,c,d,max; scanf(%,%,%,%,&,&,&c,&d); maxmax4(a,b,c,d); printf( ,max); int max4(int ,int )int max(int,int);int m;m=max (a,b);m=max (m,c); m=max (m,d);return m;int max (int ,int ) int ; ?; return(); 2 float fa
33、c(int x) int f; if (x=1) f=1; else f=fac(x-1)*x; return f; main() int n; float s; printf(Input n=); scanf(%d,&n); s=fac(n); printf(%d!=%f,n,s); 3 long xn(int x,int n) long f=0; if (n0) printf(n0,data error!n); else if (n=0) f=1; else f=x*xn(x,n-1); return (f); main( ) int n,x; long y; scanf(%d,%d,&x
34、,&n); y=xn(x,n);printf(%ldn,y); 4、int ge(int n) int c; if (n=10) c=1; else c=2*(ge(n+1)+1); return c; main() int x; x=ge(1); printf(%d,x); 5 #include int fib(int n) if(n=0 | n=1) return 1; return fib(n-1)+fib(n-2); void main() int i; for(i=0;i10;i+) printf(%-12d,fib(i); 任务3:参考程序1、int ge(int n) int c; if (n=10) c=1; else c=2*(ge(n+1)+1); return c; main() int x; x=ge(1); printf(%d,x);2 #include int fib(int n) if(n=0 | n=1) return 1; return fib(n-1)+fib(n-2); voi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能洗碗机污渍识别系统分析方案
- 联户沼气池建设方案
- 锂电池正极材料项目分析方案
- 福利大桥建设规划方案
- 数学小组工作方案
- 2026智能仓储物流系统市场格局及发展前景报告
- 2026中国区块链技术落地场景实践与合规发展路径分析报告
- 2026专业设计师行业市场深度调研及发展趋势与投资战略研究报告
- 2026中国眼科创新药物市场发展现状及未来趋势预测报告
- 2026中国CXO行业景气度分析及产业链价值重构研究
- 2026年中国五矿招聘真题及答案
- 2026年水厂招聘考试题库(含答案)
- 人教版(2024新教材)八年级上册历史全册完整教案
- 动态能力与战略管理(1997年经典论文中译全文)
- 家用净水器拆装维护技术手册
- 2025年网络规划设计师真题(附答案)
- (知识清单)-2026-2027学年五年级上册科学教科版
- 2026年云南省考面试真题及答案解析
- 李白《山中问答》课件
- 《地球的公转》地理授课课件
- 【完整版】铁路站场路基工程施工组织设计
评论
0/150
提交评论