关于对学生成绩的统计系统,
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
#include "conio.h"
#define A 1
#define U printf("作者信息为:/n****刘庭****/n****男****/n****1989/11/02****/n****河南商专计算机网络技术一班09级****/n");
/* 函数实现对某个学生成绩的输出*/
void search(int (*p)[4])
{ int n,i;
int *w;
E: printf("请输人学生编号:/n");
scanf("%d",&n);
if(n<=0||n>=4)
{
printf("你的输入超过了范围,重新输入:/n");
goto E;
}
w=*p;
w=*(p+n-1);
/* (*)[4]表示一个指向一维数组的指针,那么其实其本身就是一个指针*/
for(i=0;i<4;i++)
printf("%4d",*(w+i));/* 这里可以用这个*(w+i)*/
}
/* 用函数实现对学生不及格成绩的输出*/
void found(int (*p)[4])
{ int j,i,r;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(*(*(p+i)+j)<60)
{ printf("/n学生%d 没有及格其成绩为/n",j+1);
for(r=0;r<4;r++)
printf("%3d",*(*(p+i)+r));
}
else
continue;/* 继续这个循环,*/
}
/* 输出某个学生的平均成绩的输出*/
int ave(int (*p)[4])
{ int n;
int ave2=0;
int j,sum=0;
E: printf("请输人学生编号:/n");
scanf("%d",&n);
if(n<=0||n>4)
{
printf("你的输入超过了范围,重新输入:/n");
goto E;
}
for(j=0;j<4;j++)
sum=sum+*(*(p+n)+j);
ave2=sum/4;
return ave2;
}
int ave2(int (*p)[4],int n)
{
int ave2=0;
int j,sum=0;
for(j=0;j<4;j++)
sum=sum+*(*(p+n)+j);
ave2=sum/4;
return ave2;
}
/* 对某个学生成绩进行判断是不是没及格*/
void pan(int (*p)[4])
{
int n;
E: printf("请输人学生编号:/n");
scanf("%d",&n);
if(n<=0||n>4)
{
printf("你的输入超过了范围,重新输入:/n");
goto E;
}
if(ave2(p,n)<80)
printf("学生%d没有及格,要重新考试;/n",n);
else
printf("次学生及格了:/n");
}
/* 首先输出这几个学生的成绩*/
void oupput(int (*p)[4])
{ int i,j;
for(i=0;i<4;i++)
{
printf("/n学生%d 的成绩是 ",i+1);
for(j=0;j<4;j++)
printf("%4d",*(*(p+i)+j));
}
}
main()
{
#if A
int s[][4]={67,90,89,88,98,55,86,73,88,96,20,72,70,85,94,99};
#else
int s[][4]={67,90,89,88,98,77,86,73,88,96,99,72,70,85,94,99};
#endif
int (*p)[4];/* 这个是验证的程序*/
int n;
p=s;
printf("**/n*******开放性学生成绩统计系统******/n");
printf("/n1****输出全部学生成绩/n2****请输入你要查找的学生的成绩/n3****查询那个学生没有及格/n4****输出某个学生的平均成绩/n5****输出全部不及格成绩/n6****结束/n7****查看作者信息");
while(1)
{
E: printf("/n请输人命令:/n");
scanf("%d",&n);
if(n<=0||n>7)
{
printf("你的输入超过了范围,重新输入:/n");
goto E;
}
switch(n)
{ case 1: oupput(p);break;
case 2: search(p);break;
case 3: pan(p);break;
case 4: printf("学生的平均成绩是%d",ave(p));break;
case 5: found(p);break;
case 6: printf("/n 结束了,恩,谢了使用了我的便得程序了:/n");exit(0);break;
case 7: U break;
default :break;
}
}
}
本文介绍了一个简单的学生成绩统计系统,该系统采用C语言实现,功能包括输出所有学生成绩、查询特定学生信息、计算平均分等。通过菜单驱动的方式,用户可以方便地进行各种操作。
1万+

被折叠的 条评论
为什么被折叠?



