本題要求撰寫程式,計算學生們的平均成績,并統計及格(成績不低于60分)的人數。題目保證輸入與輸出均在整型范圍內。
輸出格式:
按照以下格式輸出:
average = 成績均值
count = 及格人數
輸入樣例:
5
77 54 92 73 60
我的代碼:
#include<stdio.h>
int main ()
{
int count,i,n;
double grade,total,average;
scanf ("%d",&n);
total = 0;
count = 0;
for (i=1;i<=n;i++)
{
scanf ("%lf",&grade);
total = total + grade;
if (grade >= 60)
{
count++;
average = total/n;
}
else if (0<grade && grade<60)
{
count = 0;
average = total/n;
}
else
{
average = 0;
count = 0;
}
}
printf ("average = %.1f\n",average);
printf ("count = %d\n",count);
return 0;
}
為什么輸入樣例的時候count=3啊?不是應該為4嗎?


uj5u.com熱心網友回復:
#include <stdio.h>
#include <iostream.h>
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
int count,i,n;
double grade,total,average;
total = 0;
count = 0;
printf("請輸入學生數:");
scanf ("%d",&n);
printf("請輸入%d個學生的成績:",n);
for (i=1;i<=n;i++)
{
scanf ("%lf",&grade);
total = total + grade;
if (grade >= 60)
{
count++;
}
}
average = total/n;
printf ("平均成績 = %.1f\n",average);
printf ("及格人數 = %d\n",count);
return 0;
}
uj5u.com熱心網友回復:
你這寫的是什么
uj5u.com熱心網友回復:
你的 count 為什么置 0 ?低于60的時候?uj5u.com熱心網友回復:
因為count是及格人數orz
uj5u.com熱心網友回復:
這個當n=0的時候好像不行
uj5u.com熱心網友回復:
if(n==0)return 0;
uj5u.com熱心網友回復:
n輸入完,加if判斷,修改如下:int count,i,n;
double grade,total,average;
total = 0;
count = 0;
printf("請輸入學生數:");
scanf ("%d",&n);
if(n>=1)
{
printf("請輸入%d個學生的成績:",n);
for (i=1;i<=n;i++)
{
scanf ("%lf",&grade);
total = total + grade;
if (grade >= 60)
{ count++;}
}
average = total/n;
printf ("平均成績average = %.1f\n",average);
printf ("及格人數count = %d\n",count);
}
else
{ printf("學生人數輸入錯誤!");}
return 0;
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/197563.html
標籤:C語言
上一篇:求助各位大神,麻煩看看我的程式有什么問題。拜托,萬分感謝
下一篇:求求大神們幫幫新手,嗚嗚嗚
