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

下载本文档

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

文档简介

.信息工程系课程设计报告书所属课程名称: C语言程序设计专业班级: 150311学生姓名:曾传凤学 号:15031102 长春工业大学人文信息学院2016年 9月 9日课程设计成绩评定表项 目得 分平时表现及设计完成情况(占40%)设 计 报 告(占30%)答 辩 情 况(占30%)成绩评定及等级:优:90100分;良:80-89分;中:70-79分;及格:60-69分;不及格:60分以下。分数等级指导教师姓名及职称:年 月 日精选范本第一部分 完成题目1、 简单的数学计算。编写程序,计算任意输入的3个数的和的平均值。(1) 截屏: (2)源代码:/1.简单的数学计算。编写程序,计算任意输入的3个数的和的平均值。#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; else c=b; d=a; printf(a=%d,b=%d,c=%d,d=%d,a,b,c,d);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); printf(方程有唯一解x=%fn,x1);elseprintf(方程无解n);elseprintf(方程不成立n);5题目:输入任意一个四位数字,分别将个位,十位,百位,千位上的数字输出出来,并求所有位数的和。(1) 截屏:(2)源代码#include stdio.hvoid main() int a,b; int x1,x2,x3,x4; printf(请输入四个数:n); scanf(%d,&a); x1=a%10; x4=a/1000; a=a/10; x2=a%10; a=a/10; x3=a%10; b=x1+x2+x3+x4; printf(该四位数个位%d,十位%d,百位%d,千位%dn,x1,x2,x3,x4); printf(该四位数和:%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; case 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) 截屏:(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) 源代码:#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;printf(请输入年份: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;break;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=243+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(请任意输入一个月份:n);scanf(%d,&year);if(year=3&year=6&year=8&year=11)printf(FALL);elseprintf(WINTER);13题目:.模拟银行提款机程序。首先要求用户输入密码,如果输入密码 超过三次则退出程序。如果在三次以内,可以选择用户的操作,操作1.查询余额; 2.存款操作; 3.取款操作; 4.转账汇款; 5.退出(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;min=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()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.hvoid 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题目:模拟银行操作的流程(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.hvoid main()int n;int sum=0;for(n=1;n=100;n+)if(n%2=0)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) 源代码#includestdio.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;elsereturn 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);for(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.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=123.编程找出1000以内的所有完数。(1) 截屏(2) 源代码#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题目编写两个函数,求任意输入两个整数的最大公约数和最小公倍数。(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.hint jc(int x)if(x=1) return x=1;elsereturnx=x*jc(x-1);void main()int x;int a; printf(请任意输入一个正整数:n);scanf(%d,&x);a=jc(x);printf(%d的阶乘为%dn,x,a);27题目有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?(1) 截屏(2) 源代码#includestdio.hint year(int a)int n;for(n=0;n4;n+)a=a+2;printf(第五个人的年龄是%dn,a);void main()int a;printf(请输入第一个人的年龄:n);scanf(%d,&a);year(a);28题目有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13.求出这个数列的前20项之和。(1) 截屏(2) 源代码#includestdio.hvoid 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) 源代码#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; else flag=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 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+)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; else flag=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题目:调用自定义函数的形式编程。要求求出s=n!+m!+k!。其中m,n,k的值有键盘输入,并且他们的值必须大于0.(1)截屏:(2)源代码:#includestdio.hint jc(int 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);33题目:编写程序,用冒泡法对任意输入的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+)for(m=n+1;m=am)z=an; an=am; am=z;printf(从小到大排列为n);for(n=0;n10;n+)printf( %d ,an);34.题目:设有如下所示的一个4X5矩阵:2649-135-1387120410276-953编写程序,完成以下功能:所有元素的和;输出所有大于平均值的元素(1)截屏:(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;x=sum/20;printf(所有元素的和为:%dn,sum);printf(平均数为%fn,x);for(n=0;n4;n+)for(m=0;mx)printf( %d ,anm);35.题目:设计函数,在二维数组中产生如下形式的杨辉三角,并输出前10行。11112

温馨提示

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

评论

0/150

提交评论