修改程式範例: Ch2-1-2.c 為Ch2-1-2e.c
1.增加成績對調的功能
2.於選單增加”成績對調”選項
3.詢問欲對調成績的學生學號
4.將輸入的學生學號對應的成績執行對調
對調方式:temp=scores[std1];
scores[std1]=scores[std2];
scores[std2]=temp;
scores[std1]=scores[std2];
scores[std2]=temp;
/* 主程式 */ int { /* 學生成績陣列 */ int scores[11] = {0,76,85,90,67,59,79,82,95,91,65}; int num,num1; /* 學號 */ int grade; /* 成績 */ int i, choice; /* 選項 */ int temp; /* 暫時(對調) */ int doit = 1; /* 執行操作的主迴圈 */ while { printf("----選單----\n"); printf("1: 查詢成績\n"); printf("2: 修改成績\n"); printf("3: 顯示成績\n"); printf("4: 成績對調\n"); printf("5: 離開作業\n"); printf("請輸入選項( 1 到 5 ). ==> "); scanf("%d", &choice); if { printf("請輸入學生學號( 1 到 10 ). ==> "); scanf("%d", &num); /* 讀入學號 */ } switch( choice ) { case 1: /* 查詢成績 */ grade = scores[num]; /* 取得成績 */ printf("學生成績: %d\n", grade); break; case 2: /* 修改成績 */ grade = scores[num]; printf("原來學生成績: %d\n", grade); printf("輸入新成績. ==> ");/* 讀取新成績 */ scanf("%d", &grade); scores[num] = grade; /* 更新成績 */ break; case 3: /* 顯示成績 */ printf("學生成績: \n"); for printf("%d:%d ", i, scores[i]); printf("\n"); break; case 4: /* 成績對調 */ printf("請輸入第1位學生學號( 1 到 10 ). ==> "); scanf("%d", &num); /* 讀入第1位學生學號 */ printf("請輸入第2位學生學號( 1 到 10 ). ==> "); scanf("%d", &num1); /* 讀入第2位學生學號 */ temp = scores[num]; scores[num] = scores[num1]; scores[num1] = temp; break; case 5: /* 結束作業 */ doit = 0; break; } } system("PAUSE"); return 0; }
評分: ★★★★▲
回覆刪除pls format your source code.