求助改错求助改错求助改错求助改错求助改错求助改错求助改错求助

adslpsdnpptwcao 2019-12-10 11:03:19
#include <stdio.h>
#include <stdlib.h> //包含清屏函数system()
void Help(); //帮助菜单
int Luru(long int s[][3]); //通讯信息录入
void Shchu(long int s[][3],int n); //输出通讯录
void Paixu(long int s[][3],int n); //按学生学号排序
void Chaxun(long int s[][3],int n); //按学号查询学生通讯信息
int main()
{
int n=0; //学生人数
long int s[20][3]; //学号,手机号,宿舍
char order[10]; //存放键盘接收的命令

system("cls"); //清屏
Help(); //显示帮助菜单
printf("\n请输入命令= ");
while(1)
{
gets(order); //从键盘接收字符串,存入order字符数组
if(order[0]=='q'||order[0]=='Q') break; //当输入的字符为q或Q时退出
printf("\n");
switch(order[0]) //根据输入的字符判断下一步操作
{
case 'h': //显示帮助菜单
case 'H': Help(); break;
case 't': //通讯信息录入
case 'T': if(n!=0) puts("通讯信息已录入!");
else n=Luru(s);
break;
case 'l': //输出通讯录
case 'L': if(n==0) puts("通讯录为空! 请先使用命令 T 录入学生通讯信息。");
else Shchu(s,n);
break;
case 'p': //按学号由低到高排序
case 'P': if(n==0) puts("通讯录为空! 请先使用命令 T 录入学生通讯信息。");
else Paixu(s,n);
break;
case 's': //按学号查询学生通讯信息
case 'S': if(n==0) puts("通讯录为空! 请先使用命令 T 录入学生通讯信息。");
else Chaxun(s,n);
break;
case 'c': //清屏
case 'C': system("cls"); break;
default: puts("命令错误!");
}
printf("\n请输入命令= ");
}
}
void Help() //帮助菜单
{
puts(" **********************************************");
puts(" * 班级通讯录管理系统--帮助菜单 *");
puts(" **********************************************");
puts(" * H = 显示帮助菜单 *");
puts(" * T = 学生通讯信息录入 *");
puts(" * L = 输出通讯录 *");
puts(" * P = 按学号由低到高排序 *");
puts(" * S = 按学号查询学生通讯信息 *");
puts(" * C = 清屏 *");
puts(" * Q = 退出系统 *");
puts(" **********************************************");
puts(" * Copyright (C) 2019.12 *");
puts(" **********************************************");
}
int Luru(long int s[20][3]) //学生通讯信息录入
{
int i,j,n;
printf("请输入学生人数:\n");
scanf("%d",&n);
printf("请输入%d名学生的通讯信息:\n",n);
printf("学号\t手机号 \t宿舍号\n");
for(i=0;i<n;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&s[i][j]);
}
}

return(n); //将学生人数返回给主函数
}
void Shchu(long int s[][3],int n) //输出通讯录
{
int i,j;
printf("学生通讯信息如下:\n");
printf("学号\t手机号 \t宿舍号\n");
for(i=0;i<n;i++)
{
for(j=0;j<3;j++)
{
printf("%d\t",s[i][j]);
}
printf("\n");
}
}
void Paixu(long int s[][3],int n) //按学号由低到高排序
{
int i,j,m,c[20][3];
for(i=0;i<n;i++)
{
for(m=i;m<3;m++)
{
if(s[i][0]>s[m][0])
{
for(j=0;j<3;j++)
{
c[m][j]=s[m][j];
s[m][j]=s[i][j];
s[i][j]=c[m][j];
}
}
}

}
}
void Chaxun(long int s[][3],int n) //按学号查询学生通讯信息
{
int c,i,j;
printf("请输入要查询的学生学号:");
scanf("%d",&c);
printf("\n学号\t手机号 \t宿舍号\n");
for(i=0;i<20;i++)
{
if(c==s[i][0])
{
for(j=0;j<3;j++)
{
printf("%d\t",s[i][j]);
}
}
}
}
...全文
74 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复

64,647

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