A. c語言編程 題目:輸入30個學生成績,求最高分,最低分和平均分(用數組存放數據)
#include<stdio。h>
intmain()
{
intmax,min,score;
doubleavg=0;
scanf("%d",&score);
max=min=score;
avg+=score;
for(inti=0;i<29;i++)
{
scanf("%d",&score);
if(score>max)max=score;
if(score<min)min=score;
avg+=score;
}
avg=avg/30;
printf("最高分max=%d,最低分min=%d,平均分avg=%lf ",max,min,avg);
return0;
}
文件輸入/輸出
在C語言中,輸入和輸出是經由標准庫中的一組函數來實現的。在ANSI C中,這些函數被定義在頭文件;中。
標准輸入/輸出
有三個標准輸入/輸出是標准I/O庫預先定義的:
stdin標准輸入
stdout標准輸出
stderr輸入輸出錯誤
以上內容參考:網路-c語言
B. c語言求平均分
以下的代碼求n個成績的平均分:
#include<stdio.h>
int main()
{ int i,n,x,s=0;
scanf("%d",&n);
for(i=0; i<n; i++)
{ scanf("%d",&x);
s+=x;
}
printf("%g ",(double)s/n);
return 0;
}
C. C語言求平均成績
#include<stdio.h>
intmain()
{
floata[5][50],s,av;
inti,j,stu,sub,count;
while(scanf("%d%d",&stu,&sub))
{
for(i=0;i<stu;i++)
for(j=0;j<sub;j++)
scanf("%f",&a[i][j]);//輸入信息
for(i=0;i<stu;i++)
{
for(j=0,s=0;j<sub;j++)
s+=a[i][j];
av=s/sub;
if(j!=stu-1)
printf("%.2f",s/sub);//這里應該是%f,下同
else
printf("%.2f",s/sub);
}
printf(" ");//這里要換行
for(i=0;i<sub;i++)
{
for(j=0,s=0;j<stu;j++)
s+=a[j][i];
if(j!=sub-1)
printf("%.2f",s/stu);
else
printf("%.2f",s/stu);
}
printf(" ");//這里要換行
for(i=0;i<stu;i++)
{
for(j=0,count=0;j<sub;j++)
if(a[i][j]>=av)
count++;
printf("%d",count);
}
printf(" ");//這里要換行
}
}
一個小錯誤,把%f寫成了%d,下次看到正常運行,還出現0就有經驗了。
還有你給出的代碼換行應該是不正確的。被輸入輸出示例誤導了。
D. C語言編程題:新建一個數組,存放一個五門課的考試成績,求平均成績和最高分,並輸出。
main()
{
int i;
float a[5],sum=0;average=1.0,max;
for(i=0;i<5;i++)
scanf("%f",&a[i]);
max=a[0];
for(i=0;i<5;i++)
if(max>a[i]) max=a[i];
sum+=a[i];
average=sum/5;
printf("平均值:%f,最高分:%f",average,max);
}
E. 關於C語言求總分和平均數的問題
{
inti,j;
floatsum,average,x,y,z;
printf("請輸入每個同學每門課程的成績: ");
for(i=1;i<=5;i++)
{
scanf("%f%f%f",&x,&y,&z);
sum=x+y+z;
average=sum/3.0;//要除3.0才能得到正確答案
printf("第%d位同學的總分為:%f,平均分為:%f ",i,sum,average);
}
}