C语言程序设计报告(3).doc_第1页
C语言程序设计报告(3).doc_第2页
C语言程序设计报告(3).doc_第3页
C语言程序设计报告(3).doc_第4页
C语言程序设计报告(3).doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、信息工程系课程设计报告书所属课程名称:C 语言程序设计专业班级 : 150311学生姓名:曾传凤学号: 15031102长春工业大学人文信息学院2016年9月9日课程设计成绩评定表项目得分平时表现及设计完成情况(占 40%)设计报告(占 30%)答辩情况(占 30%)成绩评定及等分数级:优: 90100 分;良: 80-89分; 等级中: 70-79分;及 格 : 60-69分;不及格: 60 分以下。指导教师姓名及职称:年月日第一部分1、 简单的数学计算。编写程序,计算任意输入的完成题目3 个数的和的平均值。(1) 截屏:(2)源代码:/1.简单的数学计算。编写程序,计算任意输入的3 个数的

2、和的平均值。#include stdio.hvoid main()int a=0,b=0,c=0,s=0;float v;printf(三个数 );scanf(%d%d%d,&a,&b,&c);printf(三个数的和为, 三个数的和的平均值为);s=a+b+c;v=s/3;printf(三个数的和为%d,三个数的和的平均值为%f,s,v);2. 题目:编写程序。 a 为 100, b 为 50,若 ab 成立将 a 赋予给 c,否则将 b 赋予给 c。同时,若 ab)c=a;d=b*b*b;elsec=b;d=a;printf(a=%d,b=%d,c=%d,d=%d,a,b,c,d);3.

3、题目:利用条件运算符的嵌套来完成此题:学习成绩=90 分的同学用 A 表示, 60-89 分之间的用 B 表示, 60 分以下的用 C 表示。(1)截屏:(2)源代码:#include stdio.hvoid main()int a;printf(请输入学生成绩:n );scanf(%d,&a);if(a=90)printf(An);else if(a60&a0)x1=(-b+sqrt(m)/(2*a);x2=(-b-sqrt(m)/(2*a);printf(方程有两个解,x1=%f, x2=%fn,x1,x2);else if(m=0)x1=x2=(-b+sqrt(m)/(2*a);prin

4、tf(方程有唯一解x=%fn,x1);elseprintf(方程无解 n);elseprintf(方程不成立 n);5 题目:输入任意一个四位数字,分别将个位,十位,百位,千位上的数字输出出来,并求所有位数的和。(1) 截屏:(2) 源代码#include stdio.hvoid main()int a,b;int x1,x2,x3,x4;printf(请输入四个数scanf(%d,&a);x1=a%10;x4=a/1000;a=a/10;x2=a%10;a=a/10;:n);x3=a%10;b=x1+x2+x3+x4;printf(printf(该四位数个位%d,十位 %d,百位 %d,千位

5、 %dn,x1,x2,x3,x4);该四位数和 :%dn,b);6 题目:从键盘输入一个字符,如果该字符为小写字母,则转换为大写字母输出;如果该字符为大写字母,则转换为小写字母输出;如果为其他字符,原样输出(1) 截屏( 2) 源代码#includestdio.hvoid main()int x,a,b;printf(请输入工资: );scanf(%d,&x);if(x1200&x2000&x=3500)a=3;elsea=4;switch(a)case 1:printf(不收税 n);break;case 2:b=(x-1200)*0.05;printf(收税 %dn,b);break;ca

6、se 3:b=(x-2000)*0.08;printf(收税 %dn,b);break;case 4:b=(x-3500)*0.2;printf(收税 %dn,b);break;7 题目:假定征税的办法如下: 收入在 1200 元以下(含 1200 元)的不征税; 收入在 1200 元以上 2000 元以下者,超过 1200 元的部分按 5%的税率收税;收入在 2000 元以上 3500 元以下者,超出 2000 元部分按 8%的税率收税;收入在 3500 元以上者, 3500 以上部分按 20%的税率收税,试编写按收入计算税费的程序(要求使用 switch 语句编写程序)。( 1) 截屏:(

7、 2) 源代码:#includestdio.hvoid main()int x,a,b;printf(请输入工资: );scanf(%d,&x);if(x1200&x2000&x=b)max=a;min=b;elsemax=b;min=a;if(max=c)if(min=c)zhon=min;min=c;elsezhon=c;elsezhon=max;max=c;printf(所输入数按从小到大排列为%d%d=0)printf(绝对值为 %dn,a);elsea=-a;printf(绝对值为 %dn,a);10 题目:输入一个任意数字,将这个数字的绝对值输出出来。( 1)截屏:( 3) 源代码

8、:#includestdio.hvoid main()int a,b;int x;printf(请输入被除数和除数:n);scanf(%d%d,&a,&b);if(b!=0)x=a/b;printf(商为 :%dn,x);elseprintf(除数不能为0n);11 题目:编程实现:任意输入某年某月某日,判断这一天是这一年的第几天。程序分析:以 3 月 5 日为例,应该先把前两个月的加起来,然后再加上5 天即本年的第几天,特殊情况,闰年且输入月份大于3 时需考虑多加一天。( 1)截屏:( 2)源代码:#includestdio.hvoid main()int n,y,r;int sum;pri

