




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1题:/*九九乘法表:*/#includeint main(void)int i,j;for(i=1;i=9;i+)for(j=1;j=i;j+)printf(%dx%d=%2d ,i,j,i*j);printf(n);return 0;2题:/*求n的阶乘之和:*/#includeint main(void)int i,n,s,k,j;scanf(%d,&n);for(s=1,i=1;i=n;i+)s*=i;printf(%d!=%dn,n,s);for(s=1,i=1;i=n;i+)for(k=0,s=1,j=1;j=i;j+)s=s*j,k+=s;printf(他们的n阶之和为%dn,k);return 0; 3题:/*求兔子繁殖问题:*/#includeint main(void)int a=1,b=1,i=3,n,c;printf(n请输入一个繁殖时间(单位为月): );scanf(%d,&n);while(i=n)c=a+b;a=b;b=c;i+;printf(他们繁殖的兔子数为:%d(只)n,c);return 0;1题:/*猴子吃桃:*/#includeint main(void)int i,a=1,s=0;for(i=9;i=1;i-)s=(a+1)*2;a=s;printf(s=%d个n,s);return 0;2题:/*求分数之和:*/#includeint main(void)float k,i,a=1,b=2,sum=0.0;printf(这前20个分数分别是:);for(i=1,sum=0;i=20;i+)sum+=b/a;printf(%.f/%.f ,b,a);k=b,b=(a+b),a=k;printf(n他们的和为:sum=%.2fn,sum);return 0;3题/*判断是否是水仙花数:*/#includeint main(void)int a,j,k,s;printf(请输入一个数:);scanf(%d,&a);for(;a999;)printf(n输入有误,请重新输入一个三位数:);scanf(%d,&a);j=a/100,k=a%100/10,s=a%10;if(a=j*j*j+k*k*k+s*s*s)printf(n%d是水仙花数。n,a);else printf(n%d不是水仙花数。n,a);return 0;4题:/*求小球反弹的路程:*/#includeint main(void)float i,k,j,s=100;for(i=1,k=0,s=100;i=10;i+)k+=s+s/2;s=s/2;printf(小球反弹到第10次后的路程为:s=%.4fn,k);return 0;5求最大公约数:5题:/*yourid_16.c:*/#includeint func(int a,int b) int temp; while(b!=0) temp=a%b; a=b; b=temp; return a;void main() int a,m,j,temp; printf(n请输入两个数:n); scanf(%d%d,&m,&j); if(mj) temp=m; m=j; j=temp; a=func(m,j); printf(最大公约数为: %dn,a); printf(最小公倍数为: %dn,m*j/a);实验三 选择结构程序设计【目的与要求】 1.正确使用关系表达式和逻辑表达式表达条件。2.学习分支语句if和switch的使用方法。3.进一步熟悉VC6.0集成环境的使用方法,学习VC6.0环境提供的调试工具。【内容与过程】 1 设计下列算法,用NS流程图表示(写在纸上),试根据流程图编写程序:判断一个整数n能否被3和5整除(源程序名:yourid_6.c)。1题:/*yourid_6.c*/#includeint main()int i=0,a;printf(n请输入一个数:n);scanf(%d,&a);if(a%3=0&a%5=0)printf(yes is %dn,a);else printf(no is not ture %dn,i);return 0; 2 调试下列程序,使之具有如下功能:输入a、b、c三个整数,求最小值。写出调试过程。(源程序名:yourid_7.c)2题:main() int a,b,c;scanf(%d%d%d,a,b,c);if(ab)&(ac)if(bc)printf(min=%dn,b);elseprintf(min=%dn,c);if(ab)&(ac)printf(min=%dn,a);程序中包含有一些错误,按下述步骤进行调试。3. 编写程序,求解下列分段函数:(源程序名:yourid_8.c) 具体要求如下: 用if语句实现分支。自变量x与函数值均采用单精度类型。 自变量x值从键盘输入,且输入前要有提示信息。 数据的输出格式采用以下形式: X=输入值,f(x)=计算值 分别以-11,-5,-3.5,-1,0,1,1.6,10,11,100为自变量,运行该程序记录运行结果。3题/*yourid_8.c*/#includefloat main()float y,x,c;printf(n请输入一个数:n);scanf(%f,&x);if (-5x0)y=x;printf(%fn,y);if(x=0)y=x-1;printf(%fn,y);if(0x=x|x=10)y=100;printf(%fn,y);return 0;4编程,将一个百分制成绩转换成等级制成绩,具体要求如下:(源程序名:yourid_9.c) 百分制与等级制的对应关系如下表:百分制 90-100 80-89 70-79 60-69 60 等级制 优 良 中 差 劣 用switch语句实现该功能 用键盘输入百分制成绩,输入前要有提示信息,对于不合理的数据应输出错误信息。 输出结果应包含百分制成绩和成绩等级。 分别输入成绩-10,30,60,68,75,83,95,102,查看记录运行结果。4题:/*yourid_9.c*/#includeint main()int grade;printf(n请输入一个数分数:n);scanf(%d,&grade);switch(grade/10)case 9:printf(优n);break;case 8:printf(良n);break;case 7:printf(中n);break;case 6:printf(差n);break;default:printf(劣n);break;return 0;【分析与总结】 1.实现选择结构程序设计的方法有哪几种?各有什么特点?适用条件是什么:2.如何设置选择结构中的判断条件?它的程序设计中的意义何在? 1.写两个函数,分别求两个整数的最大的公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个整数由键盘输入。(源程序名:yourid_16.c)1题:/*yourid_16.c:*/#includeint func(int a,int b) int temp; while(b!=0) temp=a%b; a=b; b=temp; return a;void main() int a,m,j,temp; printf(n请输入两个数:n); scanf(%d%d,&m,&j); if(m1)2题:/*yourid_17.c:*/#include #include #includefloat p(int n,int x) if(n=0) return(1); else if(n=1) return(x); else return(2*n-1)*x*p(n-1),x)-(n-1)*p(n-2),x)/n);void main() int x,n; printf(n请输入n和x:n); scanf(%d,%d,&n,&x); printf(n=%d,x=%dn,n,x); printf(P%d(%d)=%6.2fn,n,x,p(n,x);3. 请到银行查出一年定期存款的利率和 5年定期存款的利率。假定现在要存入100元钱,存款到期后立即将利息与本金一起再次存入。请写出程序,计算按每次存一年和按照每次存 5年,总共存 50年后两种存款方式的得款总额。对两种情况都每隔 5年输出一次当时的总金额。(源程序名:yourid_18.c)3题:/*yourid_18.c:*/#includedouble f1(double n, int year )int i;double t,m ,x=0.035; for(i=1;i=year;i+)t=n,n*=x,n=(t+n);m=n; return(m);double g1(double n, int year )int i,j;double t,m, k=5.0,x=0.055;j=(year/5); for(i=1;i=j;i+)t=n,n*=(k*x),n=(t+n);m=n; return(m);int main(void)double money,y;int year,b; printf(请存钱的金额及年限:n); scanf(%d %d,&money,&year); printf(请输入存钱的方法1或2:n); scanf(%d,&b);if(b=1) y=f1(money,year);else y=g1(money,year);printf(把%d元存入银行%d年后所得的总额为:%fn,money,year,y); 4题:/*递归函数*/#includeint main()int i;float j;printf(n请输入一个数: );scanf(%d,&i);if(i=0) printf(n=0,date error!);else j=k(i);printf(nk(%d)=%fn,i,j);return 0;float k(n)int n;float m;if(n=1)m=1.0;else if(n%2=0)m=k(n-1)*2;else m=k(n-1)*3;return(m);5题:/*求a与b值交换*/#includeint exct(x,y)int x,y;int t;printf(x=%d,y=%dn,x,y);t=x;x=y;y=t;printf(x=%d,y=%dn,x,y);return 0;int main(void)int a,b;scanf(%d %d,&a,&b);printf(a=%d,b=%dn,a,b);exct(a,b);printf(a=%d,b=%dn,a,b);return 0;6题:/*求排列组合*/#includeint f(int a)long int i,s;for(i=1,s=1;i=a;i+)s*=i;return(s);int main(void)long int n,m,y;printf(请输入排列组合的n和m:n);scanf(%d %d,&n,&m);for(;nm,请重新输入排列组合的n和m:n);scanf(%d %d,&n,&m);y=f(n)/(f(n-m)*f(m);printf(该排列组合的值为:%dn,y);return 0;实验七 数组【目的与要求】 1掌握数组的定义、赋值和输入输出的方法。2学习用数组实现相关的算法(如排序、求最大和最小值、对有序数组的插入等)。【内容与过程】 1、有一个一维数组,在内放入10个学生的成绩, 写一个函数, 统计不及格的人数。(源程序以yourid7_1.c存盘)(要求用数组名作为实参)1题:/*yourid7_1.c:*/#include main() int i,j; int scores10; printf(请输入学生的成绩:n); for(i=1;i10;i+) scanf(%3d,&scoresi); printf(不及格的分数有:n); for(i=1,j=0;i10;i+)if(scoresi60) j=(j+1),printf(%3d,scoresi); printf(n不及格的共有%d人n,j);2.求矩阵a23的转置矩阵b32,编写程序。(源程序以yourid7_2.c存盘)a=b= 2题:#includevoid main()int a23=1,2,3,4,5,6; int b32,i,j;printf(array a:n);for (i=0;i=1;i+)for (j=0;j=2;j+) printf(%5d,aij);bji=aij;printf(n);printf(array b:n);for (i=0;i=2;i+)for (j=0;j=1;j+)printf(%5d,bij);printf(n);4.编写一个多科学生成绩处理程序,具体要求如下:(源程序以yourid7_4.c存盘) 学生数和科目数均由键盘输入。 学生成绩定义成二维数组进行处理,并由键盘按单科成绩逐个输入。 要求能统计出单科平均、个人平均、单科成绩等级百分比和个人名次。 数据以二维表格形式输出,输出内容有表头(提示信息)、表体(学号、单科成绩、个人平均、名次)和表尾(单科平均、等级百分比)。4题:/*yourid_18.c:*/#include int main() int i,s; int a; int b; for(s=10;s=0;s-) for(i=0;is;i+) if(i=1|i=s)ai=1; else ai=bi-1+bi; bi=ai; printf(%3d,ai); printf(n); return 0;/*yourid_18.c:*/#include int main() int i,s,j; int a10; int b10; for(s=0;s=10;s+) for(i=0;is;i+) if(s=1)ai=i; if(s=2) print( ); if(i=1|i=s)ai=1; else j=i-1;ai=bj+bi; bi=ai; printf(%3d,ai); printf(n); return 0;5.输入以下的杨辉三角形(要求输出10行)11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1. . . . . 5题:#include int main(void) char s1010; int i,j,n; scanf(%d,&n); for(i=0;i=n;i+) for(j=0;j=i;j+) if(j=0|j=i) sij=1; else sij=si-1j-1+si-1j; printf( %3d,sij); printf(n); 6.输出“魔方阵”。所谓魔方阵是指这样的方阵,它的每一行,每一列和对角线之和均相等。6题:#include #define M 256#define N 256void main(void) int aMN,i,j,k,n; printf(请输入奇数阶数:); scanf(%d,&n); for(i=1;i=n;i+) for(j=1;j=n;j+) aij=0; j=n/2+1; a1j=1; for(k=2;k=n*n;k+) i=i-1; j=j+1; if(in) i=i+2; j=j-1; else if(in) j=1; if(aij=0) aij=k; else i=i+2; j=j-1; aij=k; for(i=1;i=n;i+) for(j=1;j=n;j+) printf(%dt,aij); printf(n); getch();7.输入一行文字,找出其中大写字母,小写字母,空格,数字及其它字符各有多少。实验八 指针【目的与要求】 1. 掌握指针的概念及定义方法,掌握地址、指针和指针变量之间的区别与联系。2掌握指针变量与数组的关系,掌握如何使用指针来处理与数组相关的问题。3掌握如何使用指针来处理与字符串有关的问题。4掌握如何使用指向函数的指针变量。【内容与过程】 1. 编程,实现三个实数(x,y,z)的升序排序。要求使用指针来实现, 源程序以yourid_18.c存盘。1题:/*yourid_18.c*/#includeint main(void)int a,b,c;int *pa=&a,*pb=&b,*pc=&c,*pt;printf(请输入三个数:n);scanf(%d%d%d,&a,&b,&c);printf(你输入的数是:%d %d %dn,a,b,c);if(*pa*pb)pt=pa;pa=pb;pa=pt;if(*pa*pc)pt=pa;pa=pc;pc=pt;if(*pb*pc)pt=pb;pb=pc;pc=pt;printf(升序排列后的三个数为:%d %d %d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年文科高考试卷题库及答案
- 2025年债务转移及资产重组专项服务协议书
- 2025版智能办公自动化计算机软件服务合同
- 2025市场调研的委托合同书
- 2025年主治医师公共卫生基础知识考试试题(附答案)
- 2025年食品安全管理人员及食品安全法知识培训题库附含答案
- 2025年四川政府采购评审专家测试练习题(附答案)
- 2025年艾梅乙母婴阻断项目培训试题(附答案)
- 2025建筑工程安全教育培训责任协议
- 2025年全国丙型肝炎防治及消除丙肝行动培训班知识问卷
- 人教部编版道德与法治五年级上册全册教案
- 发挥智库作用
- 《小王子》读书分享成品课件
- 中国消化内镜诊疗镇静麻醉的专家共识
- 医疗废物管理分类及处理
- 劳动教育实践活动设计 课件 主题3、4 劳动最伟大、劳动最美丽
- 陕西省西安市庆安高级中学2023-2024学年高一上学期第一次月考化学试题(解析版)
- 高血压老年人用药安全指导
- 点检定修制的概要
- 商标肖像权使用授权书(通用)
- 第4章-信息可视化设计的应用与展望
评论
0/150
提交评论