欢迎来到天天文库
浏览记录
ID:11125518
大小:70.36 KB
页数:13页
时间:2018-07-10
《课程设计报告——统计数字》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、课程设计报告——统计数字【问题描述】某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。【设计需求及分析】(1)用一维数组存储调查得到的n个自然数,原始数据保存在文件count.in,第一行输入自然数个数,2--n+1输入自然数。结果保存在count.out中。(2)用冒泡法对n个自然数进行排序,分别统计不同的自然数个数。【设计功能的实现】#include#includevoidmain(){
2、floata[100],t;inti,n,j,sum;freopen("count.in.txt","r",stdin);//原始数据保存在count.in中freopen("count.out.txt","w",stdout);//输出结果保存在count.out中scanf("%d",&n);for(i=0;ia[j]){t=a[i];a[i]=a[j];a[j]=t;}//对n个自然数进行排序sum=1;for(i=0,j
3、=1;j=n){printf("%f:%d",a[0],n);}else{for(i=0,j=1;j=1;i--)if(a[i]==a[i-1])sum++;else{printf("%f:%d",a[i],sum);break;}////统计不同自然数的出现次数}}【实例测设及运行结果】【心得体会】文本的存储和读取原
4、本是用指针来完成实现的,在实现的过程中遇到了不小的麻烦且用指针实现过于繁琐,故改用freopen("count.in.txt","r",stdin);freopen("count.out.txt","w",stdout);语句实现,使程序变的简单易懂。课程设计报告——谁拿了最多奖学金【问题描述】某校的惯例是在每学期的期末考试之后发放奖学金。发放的奖学金共有五种,获取的条件各自不同:1)院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得;2)五四奖学金,每人4000元,期末平均成绩高于85分(>85),并且班级评议
5、成绩高于80分(>80)的学生均可获得;3)成绩优秀奖,每人2000元,期末平均成绩高于90分(>90)的学生均可获得;4)西部奖学金,每人1000元,期末平均成绩高于85分(>85)的西部省份学生均可获得;5)班级贡献奖,每人850元,班级评议成绩高于80分(>80)的学生干部均可获得;只要符合条件就可以得奖,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。例如姚林的期末平均成绩是87分,班级评议成绩82分,同时他还是一位学生干部,那么他可以同时获得五四奖学金和班级贡献奖,奖金总数是4850元。【设计需求及分析】(1)定义结构体类型,用结构体申明一个结构体
6、数组用于存储学生信息。(2)在循环输入数据的同时,分别计算每个同学应得奖学金数和总的奖学金数分别存在sum数组中和add变量中。(3)申明变量max,依次与每个同学应得奖学金比较,存储获得奖学金最多学生姓名和奖学金数。【设计功能的实现】#include void main() { struct Student { char name[20]; int grade1; int grade2; char ganbu; char xibu; int title; }a[100];//定义结构体,同时申明一个结构
7、体数组用于存储学生信息。 int N; scanf("%d",&N); int i; int sum[100]={0}; int add=0; for(i=0;i80 && a[i].title>0) sum[i]+=8000;
此文档下载收益归作者所有