9、ntf(请输入年份: n);scanf(%d,&n);printf(请输入月份: n);scanf(%d,&y);printf(请输入第几天:n);scanf(%d,&r);if(n%4=0)&(n%100!=0)|(n%400=0)switch(y)case 1:sum=r;break;case 2:sum=31+r;break;case 3:sum=60+r;break;case 4:sum=91+r;break;case 5:sum=r+121;break;case 6:sum=152+r;break;case 7:sum=182+r;break;case 8:sum=213+r;bre

10、ak;case 9:sum=244+r;break;case 10:sum=274+r;break;case 11:sum=305+r;break;case 12:sum=355+r;break;elseswitch(y)case 1:sum=r;break;case 2:sum=31+r;break;case 3:sum=59+r;break;case 4:sum=90+r;break;case 5:sum=r+120;break;case 6:sum=151+r;break;case 7:sum=181+r;break;case 8:sum=212+r;break;case 9:sum=2

11、43+r;break;case 10:sum=273+r;break;case 11:sum=304+r;break;case 12:sum=354+r;break;printf(这是 %d年的第 %d天 n,n,sum);12 题目: 用整数 112 一次表示1 月12 月,由键盘输入一个月份数,输出对应的季节英文名称( 12 月 2 月为冬季; 3 月 5 月为春季; 6 月 8 月为夏季; 9 月 11 月为秋季) ,要求用 if 嵌套实现 。( 1) 截屏:( 2) 源代码:#includestdio.hvoid main()int year;printf(请任意输入一个月份:scan

12、f(%d,&year);if(year=3&year=6&year=8&year=11)printf(FALL);elseprintf(WINTER);13 题目: . 模拟银行提款机程序。首先要求用户输入密码,如果输入密码退出程序。如果在三次以内,可以选择用户的操作,操作1. 查询余额;3. 取款操作;4. 转账汇款;5. 退出超过三次则2. 存款操作;( 1)截屏:( 2)源代码:#includestdio.hvoid main()int n=0;int mima;/密码int c=0;/操作int ck,qk,zz,hl;/int ye=1000;/余额while(n=b)max=a;m

13、in=b;elsemax=b;min=a;for(n=min;n=max;n+)sum=n+sum;printf(%d,%d之间所有数的和为:%dn,a,b,sum);15 题目:打印出一个直角三角形( 1) 截屏:( 2) 源代码:#includestdio.hvoid main()int s,n,m;printf(请任意输入三角形的直角边长:n);scanf(%d,&s);for(n=0;ns;n+)for(m=0;m=n;m+)printf( * );printf(n);16 题目:打印出一个 九九乘法表 ( 1) 截屏:( 2) 源代码:#includestdio.hvoid main

14、()int n,m,x;for(n=1;n=9;n+)for(m=1;m=n;m+)x=n*m;printf( %d*%d=%d ,n,m,x);printf(n);17 题目:输出1-100 之间的所有素数( 1) 截屏( 2) 源代码#includestdio.h void main()int n,m,x;int flag=0;int s=0;for(n=1;n=100;n+)flag=1;for(m=2;mn;m+)x=n%m;if(x=0)flag=0;break;if(flag=1)s+;printf( %d ,n);if(s%5=0)printf(n);printf(n);18 题

15、目:模拟银行操作的流程( 1) 截屏( 2) 源代码#includestdio.hvoid main()int n=0;int mima;/密码int c=0;/操作int ck,qk,zz,hl;/int ye=1000;/余额while(n0)z+;else if(n=0)l+;elsef+;printf(正数有个 %d,负数有个 %d,零有个 %d。 n,z,f,l);20 题目:编写程序,计算1-100之间的所有偶数和。( 1) 截屏( 2) 源代码#includestdio.h void main()int n;int sum=0;for(n=1;n=100;n+)if(n%2=0)

16、sum=sum+n;printf(1到 100 之间所有偶数的和为%dn,sum);21题目 .用for循环语句编写计算n! 的程序( 1) 截屏( 2) 源代码#includestdio.hvoid main()int x;int n;int s=1;printf(请输入要计算的值:n);scanf(%d,&x);for(n=1;n=x;n+)s=s*n;printf(%d的阶乘为 :%dn,x,s);21 题目百钱百鸡问题:设公鸡每只 5 元,母鸡每只 3 元,小鸡每元 3 只,现用 100 元钱买 100 只鸡,编写程序,算出可以各买多少只鸡。( 1) 截屏( 2) 源代码#includ

17、estdio.hvoid main()int x,y,z;for(x=1;x=20;x+)for(y=1;y=33;y+)z=100-x-y;if(x+y+z=100)&(5*x+3*y+z/3=100)&(z%3=0)printf(可以买公鸡 %d只,母鸡%d 只,小鸡 %d 只n,x,y,z);22 题目古典问题:有一对兔子,从出生后第3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?( 1) 截屏( 2) 源代码#includestdio.hint fun(int n)if(n=1|n=2)return 1;elseretur

