第七讲项目2.1——歌手大奖赛计分函数版
来源:互联网 发布:乌鲁木齐seo服务 编辑:程序博客网 时间:2024/04/30 06:25
问题描述
(1)在歌手大奖赛中,有n位评委为参赛的选手打分,分数为0~10分(运行时由人输入)。选手最后得分为:去掉一个最高分和一个最低分后其余分数的平均值。请编写一个程序,完成相关的功能。
要求利用一个函数void calScore(int n),对一位选手成绩的输入成绩、计算和显示实现,其中n为评委人数。这样,在main函数调用时,需要将输入的评委人数n作为实参。
程序代码
#include <stdio.h>/**csdn学院--2016级*目的:让代码见证成长(作为一个初学的菜鸟,如*大家有发现错误,欢迎指正!)*文件名称:Myfun120.c*作者:小臣小仁*完成日期:2017年3月15日*/void calScore(int n);int main(){ int num; printf("请输入评委人数:"); scanf("%d",&num); printf("请输入0~10分\n"); calScore(num); return 0;}void calScore(int n){ int i,j,k,l; float sum=0; float a[n];//分数存放数组 float rep; for(i=0;i<n;i++) { printf("第%d位评委给的分数为:",i+1); scanf("%f",&a[i]); printf("\n"); } for(j=0;j<n-1;j++) { for(k=0;k<n-j-1;k++) { if(a[k]>a[k+1]) { rep=a[k]; a[k]=a[k+1]; a[k+1]=rep; } } } for(l=1;l<n-1;l++) sum+=a[l]; printf("去掉一个最高分%.2f\n",a[n-1]); printf("去掉一个最低分%.2f\n",a[0]); printf("平均分为%.2f\n",sum/(n-2));}
输出结果
知识点总结
这题我通过数组的方式做的,可能算得上投机取巧;没按要求来,下面附上贺老师的程序代码供参考
#include<stdio.h>void calScore(int n);int main( ){ int n; //评委人数 printf("输入评委人数: "); scanf("%d", &n); calScore(n); return 0;}void calScore(int n)//参数n为评委人数{ int i; double ave, score, sum, max, min; //这几个变量涉及成绩,double是合理的 i=1; //i代表评委的编号,其实这个变量名起得不好 max=-1; //这儿有技巧,第1位评委给的成绩一定大于-1,max将变成第1个成绩 min=11; //同样和技巧,要学会这样“设圈套” sum=0; printf("请输入选手的成绩(0-10)\n"); do //至少有一位评委,用do循环 { printf("第 %d 位评委给分:", i); scanf("%lf", &score); sum+=score; if(max<score) max=score; if(min>score) min=score; i++; } while(i<=n); //下面开始计算 ave = (sum-max-min)/(n-2); printf("减去一个最高分: %.2f", max); printf(", 减去一个最低分: %.2f \n", min); printf("当前选手的最后得分是:%.3f \n", ave);}
心得体会
作为一个大学二的菜鸟,开始慢慢前进,多多少少感到有收获,由于水平有限,多多少少有错,望包涵
0 0
- 第七讲项目2.1——歌手大奖赛计分函数版
- 第七讲项目2.2——歌手大奖赛计分函数版
- 《C语言及程序设计》实践参考——歌手大奖赛计分函数版
- 第37讲项目4——大奖赛计分(2)
- 第三十七讲项目4.1——大奖赛计分
- 第三十七讲项目4.2——大奖赛计分多人版
- C语言提高-第8讲: 函数的声明、定义和调用(歌手大奖赛计分函数版)
- C++第11周项目5——歌手大奖赛计分
- 歌手大奖赛计分系列
- 歌手大奖赛计分系统
- 歌手大奖赛计分系列
- 第十周项目四—大奖赛计分
- 第11周项目5:歌手大奖赛计分系列
- 提高项目9-歌手大奖赛计分系列1
- 提高项目9.1-歌手大奖赛计分系列2
- 程序设计实训项目二 歌手大奖赛计分程序
- 课程设计—歌手大奖赛
- 第37讲项目4——大奖赛计分(1)
- 安大略理工大学【筆葉】一比一原版Copy
- linux防火墙配置
- Android Studio 如何打JAR包
- iBET Casino Adidas Yeezy 350 V2 Lucky Draw
- vi打开配置文件后如何关闭啊
- 第七讲项目2.1——歌手大奖赛计分函数版
- 理解 Python 装饰器看这一篇就够了
- Java中使用socket实现客户端与服务端交互
- netty4内部执行流程
- 字符串编码与Python 3编码
- Uploadify-上传教程
- 2017年3月15日留言 ——关于Java卡Applet系列csdn博文
- Linux环境下一些有用但不常见的命令(二)
- iOS崩溃日志搜集