| 查看: 3074 | 回复: 6 | |||
[交流]
【求助】求将c语言改写为C++,求教高人啊!
|
|
#include #include #include #include #define N 3 struct student { char name[10]; char no[10]; char sex; int age; char bnote[100]; }; void print(bool menu)//打印基本信息 { if (!menu) { printf("学生基本信息录入 ,press 1\n"); } else { printf("学生基本信息显示 ,press 2\n"); printf("学生基本信息保存 ,press 3\n"); printf("学生基本信息删除 ,press 4\n"); printf("学生基本信息修改 ,press 5\n"); printf("学生基本信息查询 ,press 6\n"); } printf("退出学生信息系统 ,press 7\n"); } bool Check(char pas[6])//密码验证 { FILE *fp; char ch; char a[7]={" "}; int i = 0; if ((fp=fopen("c:\\1.txt","r"))==NULL) { printf("打开文件失败!\n"); exit(0); } ch=fgetc(fp); while (ch!=EOF&&i<6) { a = ch; ch=fgetc(fp); i++; } a[6] = '\0'; if (!strcmp(pas,a)) { return true; } else { printf("密码错误\n"); return false; } fclose(fp); } void GetInfo(struct student *arr,int n)//学生基本信息录入 { for (int i = 0;i printf("输入学生的基本信息:name no sex age bnote\n"); scanf("%s %s %c %d %s",arr.name,arr.no,&arr.sex,&arr.age,arr.bnote); } } void Display(struct student* arr,int n)//学生基本信息显示 { printf("学生信息: Name NO Sex age Note\n"); for (int i = 0;i printf("%15s%15s%15c%15d%15s\n",arr.name,arr.no,arr.sex,arr.age,arr.bnote); } } void Save(struct student* arr,int n)//学生基本信息保存,保存在c:\\student.txt { FILE * fp; fp= fopen("c:\\student.txt","w+"); if (fp == NULL) { printf("文件不存在!\n"); exit(0); } fwrite(arr,sizeof(struct student)*n,n,fp); fclose(fp); } void Modfiy(struct student* arr,int n)//学生基本信息修改 { char number[10]; bool flag=false; char pass[6]; printf("请输入密码:\n"); scanf("%s",pass); if (Check(pass)) { printf("修改学生信息:\n"); printf("请输入学号:\n"); scanf("%s",number); for (int i =0;i if (!strcmp(number,arr.no)) { printf("infor: name no sex age note\n"); printf("%12s%12s%12c%12d%12s\n",arr.name,arr.no, arr.sex,arr.age,arr.bnote); printf("please input information:\n"); scanf("%s%s%c%d%s",arr.name,arr.no,&arr.sex,&arr.age,arr.bnote); Save(arr,n); flag = true; } } if (flag == false) { printf("该学生不存在!:\n"); } } } void Delete(struct student* arr,int n)//学生基本信息删除 { char number[10]; bool flag=false; printf("Delete information:\n"); printf("please input the no:\n"); scanf("%s",number); for (int i =0;i if (!strcmp(number,arr.no)) { strcpy(arr.name," "); strcpy(arr.no," "); strcpy(arr.bnote," "); arr.sex = ' '; arr.age = 0; Save(arr,n); flag = true; } } if (flag == true) { printf("该学生不存在!:\n"); } } void Search(struct student* arr,int n)//学生基本信息查询 { int temp,i; bool flag=false; printf("---------------通过学号查询,press 1-------------\n"); printf("---------------通过姓名查询,press 2-----------\n"); printf("---------------通过性别查询,press 3------------\n"); printf("---------------通过年龄查询,press 4------------\n"); printf("---------------退出,press 5 ------------\n"); scanf("%d",&temp); switch (temp) { case 1://按照学号查询 { char num[10]; printf("请输入学号:\n"); scanf("%s",num); for ( i =0;i if (!strcmp(num,arr.no)) { printf("%12s%12s%12c%12d%12s\n",arr.name,arr.no, arr.sex,arr.age,arr.bnote); flag = true; } } if (!flag) { printf("该学生不存在.\n"); } } break; case 2://按照名字查询 { char num[10]; printf("please input name:\n"); scanf("%s",num); for ( i =0;i if (!strcmp(num,arr.name)) { printf("%12s%12s%12c%12d%12s",arr.name,arr.no, arr.sex,arr.age,arr.bnote); flag = true; } } if (!flag) { printf("该学生不存在.\n"); } } break; case 3://按照性别查询 { char ch; printf("请输入性别:\n"); //scanf("%c",&ch); ch = getch(); for ( i =0;i if (ch == arr.sex) { printf("%12s%12s%12c%12d%12s\n",arr.name,arr.no, arr.sex,arr.age,arr.bnote); flag = true; } } if (!flag) { printf("t该学生不存在.\n"); } } break; case 4://按照年龄查询 { char num_age; printf("请输入年龄:\n"); scanf("%d",&num_age); for ( i =0;i if (num_age == arr.age) { printf("%12s%12s%12c%12d%12s\n",arr.name,arr.no, arr.sex,arr.age,arr.bnote); flag = true; } } if (!flag) { printf("该学生不存在.\n"); } } break; default: break; } } void main() { struct student arr[N]; char ps[6]; bool flag =false; printf("请输入密码:\n"); scanf("%s",ps); flag = Check(ps); if (flag) { int select; print(false); scanf("%d",&select); while (0 { switch (select) { case 1: GetInfo(arr,N); print(true); break; case 2: Display(arr,N); print(true); break; case 3: Save(arr,N); print(true); break; case 4: Delete(arr,N); print(true); break; case 5: Modfiy(arr,N); print(true); break; case 6: Search(arr,N); print(true); break; default: break; } printf("请选择:\n"); scanf("%d",&select); } } } |
» 猜你喜欢
博士读完未来一定会好吗
已经有21人回复
导师想让我从独立一作变成了共一第一
已经有5人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有11人回复
读博
已经有4人回复
JMPT 期刊投稿流程
已经有4人回复
心脉受损
已经有5人回复
Springer期刊投稿求助
已经有4人回复
小论文投稿
已经有3人回复
Bioresource Technology期刊,第一次返修的时候被退回好几次了
已经有9人回复
申请2026年博士
已经有6人回复
» 本主题相关价值贴推荐,对您同样有帮助:
草稿
已经有13人回复
功能材料版最新修订版规,2015年10月1日起实施,请虫友阅读,发帖尽量避免违规!
已经有2人回复
【管理操作】检索知识版版主评帖指南2015(试运行)
已经有3人回复
【迅雷】2011动画大片《丁丁历险记》DVD国语配音中字
已经有4人回复
【迅雷】2011动画大片《丁丁历险记》BD中英双字1280高清
已经有5人回复
lillian67890
至尊木虫 (文坛精英)
- 应助: 0 (幼儿园)
- 金币: 21092.7
- 散金: 1474
- 红花: 4
- 沙发: 6
- 帖子: 14354
- 在线: 210.6小时
- 虫号: 1102200
- 注册: 2010-09-18
- 专业: 细胞、亚细胞结构与功能
2楼2010-09-23 11:01:50
3楼2010-09-23 11:04:23
stephenliu89
银虫 (小有名气)
- 应助: 3 (幼儿园)
- 金币: 448.7
- 散金: 13
- 红花: 3
- 帖子: 183
- 在线: 25.7小时
- 虫号: 953342
- 注册: 2010-02-06
- 性别: GG
- 专业: 理论和计算化学

4楼2010-09-23 11:48:22

5楼2010-09-23 11:59:55
stephenliu89
银虫 (小有名气)
- 应助: 3 (幼儿园)
- 金币: 448.7
- 散金: 13
- 红花: 3
- 帖子: 183
- 在线: 25.7小时
- 虫号: 953342
- 注册: 2010-02-06
- 性别: GG
- 专业: 理论和计算化学

6楼2010-09-23 12:03:46

7楼2010-09-23 12:12:02













回复此楼
;