資源簡介
要求設計的管理系統能夠實現以下功能:
1.每一條記錄包括一個學生的學號、姓名、3個成績(平時成績、作業成績、考試成績)
2.成績錄入功能:(成績信息用文件保存,可以一次完成若干條記錄)
3.成績信息顯示瀏覽功能,完成全部學生記錄的顯示。
4.查詢功能:完成按姓名查找學生記錄,并顯示
5.成績信息的刪除:按學號進行刪除某學生的成績
6.排序功能:按學生總成績進行排序
代碼片段和文件信息
//
//??main.c
//??周五.c
//
//??Created?by?ancientear?on?2017/9/1.
#include
#include
#include
int?AddStu();????????????????????????//添加學生信息
void?Stu_delete();???????????????????//刪除某個學生的信息
void?Stu_alldisplay();???????????????//顯示所有人的學生信息
void?Stu_find();?????????????????????//按名字查找
int?Stu_findcode(char?number[10]);???//按照學號查找
void?Stu_sort();?????????????????????//排序
void?Stu_display(int?num);???????????//顯示某個學生的信息
void?read_studentdata();
void?edit_studentdata1();????????????//將剛輸入的數據存入文件中
void?edit_studentdata2();????????????//將排序后的數據存入文件中
int?Stu_findname(char?name[]);???????//通過名字返回數組下標
void?mei();
char?*xingm;
struct?student
{
char?name[10];
char?number[10];
char?usual[10];
char?homework[10];
char?exam[10];
double?all;
};
int?X;
int?num?=?0;
struct?student?Stu[1000];
int?main()
{
read_studentdata();
mei();
while(1)
{
????printf(“????????????????????????學生成績管理系統???????????????????\n“);
????printf(“??????1.?加入學生信息?????????2.?刪除學生信息??????????????\n“);
????printf(“??????3.?顯示瀏覽學生信息??????4.?按姓名查找學生記錄并顯示????\n“);
????printf(“??????5.?按總成績進行排序??????6.?退??出??????????????????\n“);
????printf(“?????????????????????????????歡迎使用?????????????????????\n“);
????printf(“\n?????????????????????請選擇(1-6):??????????????????????????\n\n“);
????scanf(“%d“&X);
????getchar();
????switch(X)
????{
????????case?1:
????????????AddStu();
????????????edit_studentdata1();//數據寫入文件
????????????mei();
????????????break;
????????case?2:
????????????Stu_delete();
????????????edit_studentdata1();//數據寫入文件
????????????mei();
????????????break;
????????case?3:
????????????Stu_alldisplay();
????????????mei();
????????????break;
????????case?4:
????????????Stu_find();
????????????mei();
????????????break;
????????case?5:
????????????Stu_sort();
????????????edit_studentdata2();//數據寫入文件
mei();
????????????break;
????????case?6:
????????????exit(0);
????????????break;
????}
}
return?0;
}
//添加學生
int?AddStu()
{
while(1)
{
????printf(“Please?input?the?name:“);
????scanf(“%s“Stu[num].name);
????printf(“Please?input?the?No.(學號)?:“);
????scanf(“%s“Stu[num].number);
????printf(“Please?input?the?usual?gride?:“);
????scanf(“%s“Stu[num].usual);
????printf(“Please?input?the?homework‘s?gride:“);
????scanf(“%s“Stu[num].homework);
????printf(“Please?input?the?exam?gride:“);
????scanf(“%s“Stu[num].exam);
????double?grade1?=?atoi(Stu[num].usual);
????double?grade2?=?atoi(Stu[num].homework);
????double?grade3?=?atoi(Stu[num].exam);
????Stu[num].all?=?grade1?+?grade2?+?grade3;//計算總成績
????num++;//學生數目的計數器,也會進入文件
????printf(“請問您是否要添加學生信息?(y?for?yes??or?n?for?no??)“);
????getchar();
????if(getchar()?==?‘n‘)
????{
????????break;//直到在此處輸入n,添加學生的循環才會停止
????}
}
return?num;
}
//刪除某個學生
void?Stu_delete()
{
int?i;
while(1)
{
????char?numbers[20];
????int?index;
????printf(“請輸入要刪除的學生的學號:\n“);
????scanf(“%s“numbers);
????getchar();
????index?=?Stu_findcode(numbers);//查找該學生是否存在
????if?(index==-1){printf(“學生不存在!\n“);}
????else
????{
- 上一篇:C++ 聊天軟件源代碼(內容加密RSA加密)
- 下一篇:三次樣條插值的C語言實現
評論
共有 條評論