18、n fun(n-1)+fun(n-2);void main()int num;int x;int n;printf(请输入需要查看的月份:n);scanf(%d,&n);num=fun(n);printf(第 %d月有兔子 %d对 n,n,num);return 0;23 题目打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153 是一个“水仙花数”,因为153=1 的三次方 5 的三次方 3 的三次方。(1)截屏( 2)源代码#includestdio.hvoid main()int n;int a,b,c;printf(水仙花数有 :n);fo

19、r(n=100;n=999;n+)a=n/100;b=(n-a*100)/10;c=(n-a*100)%10;if(a*a*a+b*b*b+c*c*c=n)printf( %d ,n);24 题目 4. 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如找出 1000 以内的所有完数。(1)截屏( 2)源代码6=1 2 3. 编程#includestdio.hvoid main()int n;int sum=0;int m;for(n=2;n1000;n+)sum=0;for(m=1;mn;m+)if(n%m=0)sum=sum+m;if(sum=n)printf( %d ,n);25

20、 题目编写两个函数,求任意输入两个整数的最大公约数和最小公倍数。( 1) 截屏( 2) 源代码#includestdio.hint gy(int a,int b)int n;int x;for(n=1;n=b)max=a;min=b;elsemax=b;min=a;x=gy(max,min);gb(max,min,x);26 题目用递归的方法,计算正整数的阶乘n!。( 1) 截屏( 2) 源代码#includestdio.h int jc(int x)if(x=1)return x=1;elsereturnx=x*jc(x-1);void main()int x;int a;printf(请任

21、意输入一个正整数:n);scanf(%d,&x);a=jc(x);printf(%d的阶乘为%dn,x,a);27 题目有 5 个人坐在一起,问第五个人多少岁?他说比第第 3 个人大 2 岁。问第三个人,又说比第2 人大两岁。问第第一个人,他说是10 岁。请问第五个人多大?4 个人大 2 岁。问第 4 个人岁数,他说比2 个人,说比第一个人大两岁。最后问( 1) 截屏( 2) 源代码#includestdio.h int year(int a)int n; for(n=0;n4;n+)a=a+2;printf(第五个人的年龄是%dn,a);void main()int a;printf(请输入

22、第一个人的年龄:n);scanf(%d,&a);year(a);28 题目有一分数序列:2/1 , 3/2, 5/3 , 8/5, 13/8 , 21/13.求出这个数列的前20 项之和。( 1) 截屏( 2) 源代码#includestdio.h void sum()float b=1; int n;float sum=0; float a=1; float c; for(n=1;n=20;n+)c=a;a=a+b;b=c;sum=sum+(b/a);printf(%fn,sum);void main()sum();29 题目设计一个判断素数的函数,编写程序验证函数的功能( 1) 截屏( 2

23、) 源代码#includestdio.hint sushu(int a)int n;int flag;if(a!=1&a!=2)for(n=2;na;n+)flag=0;if(a%n=0)flag=0;break;elseflag=1;if(flag=1)printf(%d是素数 n,a);elseprintf(%d不是素数 n,a);elseprintf(%d是素数 n,a);27. 题目:调用自定义函数的形式编程。要求求出 s=n!+m!+k! 。其中 m, n,k 的值有键盘输入,并且他们的值必须大于 0.( 1)截屏:( 2)源代码:#includestdio.hint jc(int

24、a)int x=1;int n;for(n=1;n0)printf(方程有两个不同的实数根:);lg(a,b,x);else if(x=0)printf(方程只有一个根:);yg(a,b,x);elseprintf(方程无解! n);elseprintf(方程不成立!n);29. 题目:编写程序,用冒泡法对任意输入的10 个整数排序。( 1)截屏:( 2)源代码:#includestdio.hvoid main()int a10;int n,m;int z;for(n=0;n10;n+)printf(请输入第 %d个数 :n,n+1);scanf(%d,&an);for(n=0;n10;n+)

25、for(m=n+1;m=am)z=an;an=am;am=z;printf(从小到大排列为n);for(n=0;n10;n+)printf( %d ,an);30. 题目:设计一个判断素数的函数,编写程序验证函数的功能( 1)截屏:( 2)源代码:#includestdio.hint sushu(int a)int n;int flag;if(a!=1&a!=2)for(n=2;na;n+)flag=0;if(a%n=0)flag=0;break;elseflag=1;if(flag=1)printf(%d是素数 n,a);elseprintf(%d不是素数 n,a);elseprintf(%d是素数 n,a);void main()int a;printf(请输入你要判断的数:n);scanf(%d,&a);sushu(a);( 2)源代码:#includestdio.hvoid main()int a45;int m,n;int sum=0;float x;for(n=0;n4;n+)for(m=0;m5;m+)printf(请输入 a%d%d=,n,m);scanf(%d,&anm);printf(n);for(n=0;n4;n+)for(m=0;m5;m+)sum=sum+anm;31 题目:调用自定义函数的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论