當前位置:首頁 » 編程語言 » c語言40人平均成績
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言40人平均成績

發布時間: 2022-06-30 21:19:46

『壹』 用c語言編寫求平均成績

#include<stdio.h>
#include<stdlib.h>
#include<string.h>struct
record
{
char
xuehao[10];//學號
char
name[20];
//姓名
char
sex[3];//性別
int
ke1;//數學
int
ke2
;//語文
int
ke3;//英語
int
pin;
}stu[50];
int
k=1,n,m;void
readfile();
void
seek();
void
insert();
void
del();
void
save();
void
menu();

void
seek()
{int
i,j,item,flag;char
s1[20];printf("------------------\n");printf("1.按學號查詢\n");printf("2.退出本菜單\n");printf("------------------\n");while(1){
printf("請選擇子菜單編號:");scanf("%d",&item);flag=0;switch(item){case
1:printf("請輸入要查詢的學生的學號:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(stu[i].xuehao,s1)==0){
flag=1;printf("該學生學號,姓名,性別,數學,語文,英語
分別為:\n");printf("
%s
%s
%s
%d
%d
%d",stu[i].xuehao,stu[i].name,stu[i].sex,stu[i].ke1,stu[i].ke2,stu[i].ke3);}
if(flag==0)
printf("該學號不存在!\n");
break;
case
2:return;
default:printf("請在1-2之間選擇\n");
}
}
}
void
insert()
{
int
i=n,j,flag;
printf("請輸入待增加的學生數:\n");
scanf("%d",&m);
do
{
flag=1;
while(flag)
{
flag=0;
printf("請輸入第
%d
個學生的學號:\n",i+1);
scanf("%s",stu[i].xuehao);
for(j=0;j<i;j++)
if(strcmp(stu[i].xuehao,stu[j].xuehao)==0)
{
printf("已有該學號,請檢查後重新錄入!\n");
flag=1;
break;
}
}
printf("請輸入第
%d
個學生的姓名:",i+1);
scanf("%s",stu[i].name);
printf("\n請輸入第
%d
個學生的性別:",i+1);
scanf("%s",stu[i].sex);
printf("\n請輸入第
%d
個學生的數學成績:",i+1);
scanf("%d",&stu[i].ke1);
printf("\n請輸入第
%d
個學生的語文成績:",i+1);
scanf("%d",&stu[i].ke2);
printf("\n請輸入第
%d
個學生的英語成績:",i+1);
scanf("%d",&stu[i].ke3);if(flag==0)
{
i=i;
i++;
}
}while(i<n+m);
n+=m;
printf("錄入完畢!\n\n");
}void
del()
{
int
i,j,flag=0;
char
s1[20];
printf("請輸入要刪除學生的學號:\n");
scanf("%s",s1);
for(i=0;i<n;i++)
if(strcmp(stu[i].xuehao,s1)==0)
{
flag=1;
for(j=i;j<n-1;j++)
stu[j]=stu[j+1];
}
if(flag==0)
printf("該學號不存在!\n");
if(flag==1)
{
printf("刪除成功,顯示結果請選擇菜單6\n");
n--;
}
}
void
readfile()
{
char
buf[80],*p="student.dat";
FILE
*fp;
int
i=0;
if
((fp=fopen("student.dat","r"))==NULL)
{
printf("Open
file
%s
error!
Strike
any
key
to
exit!",p);
system("pause");
exit(0);
}
while(fscanf(fp,"%s%s%s%d%d%d",stu[i].xuehao,stu[i].name,
stu[i].sex,&stu[i].ke1,&stu[i].ke2,&stu[i].ke3)==6)
{
i++;
i=i;
}
fclose(fp);
n=i;
printf("錄入完畢!\n");
}void
save()
{
int
i,j,k,flag=0;
FILE
*fp;
fp=fopen("student.dat","w");
for(i=0;i<m;i++)
{
fprintf(fp,"%s%s%d%d%d",stu[i].xuehao,stu[i].name,stu[i].sex,&stu[i].ke1,
&stu[i].ke2,&stu[i].ke3);
fclose(fp);
printf("已儲存");
}
}
void
paixu()
{
int
i,j,k,t;
for(i=0;i<m;i++)
{

stu[i].pin=(stu[i].ke1+stu[i].ke2+stu[i].ke3)/3;
}
for(i=0;i<=m-2;i++)
{

k=i;

for(j=i+1;j<=m-1;j++)

if(stu[j].pin<stu[k].pin)

k=j;

if(k!=i)

{

t=stu[k].pin;

stu[k].pin=stu[i].pin;

stu[i].pin=t;

}
}
for(i=0;i<m;i++)
{printf("第
%d
個學生的姓名%s:",i+1,stu[i].name);
printf("\n第
%d
個學生的性別:%s",i+1,stu[i].sex);
printf("\n第
%d
個學生的數學成績:%d",i+1,stu[i].ke1);
printf("\n第
%d
個學生的語文成績:%d",i+1,stu[i].ke2);
printf("\n第
%d
個學生的英語成績:%d",i+1,stu[i].ke3);
printf("\n第
%d
個學生的平均成績:%d",i+1,stu[i].pin); }
}
void
menu()
{
int
nub;
printf("
\n\n學生成績管理系統\n\n");
printf("*****系統功能菜單*****\n");
printf("----------------------\n");
printf("1.輸入學生信息\n");
printf("2.查詢學生信息\n");
printf("3.按學號刪除信息\n");
printf("4.讀入學生信息\n");
printf("5.保存信息(要把修改保存到文件,退出程序前必須執行本項)\n");
printf("6.查詢學生平均成績信息\n");
printf("0.退出系統\n");
printf("----------------------\n");
printf("請選擇菜單編號:");
scanf("%d",&nub);
switch(nub)
{
case
1:insert();break;
case
2:seek();break;
case
3:del();break;
case
4:readfile();break;
case
5:save();break;
case
6:paixu();break;
case
0:k=0;break;
default:printf("請在0-6之間選擇\n");
}}
void
main()
{
while(k)
menu();
}
//平均數是排序後,輸出的,如果你不想直接輸入,那就不要對每個學生進行選擇排序了

『貳』 使用c語言編寫程序,分別統計出每個學生的平均成績。

#include<stdio.h>
#define N 5//這里設置班級人數
void main()
{
int i,sum=0,high=0,score;
float average;
printf("input everyone's score.\n");
for(i=0;i<N;i++)
{
scanf("%d",&score);
sum+=score;
if(score>high) high=score;
}
average=(float)sum/N;
printf("average=%f\n",average);
printf("highest=%d\n",high);
}
這個代碼很容易懂。你拿去改下。。我就不給你調試了。這個是實現某班平均成績然後輸出平均成績最高成績的,如果採納我的。我可以給你編一個很通用的

『叄』 用c語言的數組,求一個班的40名學生的平均成績

#include<stdio.h>

void main()
{
float sorce[40],f=0.0;

printf("請輸入40個學生的成績:\n");

for(int i=0;i<40;i++)
{
scanf("%f",&sorce[i]);

f+=sorce[i];
}

f/=40;

printf("40個學生的平均成績為:%g\n",f);

}

『肆』 c語言編程有一個班共40人本學期有5門課程要求1輸入每人的成績2計算每人的總分3輸出總分最高的學生成績

#include<stdio.h> main() { float a1[200],a2[40]; int i,j,sum; printf("input everystudent fiveobject grade"); for(i=0;i<200;i=i+5) { sum=a1[i]+a1[i+1]+a[i+2]+a[i+3]+a[i+4]; for(j=0;j<40;j++) a[j]=sum; } for(j=0;j<39;j++) for(i=;i<39-j;i++) 下

『伍』 C語言用for語句求50人平均成績

main()
{
float ave,sum=0,sco;
int i;
for(i=1;i<=50;i++)
{
printf("stu%d'score:",i);
scanf("%f",&sco);
sum+=sco;
printf("\n");
}
ave=sum/50;
printf("----------------");
printf("the average score:%f",ave);
getch();
}

----------------------------------------------
哇哇,輸完了一看,原來這么多高手哇

『陸』 用c語言求平均成績和優秀率

#include<stdio.h>
intmain()
{
inta,b,c;
doublesum=0;
doublescore[10];
intcounta=0,countb=0,countc=0;
inti;
for(i=0;i<10;i++)
{
sum=0;
scanf("%d",a);
if(a>=85)
counta++;
scanf("%d",b);
if(b>=85)
countb++;
scanf("%d",c);
if(c>=85)
countc++;
sum=a+b+c;
score[i]=sum/3.0;
}
for(i=0;i<10;i++)
{
printf("第%d人平均分為%f",i,score[i]);
}
printf("英語優秀率:%f",counta/10);
printf("c語言優秀率:%f",countb/10);
printf("計算機文化優秀率:%f",countc/10);
}

『柒』 C語言結構體的題目,40名學生,輸入學號,姓名,三門課成績和平均分編兩個函數實現以下功能,錯在哪

自己慢慢看吧,,,,沒源碼,怎麼讓別人幫你試

~

『捌』 c語言題目。(編寫程序輸入某班50個人某們課的成績,求平均成績。)

#include<stdio.h>

intmain()
{
inta[50];
inti;
doubles=0;
printf("請輸入50個人的成績: ");
for(i=0;i<50;i++)
{
scanf("%d",&a[i]);
s+=a[i];
}

printf("他們的平均成績是:%lf ",s/50.0);
return0;
}

『玖』 c語言 1、 用while循環求1-100的和 2、假設C語言考試結束,輸入40個學生的成績,求出平均成績(用for循環

第一題:
#include<stdio.h>
int main()
{
int i=1,sum=0;
while(i<=100)
{
sum=sum+i;
i++
}
printf("%d",sum);
return 0;
}
第二題:
#include<stdio.h>
int main()
{
int i,b,sum=0;float average;
printf("請輸入4名學生的成績\n");
for(i=1;i<=4;i++)
{
scanf("%d",&b);
printf("第名%d學生的成績是:%d\n",i,b);
sum=sum+b;
}
average=(float)sum/4;
printf("average=%f,sum=%d\n",average,sum);
return(0);
}
哈哈就這樣了,有問題在找我。記得頂一下啊。