| 7 | 1/1 | 返回列表 |
| 查看: 3257 | 回復(fù): 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("學(xué)生基本信息錄入 ,press 1\n"); } else { printf("學(xué)生基本信息顯示 ,press 2\n"); printf("學(xué)生基本信息保存 ,press 3\n"); printf("學(xué)生基本信息刪除 ,press 4\n"); printf("學(xué)生基本信息修改 ,press 5\n"); printf("學(xué)生基本信息查詢 ,press 6\n"); } printf("退出學(xué)生信息系統(tǒng) ,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)//學(xué)生基本信息錄入 { for (int i = 0;i printf("輸入學(xué)生的基本信息: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)//學(xué)生基本信息顯示 { printf("學(xué)生信息: 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)//學(xué)生基本信息保存,保存在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)//學(xué)生基本信息修改 { char number[10]; bool flag=false; char pass[6]; printf("請輸入密碼:\n"); scanf("%s",pass); if (Check(pass)) { printf("修改學(xué)生信息:\n"); printf("請輸入學(xué)號:\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("該學(xué)生不存在!:\n"); } } } void Delete(struct student* arr,int n)//學(xué)生基本信息刪除 { 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("該學(xué)生不存在!:\n"); } } void Search(struct student* arr,int n)//學(xué)生基本信息查詢 { int temp,i; bool flag=false; printf("---------------通過學(xué)號查詢,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://按照學(xué)號查詢 { char num[10]; printf("請輸入學(xué)號:\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("該學(xué)生不存在.\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("該學(xué)生不存在.\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該學(xué)生不存在.\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("該學(xué)生不存在.\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); } } } |
至尊木蟲 (文壇精英)
銀蟲 (小有名氣)


銀蟲 (小有名氣)


| 7 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 一志愿北化085600材料專碩275|有文章專利|求調(diào)劑 +11 | Micky11223 2026-03-25 | 12/600 |
|
|---|---|---|---|---|
|
[考研] 一志愿鄭大材料工程290求調(diào)劑 +12 | Youth_ 2026-03-30 | 12/600 |
|
|
[考研] 083000環(huán)境科學(xué)與工程調(diào)劑,總分281 +4 | 橙子(勝意) 2026-03-30 | 4/200 |
|
|
[考研] 求調(diào)劑 +3 | 圖鑒212 2026-03-30 | 3/150 |
|
|
[有機交流]
10+3
|
kaobao456 2026-03-29 | 4/200 |
|
|
[考研] 303求調(diào)劑 +7 | DLkz1314. 2026-03-30 | 7/350 |
|
|
[考研] 277跪求調(diào)劑 +8 | 1915668 2026-03-27 | 12/600 |
|
|
[考研] 359求調(diào)劑 +5 | 王了個楠 2026-03-25 | 5/250 |
|
|
[考研] 291求調(diào)劑 +8 | HanBeiNingZC 2026-03-24 | 8/400 |
|
|
[考研] 本科211生物醫(yī)學(xué)工程085409求調(diào)劑339分 +3 | 里子木yy 2026-03-29 | 3/150 |
|
|
[考研] 求調(diào)劑 +10 | 張zz111 2026-03-27 | 11/550 |
|
|
[考研] 295求調(diào)劑 +5 | wei-5 2026-03-26 | 5/250 |
|
|
[考研] 305求調(diào)劑 +8 | RuiFairyrui 2026-03-28 | 8/400 |
|
|
[考研] 0703化學(xué)調(diào)劑,求導(dǎo)師收 +9 | 天天好運來上岸?/a> 2026-03-24 | 10/500 |
|
|
[考研] 一志愿華理,數(shù)一英一285求A區(qū)調(diào)劑 +8 | AZMK 2026-03-25 | 12/600 |
|
|
[考研] 求調(diào)劑推薦 材料 304 +15 | 荷包蛋hyj 2026-03-26 | 15/750 |
|
|
[有機交流]
高溫高壓反應(yīng)求助
10+4
|
chibby 2026-03-25 | 4/200 |
|
|
[考研] 308求調(diào)劑 +7 | 墨墨漠 2026-03-25 | 7/350 |
|
|
[考研] 調(diào)劑 +3 | 李嘉圖·S·路 2026-03-27 | 3/150 |
|
|
[考研] 281求調(diào)劑 +6 | Koxui 2026-03-24 | 7/350 |
|