例题:青歌赛打分程序。去掉两个最高分,去掉两个最低分,再算平均分。主要学习数组和冒泡排序,什么情况下要定义数组

Console.Write("请输入评委人数:");//输入人数

int renshu = Convert.ToInt32(Console.ReadLine());//人数代入

int[] fenshu = new int[renshu];//定义一个分数的数组,长度为人数

if (renshu >= 5)//去掉连个最高分,去掉两个最低分,所以至少五个人

{

for (int i = 0; i < renshu; i++)

{

Console.Write("请输入第" + (i + 1) + "个评委打的分数:");

fenshu[i] = Convert.ToInt32(Console.ReadLine());

}

for (int i = 0; i < renshu; i++)

{

for (int j = i; j < renshu - 1; j++)//冒泡排序,按分数从高到低排列

{

if (fenshu[i] < fenshu[j + 1])

{

int zhong = 0;

zhong = fenshu[i];

fenshu[i] = fenshu[j + 1];

fenshu[j + 1] = zhong;

}

}

}

int he = 0;//计算总分,初始值为0

for (int i = 0; i < renshu; i++)

{

he += fenshu[i];//循环计算总分

}

double pjf = 0;//初始值为0

pjf = (he - fenshu[0] - fenshu[1] - fenshu[renshu - 1] - fenshu[renshu - 2]) / (renshu - 4);                 //计算平均分。fenshu[renshu - 1] , fenshu[renshu - 2]),这两个分别代表最低分,和倒数第二个最低分,可能不好理解。在上一步冒泡循环中,已经将分数排好。renshu代表下标的的长度,减一就是下标的最后一个位置,就是最低分

Console.WriteLine("去掉两个最高分" + fenshu[0] + "," + fenshu[1] + ",去掉两个最低分" + fenshu[renshu - 1] + "," + fenshu[renshu - 2] +                     "选手最后得分为" + pjf);

}

else

{

Console.WriteLine("请输入至少五个人数");

}

Console.ReadLine();

时间: 2024-12-28 01:42:51

例题:青歌赛打分程序。去掉两个最高分,去掉两个最低分,再算平均分。主要学习数组和冒泡排序,什么情况下要定义数组的相关文章

C# 7 函数 青歌赛打分 天气预报

函数: 数据类型--变量常量--运算符表达式--语句(顺序,分支,循环)--数组--函数 程序里的函数:能完成一个相对独立功的代码块. 数学里的函数:高度抽象. 函数四要素:函数名,输入,输出,加工 函数定义: [static] 返回类型 函数名(输入参数列表) { //函数体——加工 } 函数调用: 函数名(参数); ——适合于调用无返回值的函数 数据类型 变量 = 函数名(参数); ——适合于调用有返回值的函数. 今天要掌握的东西: 1.函数是个什么东西? 2.能体会到函数的好处:可重用,可

函数 青歌赛打分

namespace 函数__青歌赛打分{    class Program    {        public int[] Array(int[] a)   //排序        {            int n = a.Length;            for (int i = 1; i <= a.Length; i++)            {                for (int j = 1; j <= a.Length-i; j++)              

评委打分问题---去掉两个最高分,两个最低分,求平均分

//评委打分 去掉两个最高分 去掉两个最低分 求平均数 int []defen={78,79,80,83,89,99,90,76,88,98}; for(int a=0;a<defen.length;a++) { System.out.print(defen[a]+"\t"); } System.out.println();//第一步,初始化 for(int b=1;b<defen.length-1;b++) { for(int a=0;a<defen.length-

去掉两个最高分、去掉两个最低分,求平均分

static void Main47求平均分(string[] args) { //去掉两个最高分,去掉两个最低分,求平均分 Console.WriteLine("请输入分数的个数:"); int a = Convert.ToInt32(Console.ReadLine()); int [] fs = new int [a]; if (a < 5) { Console.WriteLine("输入的分数至少为5个!"); } else { for (int i

java练习题:输出100以内与7有关的数、百马百担、打分(去掉最高、最低分)、二分法查找数据

1.输出100以内与7有关的数 注: 这些数分为三类:(1)7的倍数,(2)个位数字是7的数,(3)十位数字是7的数 int i=1; System.out.println("输出100以内与7有关的数:"); for(i=1;i<=100;i++){ if(i%10==7 | i%7==0|i/10==7 ){//符合条件的三类数 System.out.println(i); } else{ } 2.百马百担 注: 有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担

数组、冒泡排序、打分(例题)

数组的定义:内存中,连续存储同一类数据的一块空间. 定义数组: int a[]=new int[数组长度]; 例: int a[]= new int[5]; 也可以写成: int []a=new int[数组长度]; 例: int []a=new int[5]; 赋值: a[下标]=值: 例: a[0]=10; 取值: a[下标] 例: 将值打印出来: System.out.print(a[0]); 冒泡排序: int []a=new int[]{15,30,28,16,37}; //定义一个整

[转] Java程序员学C#基本语法两个小时搞定(对比学习)

Java程序员学C#基本语法两个小时搞定(对比学习) 对于学习一门新的语言,关键是学习新语言和以前掌握的语言的区别,但是也不要让以前语言的东西,固定了自己的思维模式,多看一下新的语言的编程思想. 1.引包 using System;java用import2.构造函数和java语法相同3.析构函数  变量和类的对象都有生命周期,生命周期结束,这些变量和对象就要被撤销.  类的对象被撤销时,将自动调用析构函数.一些善后工作可放在析构函数中完成.  析构函数的名字为~类名,无返回类型,也无参数.Per

习题 1.5 请参照本章例题,编写一个C程序,输出以下信息:*****Very good!*****

习题1.5 请参照本章例题,编写一个C程序,输出以下信息: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Very good! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 方法1:(直接用输出函数) #include <stdio.h> int main() { printf("* * * * * * * * * * * * * * *

程序员面试题目总结--数组(三)【旋转数组的最小数字、旋转数组中查找指定数、两个排序数组所有元素中间值、数组中重复次数最多的数、数组中出现次数超过一半的数】

转!http://blog.csdn.net/dabusideqiang/article/details/38271661 11.求旋转数组的最小数字 题目:输入一个排好序的数组的一个旋转,输出旋转数组的最小元素. 分析:数组的旋转:把一个数组最开始的若干个元素搬到数组的末尾.例如数组{3, 4, 5, 1, 2}为{1, 2, 3, 4, 5}的一个旋转,该数组的最小值为1.这道题最直观的解法并不难.从头到尾遍历数组一次,就能找出最小的元素,时间复杂度显然是O(N).但这个思路没有利用输入数组