printf("(%d)%3d%f\n",i+1,a[i],average[i]);
printf("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n");
out();
}
print1()
{system("cls");
printf("★1.浏览学生信息★2.修改学生信息\n");
printf("★3.删除学生信息★4.查询学生成绩和排名\n");
printf("★5.查询每个学生的平均分★6.查询每门课程的平均分\n");
printf("★7.查询每门课程最高分★8.降序排列学生总分和平均分\n");
printf("★9.降序排列每门课程的分数★10.按课程名和分数段进行统计\n");
printf("请选择:
");
}
intqj=0;
main()
{intm,n,i;
long*p1,num[100];/*数组元素地址:
*(指针变量+行下标)+列下标*/
int(*p2)[100],score[100][100];
printf("\n●请输入学生总数:
");
scanf("%d",&n);
printf("\n○请输入课程总数:
");
scanf("%d",&m);
p1=num;
p2=score;
printf("\n★★现在请输入学号和成绩★★\n");
print2(m);
input(p1,p2,n,m);
while
(1)
{print1();
scanf("%d",&i);
if(i<0||i>10)printf(".....输入错误!
....");
else
switch(i)
{case1:
xianshi(p1,p2,n,m);break;
case2:
edit(p1,p2,n,m);break;
case4:
chaxun(p1,p2,n,m);break;
case5:
stu_average(p1,p2,n,m);break;
case6:
course_average(p2,n,m);break;
case7:
highestscore(p2,n,m);break;
case8:
score_jiangxu(p2,n,m);break;
case9:
course_jiangxu(p2,n,m);break;
case10:
tongji(p1,p2,n,m);break;
}
}
}
#include
#include
course_name(inti)
{switch(i)
{case1:
printf("VB");break;
case2:
printf("数学");break;
case3:
printf("C++");break;
case4:
printf("Java");break;
case5:
printf("法律");break;
case6:
printf(".Net");break;
case7:
printf("语文");break;
case8:
printf("体育");break;
case9:
printf("英语");break;
case10:
printf("C");break;
}
}
xianshi(long*p1,int(*p2)[100],intn,intm)
{inti,j;
printf("\n<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n");
printf("编号学号");
for(i=1;i<=m;i++)
{printf("");course_name(i);}
printf("\n");
for(i=0;i{printf("(%d)%4ld",i,*(p1+i));
for(j=0;jprintf("%3d",*(*(p2+i)+j));
printf("\n");
}
printf("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n");
out();
}
print2(intm)
{inti,j;
printf("-----------------------------------提示--------------------------------------\n");
for(i=1;i<=m;i++)
{printf("%d-->",i);
course_name(i);
}
printf("\n------------------------------------------------------------------------------\n");
}
out()
{printf("\n\n\n\n\n\n\n按任意键继续(退出请按Esc键).......");
if(getch()==27)exit
(1);
elseclrscr();
}
stu_zhongfen(int(*p2)[100],intn,intm)
{intsum,i,j;
for(i=0;i{sum=0;
for(j=0;jsum=sum+*(*(p2+i)+j);
*(*(p2+i)+m)=sum;
}
}
input(long*p1,int(*p2)[100],intn,intm)
{inti,j;
for(i=0;i{printf("\n□请输入第%d个学生的学号:
",i+1);
scanf("%ld",p1+i);
for(j=0;j{printf("\n■请输入第%d门课程的成绩:
",j+1);
scanf("%d",*(p2+i)+j);
}
}
printf("......输入完毕!
\n");
out();
}
edit(long*p1,int(*p2)[100],intn,intm)
{longxuehao;
intkecheng,fenshu,i,j;
while
(1)
{
printf("●请输入要修改成绩的学生的学号:
\n");
scanf("%ld",&xuehao);
for(i=0;i{if(*(p1+i)==xuehao)
break;
}
if(i>=n)printf("该学好不存在!
请从新输入!
\n");
elsebreak;
}
print2(m);
printf("\n▲请输入你要修改的课程编号\n");
scanf("%d",&kecheng);
printf("\n◆请输入修改后的分数:
");
scanf("%d",&fenshu);
*(*(p2+i)+kecheng-1)=fenshu;
printf("\n.......修改成功.......\n");
out();
}
/*delete(long*p1,int(*p2)[100],intn)
{longxuehao;
inti,j;
printf("\n请输入你要删除成绩的学生的学号:
");
scanf("%ld",&xuehao);
for(i=0;i{if(*(p1+i)==xuehao)
break;
}
for(j=i;j{*(p2+j)+0=*(p2+j+1)+0;
p1+j=p1+j+1;
}
printf("\n删除成功!
\n");
out();
}*/
chaxun(long*p1,int(*p2)[100],intn,intm)
{
longxuehao;
intcounter=1,j=0,i;
while
(1)
{
printf("\n●请输入要查询的学生的学号:
");
sc