该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
int main()
{
/*显示函数*/ void prin(char a[20][20][20],int n);
/*录入函数*/ void enter(char a[20][20][20],int n);
/*删除函数*/ void delete(char a[20][20][20],char b[20],int n);
/*修改函数*/ void alter(char a[20][20][20],int n);
/*排序函数*/ void rank(char a[20][20][20],char x,int n);
/*修改密码函数*/ void xiumi(char c[20],char d[20],char b[20]);
/*gets(e)为吸收字符串*/
int n,q,j=0,m;
char y,e[20];
char a[n][5][20],b[20],c[20],d[20]={"123456"};
for(;;)
{
printf("欢迎进入积分管理系统\n请输入密码:");
gets(c);
if(strcmp(d,c)==0)//比较密码
{
for(;;)//进入程序
{
printf("请选择操作类型\n1.积分信息录入\n2.积分信息输出\n3.积分信息查询\n4.积分信息修改\n5.积分信息删除\n6.密码修改\n0.退出积分管理系统\n");
scanf("%d",&q);//选择操作
getchar();
if(q==1)
{
printf("积分信息录入:\n录入几名学生:");
scanf("%d",&j);
getchar();
enter(a,j);
continue;
}
if(q==2)
{
printf("输出不会\n按任意--");
gets(e);
}
if(q==3)
{
if(j==0)
{
printf("没有信息\n按任意--");
gets(e);
continue;
}
printf("积分信息查询:\n");
for(;;)
{
if(j==1)
{
prin(a,j);
printf("按任意键--");
getchar();
break;
}
else
{
prin(a,j);
printf("积分排序选项:A-学降序B-学升序C-总降序D-总升序\n0-返回操作界面\n");
scanf("%c",&y);
if(y=='0')
{
break;
}
else if(y=='A'||y=='B'||y=='C'||y=='D')
{
rank(a,y,j);
}
else
{
printf("\n\n\n\n\n\n\n");
}
}
}
}
if(q==4)
{
if(j==0)
{
printf("没有信息\n按任意键--");
gets(e);
continue;
}
else
{
printf("积分信息修改:\n");
prin(a,j);
alter(a,j);
}
}
if(q==5)
{
if(j==0)
{
printf("没有信息\n按任意键--");
gets(e);
continue;
}
printf("积分信息删除界面:\n");
prin(a,j);
printf("请输入要删除的学号:");
gets(b);
delete(a,b,j);
continue;
}
if(q==6)
{
xiumi(c,d,b);
break;
}
if(q==0)
{
break;
}
}
}
else
{
printf("密码错误重新输入\n");
}
}
}
void enter(char a[20][20][20],int n)//录入函数
{
int i,m,u;
for(m=0;m
{
printf("\n请输入第%d名同学的信息\n",m+1);
for(i=0;i<5;i++)
{
if(i==0)
{printf("输入学号\n");}
if(i==1)
{printf("输入姓名\n");}
if(i==2)
{printf("输入日常积分\n");}
if(i==3)
{printf("输入考核积分\n");}
if(i==4)
{printf("输入总积分\n");}
gets(a[m][i]);
}
}
}
void prin(char a[20][20][20],int n)
{
int m,u,i;
printf("学号 姓名 日常积分 考核积分 总积分\n");
for(m=0;m
{
for(i=0;i<5;i++)
{
printf("%4s ",a[m][i]);
if(i!=0)
{
printf(" ");
}
else if(i==4)
{
printf(" ");
}
else if(i==0)
{
}
}
printf("\n");
}
}
void delete(char a[20][20][20],char b[20],int n)
{
int i,j;
for(i=0;i
{
if(strcmp(a[i],b)==0)
{
for(j=0;j<5;j++)
{
strcpy(a[i][j]," ");
}
}
}
}
void rank(char a[20][20][20],char x,int n)
{
int i,j,l;
int e[20];
char *p;
if(x=='A')
{
for(i=0;i
{
for(l=0;l
{
if(strcmp(a[l],a[l+1])<0)
{
for(j=0;j<5;j++)
{
p=*a[l][j];
strcpy(a[l][j],a[l+1][j]);
*a[l+1][j]=p;
}
}
}
}
}
if(x=='B')
{
for(i=0;i
{
for(l=0;l
{
if(strcmp(a[l],a[l+1])>0)
{
for(j=0;j<5;j++)
{
p=*a[l][j];
strcpy(a[l][j],a[l+1][j]);
*a[l+1][j]=p;
}
}
}
}
}
if(x=='C')
{
for(i=0;i
{
for(l=0;l
{
if(strcmp(a[l][4],a[l+1][4])<0)
{
for(j=0;j<5;j++)
{
p=*a[l][j];
strcpy(a[l][j],a[l+1][j]);
*a[l+1][j]=p;
}
}
}
}
}
if(x=='D')
{
for(i=0;i
{
for(l=0;l
{
if(strcmp(a[l][4],a[l+1][4])>0)
{
for(j=0;j<5;j++)
{
p=*a[l][j];
strcpy(a[l][j],a[l+1][j]);
*a[l+1][j]=p;
}
}
}
}
}
gets(e);
}
void xiumi(char c[20],char d[20],char b[20])
{
int i;
for(i=2;i>=0;i--)
{
printf("密码修改\n输入旧密码:");
gets(c);
if(strcmp(c,d)==0)
{
printf("正确\n");
for(;;);
{
printf("请输入新密码:");
gets(c);
printf("请确认新密码:");
gets(b);
if(strcmp(c,b)==0)
{
strcpy(d,c);
return 1;
}
else
{
printf("两次输入不一致\n");
}
}
}
else
{
printf("输入错误还有%d次机会",i);
}
}
}
void alter(char a[20][20][20],int n)
{
char b[20][20][20],e[20];
int i,m;