c语言 歌星大奖赛为参赛选手打分

c语言 歌星大奖赛为参赛选手打分

ID:20114978

大小:32.50 KB

页数:4页

时间:2018-10-08

c语言  歌星大奖赛为参赛选手打分_第1页
c语言  歌星大奖赛为参赛选手打分_第2页
c语言  歌星大奖赛为参赛选手打分_第3页
c语言  歌星大奖赛为参赛选手打分_第4页
资源描述:

《c语言 歌星大奖赛为参赛选手打分》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、C语言歌星大奖赛为参赛的选手打分在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。*问题分析与算法设计问题分析与算法设计问题分析与算法设计问题分析与算法设计这个问题的算法十分简单,但是要注意在程序中判断最大、最小值的变量是如何赋值的。*程序说明与注释#includeintmain(){intinteger,i,max,min,sum;max=-32768;/*先假设当前的最大值max为C语言整型数的最小值*/min=32767;/*先假设当前的最小值m

2、in为C语言整型数的最大值*/sum=0;/*将求累加和变量的初值置为0*/for(i=1;i<=10;i++){printf("Inputnumber%d=",i);scanf("%d",&integer);/*输入评委的评分*/sum+=integer;/*计算总分*/if(integer>max)max=integer;/*通过比较筛选出其中的最高分*/if(integer

3、rintf("Averagescore:%d",(sum-max-min)/8);/*输出结果*/}*运行结果运行结果运行结果运行结果Inputnumber1=90Inputnumber2=91Inputnumber3=93Inputnumber4=94Inputnumber5=90Inputnumber6=99Inputnumber7=97Inputnumber8=92Inputnumber9=91Inputnumber10=95Canceledmaxscore:99Canceledminscore:90Averagescore:92案例七:问555555的约数中

4、最大的三位数是多少?*问题分析与算法设计问题分析与算法设计问题分析与算法设计问题分析与算法设计根据约数的定义,对于一个整数N,除去1和它自身外,凡能整除N的数即为N的约数。因此,最简单的方法是用2到N-1之间的所有数去除N,即可求出N的全部约数。本题只要求取约数中最大的三位数,则其取值范围可限制在100到999之间。*程序说明与注释#includeintmain(){longi;intj;printf("Pleaseinputnumber:");scanf("%ld",&i);for(j=999;j>=100;j–)if(i%j==0){printf(

5、"Themaxfactorwith3digitsin%ldis:%d,",i,j);break;}}*运行结果运行结果运行结果运行结果输入:555555输出:Themaxfactorwith3digitsin555555is:777案例八:求13的13次方的最后三位数*问题分析与算法设计问题分析与算法设计问题分析与算法设计问题分析与算法设计解本题最直接的方法是:将13累乘13次方截取最后三位即可。但是由于计算机所能表示的整数范围有限,用这种“正确”的算法不可能得到正确的结果。事实上,题目仅要求最后三位的值,完全没有必要求13的13次方的完整结果。研究乘法的规律发现:

6、乘积的最后三位的值只与乘数和被乘数的后三位有关,与乘数和被乘数的高位无关。利用这一规律,可以大大简化程序。*程序说明与注释#includeintmain(){inti,x,y,last=1;/*变量last保存求X的Y次方过程中的部分乘积的后三位*/printf("InputXandY(X**Y):");scanf("%d**%d",&x,&y);for(i=1;i<=y;i++)/*X自乘Y次*/last=last*x%1000;/*将last乘X后对1000取模,即求积的后三位*/printf("Thelast3digitsof%d**%dis:%

7、d",x,y,last%1000);/*打印结果*/}*运行结果运行结果运行结果运行结果InputXandY(X**Y):13**13Thelast3digitsof13**13is:253InputXandY(X**Y):13**20Thelast3digitsof13**20is:801案例九:100!的尾数有多少个零?*问题分析与算法设计问题分析与算法设计问题分析与算法设计问题分析与算法设计可以设想:先求出100!的值,然后数一下末尾有多少个零。事实上,与上题一样,由于计算机所能表示的整数范围有限,这是不可能的。为了解决这个问题

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。