第38讲项目1——大奖赛计分(续一)

任务及要求

/*
*Copyright (c)2016,csdn学院
*All rights reserved.
*文件名称:lzz.c
*作    者:兰泽泽
*完成日期:2016年3月19日
*版 本 号:v1.0
*问题描述:在歌手大奖赛中,有10个评委为参赛的选手打分,分数为1~10分。请在大奖赛计分程序基础上,
           增加功能,若用户输入不在0-10范围内,则立即要求重输,直到正确。
*程序输入:
*程序输出:
*/
#include <stdio.h>  
int main()  
{  
    char ch;  
    int i,j;  
    float grade,max,min,average,sum;//分别用来表示选手的分数,最高分,最低分,平均分,总分  
    do  
    {  
        printf("Please input the player's grade:");  
        scanf("%f",&grade); 
        max=grade;  
        min=grade;  
        sum=grade;  
        for(i=1;i<10;i++)  
        {  
            scanf("%f",&grade);
            if(grade<0||grade>10) 
                continue;
            sum+=grade;  
            if(grade>max)//得到最高分  
                max=grade;  
            if(grade<min)  
                min=grade;//得到最低分  
  
        }  
        average=(sum-max-min)/8;  
        printf("max=%f min=%f average=%f\n",max,min,average);  
        printf(" stop/continue input(n,N/any):");  
        fflush(stdin);  
        ch=getchar();  
    }while(ch!='n'||ch!='N');  
    return 0;  
}

知识点总结

continue作用为结束本次循环,即跳过循环体重下面尚未执行的语句,接着进行下一次是否执行循环的判断;

break语句可用来从循环体内跳出循环体,结束循环,执行循环之后的语句。

你可能感兴趣的:(第38讲项目1——大奖赛计分(续一))