- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.在“校园歌手大奖赛”中有10位评委为选手打分。某位选手的最终得分是去掉一个最高、去掉一个最低分后的平均分,编写程序实现这一功能。
#include stdio.h
#define N 10 /*评委人数*/
#define MAX 10 /*打分分数上限*/
#define MIN 0 /*打分分数下限*/
int main( )
{
float s[N]; /*存储10位评委的打分*/
float sum=0; /*sum用于存储10个分数之和*/
float aver; /*aver用于存储最终得分*/
float min= MAX, max= MIN;
int i; /*循环控制变量*/
for( i=0; iN; i++)
{
printf(请输入第[%d]个评委的打分:, i+1);
scanf(%f, s[i]);
sum += s[i];
if(mins[i]) min = s[i]; /*min得到最低分*/
if(maxs[i]) max = s[i]; /*max得到最高分*/
}
aver = (sum-max-min)/(N-2); /*计算除最高分和最低分的平均分*/
printf(该选手最终得分为:%.2f\n, aver);
return 0;
}
2.成绩分析是“成绩管理系统”的一个模块,包括统计各分数段人数及比例,计算平均分数、标准差等。编程实现成绩分析的以上功能。
#include stdio.h
#include math.h /*平方根函数sqrt()的头文件*/
#define N 10 /*人数*/
int main( )
{
int i; /*循环控制变量*/
float score[N] = {55,86,79,93,66,71,95,72,88,65}; /*准备数据*/
int s[5]={0}; /*数组s存放个分数段人数*/
float sum = 0, aver; /*sum存储总分,aver存储平均分*/
float var, stdev; /*var存储方差,stdev存储标准差*/
for(i=0;iN;i++)
{
sum+= score[i];
if(score[i]60) s[0]++;
if(score[i]=60 score[i]70) s[1]++;
if(score[i]=70 score[i]80) s[2]++;
if(score[i]=80 score[i]90) s[3]++;
if(score[i]=90 score[i]=100) s[4]++;
}
aver = sum/N;
var=0;
for(i=0;iN;i++)
var+=(aver-score[i])* (aver-score[i]);
var/=N-1; /*计算方差*/
stdev=sqrt(var); /*计算标准差*/
printf(总分:%f\n, sum);
printf(平均分:%.2f\n, aver);
printf(不及格人数:%d\n, s[0]);
printf(60~69人数:%d\n, s[1]);
printf(70~79人数:%d\n, s[2]);
printf(80~89人数:%d\n, s[3]);
printf(90~100人数:%d\n, s[4]);
printf(标准差:%f\n, stdev);
return 0;
}
3.利用数组存放斐波那契数列的前20项。
{
int i; /*循环控制变量*/
int F[N]={1,1}; /*数组F用于存储前N项数*/
printf(%d,%d,F[0], F[1]); /*先输出前两项*/
for(i=2;iN;i++) /*计算并输出后面各项*/
{
F[i]=F[i-2]+F[i-1];
printf(,%d,F[i]);
}
printf(\n);
return 0;
}
4.使用数组精确计算M/N(0MN=100)的值。如果M/N是无限循环小数,则计算并输出它的第一循环节,同时要求输出循环节的起止位置(小数位的序号)。循环节如果无限小数的小数点后,从某一位起向右进行到某一位止的一节数字循环出现,首尾衔接,称这种小数为循环小数,这一节数字称为循环节#includestdio.h
#define N 100 /*最大计算精度*/
int main()
{
int m, n; /*被除数和除数*/
int i, j; /*循环控制变量*/
int flag =
文档评论(0)