#include<stdio.h>
void grade(int score[],int n);
void exchange(int a[],int b[],int k);
void change(int a[],int n,int add,int number);
int main()
{ int i,n;
int chinese[n],english[n],math[n];
grade(chinese,n);grade(english,n);grade(math,n);
printf("请输入学生人数\n");
scanf("%d",&n);
printf("请输入学生学号\n");
int num[n];
int j=1;
for(i=0;i<n;i++,j++){
printf("请输入第%d个学生的学号\n",j);
scanf("%d",&num[i]);
}
printf("请输入学生的成绩\n");
for(i=0,j=1;i<n;i++,j++){
printf("请输入第%d个学生的语文成绩:\n",j);
scanf("%d",&chinese[i]);
printf("请输入第%d个学生的英语成绩:\n",j);
scanf("%d",&english[i]);
printf("请输入第%d个学生的数学成绩:\n",j);
scanf("%d",&math[i]);
}
printf("请输入学生学号以查询该生成绩\n");
infor(i=0;i<n+add;i++){
printf("%d",fnum[i]);
}t number;
scanf("%d",&number);
for(i=0;i<n;i++){
if(number==num[i]){
printf("学号为%d的成绩如下:\n",num[i]);
printf("语文成绩为: %d\n",chinese[i]);
printf("英语成绩为: %d\n",english[i]);
printf("数学成绩为: %d\n",math[i]);
printf("三科平均分为%d\n",
(chinese[i]+english[i]+math[i])/3);
}
}
printf("若想要修改学生成绩请输入学号,否则输入0\n");
int k;
scanf("%d",&k);
int control=1;
if(k!=0){
while(control!=0){
for(i=0;i<n;i++){
if(k==num[i]){
printf("输入0以修改该生学号,否则输入任意数");
int detm1,detm2;
scanf("%d",&detm1);
if(detm1==0){
int change;
printf("输入修改后的学号");
scanf("%d",&change);
num[i]=change;}
printf("输入0以修改该生成绩,否则输入任意数");
scanf("%d",&detm2);
if(detm2==0){
printf("输入修改后的语文、英语、数学成绩\n");
int c,e,m;
scanf("%d%d%d",&c,&e,&m);
chinese[i]=c;english[i]=e;math[i]=m;
}
}
}
}
printf("继续修改请输入学号,否则输入0\n");
scanf("%d",&k);
if(k==0){
control=0;
}
}
printf("输入1以添加新的学生,否则输入0\n");
int x;
scanf("%d",&x);
if(x){
printf("请输入添加学生个数\n");
int add;
scanf("%d",&add);
int fnum[n+add],fchinese[n+add],fenglish[n+add]
,fmath[n+add];
exchange(num,fnum,n);
exchange(chinese,fchinese,n);
exchange(english,fenglish,n);
exchange(math,fmath,n);
printf("请输入新增同学学号和各科成绩\n");
int number1,chinese1,english1,math1;
for(i=n;i<n+add;i++);{
printf("请输入第%d位同学的学号\n",i);
scanf("%d",&number1);
change(fnum,n,add,number1);
printf("请输入第%d位同学的语、英、数成绩",i);
scanf("%d%d%d",&chinese1,&english1,&math1);
change(fchinese,n,add,chinese1);
change(fenglish,n,add,english1);
change(fmath,n,add,math1);
}
for(i=0;i<n+add;i++){
printf("%d",fnum[i]);}
}
return 0;
}
void grade(int score[],int n)
{
int i;
for(i=0;i<n;i++){
scanf("%d",&score[i]);}
}
void exchange(int a[],int b[],int k)
{
int i;
for(i=0;i<k;i++){
b[i]=a[i];
}
}
void change(int a[],int n,int add,int number)
{
int i;
for(i=n;i<n+add;i++){
a[i]=number;
}
}
