目
錄
1 設計目得………………………………………………………………………3 2 設 計 題 目 及 要 求 … … … … … … … … … … … … … … … … … … … … 3 3設計算法分析………………………………………………………………3
3、1 模塊調用層次圖………………………………………………………3
3、2 核心算法描述………………………………………………………4
3、3 系統特點………………………………………………………6 4 程序代碼………………………………………………………………………6 5調試情況……………………………………………………………………8 6 結論……………………………………………………………………………11
學生信息管理
1 1 、設計目得
本課程設計得目得就就是要通過一次集中得強化訓練,使學生能及時鞏固已學得知識,補充未學得但又必要得內容。進行課程設計目得在于加深對程序設計基礎中基礎理論與基本知識得理解,促進理論與實踐得結合,進一步提高程序設計得能力.具體目得如下: 1.使學生更深入地理解與掌握該課程中得有關基本概念,程序設計思想與方法. 2.培養學生綜合運用所學知識獨立完成課題得能力。
3。培養學生勇于探索、嚴謹推理、實事求就是、有錯必改,用實踐來檢驗理論,全方位考慮問題等科學技術人員應具有得素質. 4。提高學生對工作認真負責、一絲不茍,對同學團結友愛,協作攻關得基本素質。
5.培養學生從資料文獻、科學實驗中獲得知識得能力,提高學生從別人經驗中找到解決問題得新途徑得悟性,初步培養工程意識與創新能力。
6.對學生掌握知識得深度、運用理論去處理問題得能力、實驗能力、課程設計能力、書面及口頭表達能力進行考核. 2 2 、設計題目及要求
【1】設計題目
【2】要求 實現如下功能:
(1)建立學生信息得結構體 (2)學生信息得初始化(可以從文件獲取)
(3)學生信息得添加、修改、刪除、查找 (4)學生信息得輸出 (5)對學生信息按學號、成績排序 (6)計算一門課得平均分與總分 (7)將學生信息保存為文件 綜合應用數組、指針、結構體、文件等,對該設計題目進行設計與實現。課程設計完成后,提交課程設計報告。
3 3 、 設計 算法分析
3、1 模塊調用層次圖
【1】變量描述
定義形式/名稱 含義/作用 數組 char name[20] 定義姓名數組 結構體 struct student stu[50] 聲明一個結構數組 全局變量 int input=0;float ave,sum;
全局變量標記當前錄入學生個數
FILE *fp;
文件 stu_list2、doc 保存學生信息 函數 Save InputStu DelStu Modif y Stu FindStu InsertStu SortStu ListStu 保存 錄入 刪除 修改 查找 插入 排序 顯示學生信息
【2】系統模塊調用層次圖
3、2核心算法描述
1、總體模塊流程圖:
N
T
2、修改模塊:
for(i=0;i<=15;i++)
for(i=0;i<input;i++)
stu[i]、num==id
T(flag!=0)
F(flag!=0)
輸出修改后學生信息
printf(”\n\nnull")
3、查詢模塊: Main ListStu SortStu ModifyStu FindStu InsertStu Save InputStu DelStu
開始
!(scanf("%d",&in1)==1
學生信息
修改
查詢
插入
刪除
排序
保存
結束
for(i=0;i<=15;i++)
for(i=0;i<input;i++)
(stu[i]、num==id)
T
(flag=0)
F (flag!=0)
輸出查詢后學生信息
printf("\n\nnull")
(stu[i]、classid==id)
T (flag=0)
F(flag!=0)
輸出查詢后學生信息
printf(”\n\nnull”)
T (flag=0)
(!strcmp(stu[i]、name,name))
F(flag!=0)
輸出查詢后學生信息
無找到有關信息 4、插入模塊: for(i=0;i<input;i++)
stu[i]、num=id
)0=galf(T? F(flag!=0)
學號信息已經存在
輸入要插入學生信息
5、刪除模塊:
ask != "n’ T
F i=0;i〈input;i++
stu[i]、num == delnum
T (flag=0)
F(flag!=0)
for(j=i;j<input;j++)
刪除成功且
顯示刪除后數據
刪除指定學生得信息
沒有要刪除得學生 6、排序模塊:
chose==1 T
F(chose==2) for(i=0;i〈input-1;i++)
for(i=0;i〈input-1;i++)
for(j=i+1;j〈input;j++)
for(j=i+1;j<input;j++)
stu[i]、num〉stu[j]、num
stu[i]、ave〈stu[j]、ave
T
F
T
F
temp=stu[i]
temp=stu[i]
stu[i]=stu[j]
stu[i]=stu[j]
stu[j]=temp
stu[j]=temp 3、3 系統特點 【1】特點:這個學生信息管理系統建立了學生信息得結構體,實現了學生信息得錄入、添加、修改、刪除、查找等功能,并能計算學生得平均分與總分,對學生進行排序。
4、 程序代碼
【1】程序代碼
void Help();
void Save(struct student stu[]);
void InputStu(struct student stu[]);
void DelStu(struct student stu[]);
void ModifyStu(struct student stu[]);
void FindStu(struct student stu[]);
void InsertStu(struct student stu[]);
void SortStu(struct student stu[]);
void ListStu(struct student stu[]);
void main()
{
struct student stu[50];
struct student *p;
int
in;
int
in1;
char ch;
void InputStu(struct student stu[])
{
pp=stu;
system("cls");
int i;
printf("Number of students you want to enter information:");
scanf("%d",&input); if((fp=fopen("inputdata、sys","wb+"))==NULL)
{
printf("Cannot open
any key exit!");
getch();
exit(1);
}
void ModifyStu(struct student stu[])
{
system("cls");
pp=stu;
int id,i,flag=1;
if((fp=fopen("modifydata、sys","wb+"))==NULL)
{
printf(”Cannot open
any key exit!”); getch();
exit(1);
}
void FindStu(struct student stu[])
{
system("cls");
int i=0,id,flag=1,chose;
printf("\nPlease select query:
1、No、 inquiries by school;2、Query by class;3、Query by name\n"); scanf("%d",&chose); switch(chose){ case 1:
printf(”Please enter your query No、 students:”); scanf("%d”,&id); for(i=0;i<input;i++) {
if (stu[i]、num==id)
{
flag=0; stu[i]、sum=stu[i]、score1+stu[i]、score2+stu[i]、score3; stu[i]、ave=stu[i]、sum/3; printf(”\nNo、 Studies\ Name\ No、 classes\ The first subjec\
The second subject\ The third subject\Average \Total\n"); void InsertStu(struct student stu[ ])
{
system(”cls”); int flag=1;
pp=stu;
int i,id; if((fp=fopen("insertdata、sys”,”wb+”))==NULL)
{
printf("Cannot open
any key exit!”); getch();
exit(1);
}
void ListStu(struct student stu[])
{
int i=0; for(i=0;i〈input;i++)
{
stu[i]、sum=stu[i]、score1+stu[i]、score2+stu[i]、score3; stu[i]、ave=stu[i]、sum/3;} printf("\nNo、 Studies\ Name\ No、 classes\ The first subjec\
The second subject\ The third subject\Average \Total\n”); for(i=0;i<input;i++)
{printf("\n %d %s %d \t%d \t%d \t%d
\t%d
%d”,stu[i]、num,stu[i]、name,stu[i]、classid,stu[i]、score1,stu[i]、score2,stu[i]、score3,stu[i]、ave, stu[i]、sum);
}
getch();
} void DelStu(struct student stu[])
{
system(”cls"); pp=stu;
int delnum,flag=1;
char ask;
int i,j; if((fp=fopen("Deldata、sys","wb+"))==NULL)
{
printf("Cannot open
any key exit!”); getch();
exit(1);
} void SortStu(struct student stu[])
{
system("cls"); int i,j,chose;
struct student temp; printf(”To sort the data before:\n”); printf("\nNo、 Studies\ Name\ No、 classes\ The first subjec\
The second subject\ The third subject\Average \Total\n"); for(i=0;i<input;i++) {printf(”\n %d
%s
%d
%d\t %d\t
%d\t %d\t %d\n",stu[i]、num,stu[i]、name,stu[i]、classid,stu[i]、score1,stu[i]、score2,stu[i]、score3,stu[i]、ave,stu[i]、sum);
} printf("\n1、Sort by Student ID\t2、By the average score (high → low) Sort\n");
void Save(struct student stu[])
{
int i,j;
pp=stu;
system(”cls"); printf(”\n\n\n\n\t\t\tSaving"); if((fp=fopen(”stu_list2、doc”,”wb+"))==NULL)
{
printf("Cannot open
any key exit!"); getch();
exit(1); }
【2】程序執行結果
【3】結果得討論:系統最后將修改過后得學生信息保存了下來 5 5 、 調試情況
三科成績、平均分、總分不能用 float定義應改為 int
定義應在函數得最前端
文件未定義
這就是建立學生信息文件
添加學生信息并計算平均分與總分
找不到要刪除得學生信息
刪除了學號為 12 得學生信息
修改學生信息
新學生信息記錄
保存信息后退出程序 6 6 、結論
(1)能夠通過編譯時出現得出錯提示信息,進行初步得糾錯。
(2)完成一個程序得一般步驟為設計,錄入 ,編譯 ,如果出錯,則修改,然后再編譯,編譯成功后,瞧瞧結果就是否正確,如果結果不正確,則再重復以上步驟。
(3)從這次編程序得過程中,我學到了編程所必須具備得專業技能,更領會編譯程序所需要得細心與耐心。
推薦訪問: 學生 信息管理系統 編寫上一篇:師生信息素養提升研究
下一篇:暑假家訪記錄簡報
在偉大祖國73華誕之際,我參加了單位組織的“光影鑄魂”主題黨日活動,集中觀看了抗美援朝題材影片《長津湖》,再一次重溫這段悲壯歷史,再一次深刻感悟偉大抗美援朝精神。1950年10月,新中國剛剛成立一年,
根據省局黨組《關于舉辦習近平談治國理政(第四卷)讀書班的通知》要求,我中心通過專題學習、專題研討以及交流分享等形式,系統的對《習近平談治國理政》(第四卷)進行了深入的學習與交流,下面我就來談一談我個人
《習近平談治國理政》(第四卷)是在百年變局和世紀疫情相互疊加的大背景下,對以習近平同志為核心的黨中央治國理政重大戰略部署、重大理論創造、重大思想引領的系統呈現。它生動記錄了新一代黨中央領導集體統籌兩個
《真抓實干做好新發展階段“三農工作”》是《習近平談治國理政》第四卷中的文章,這是習近平總書記在2020年12月28日中央農村工作會議上的集體學習時的講話。文章指出,我常講,領導干部要胸懷黨和國家工作大
在《習近平談治國理政》第四卷中,習近平總書記強調,江山就是人民,人民就是江山,打江山、守江山,守的是人民的心。從嘉興南湖中駛出的小小紅船,到世界上最大的執政黨,在中國共產黨的字典里,“人民”一詞從來都
黨的十八大以來,習近平總書記以馬克思主義戰略家的博大胸襟和深謀遠慮,在治國理政和推動全球治理中牢固樹立戰略意識,在不同場合多次圍繞戰略策略的重要性,戰略和策略的關系,提高戰略思維、堅定戰略自信、強化戰
《習近平談治國理政》第四卷集中展示了以習近平同志為核心的黨中央在百年變局和世紀疫情相互疊加背景下,如何更好地堅持和發展中國特色社會主義而進行的生動實踐與理論探索;對于新時代堅持和發展什么樣的中國特色社
在黨組織的關懷下,我有幸參加了區委組織部組織的入黨積極分子培訓班。為期一周的學習,學習形式多樣,課程內容豐富,各位專家的講解細致精彩,對于我加深對黨的創新理論的認識、對黨的歷史的深入了解、對中共黨員的
《習近平談治國理政》第四卷《共建網上美好精神家園》一文中指出:網絡玩命是新形勢下社會文明的重要內容,是建設網絡強國的重要領域。截至2021年12月,我國網民規模達10 32億,較2020年12月增長4
剛剛召開的中國共產黨第十九屆中央委員會第七次全體會議上討論并通過了黨的十九屆中央委員會向中國共產黨第二十次全國代表大會的報告、黨的十九屆中央紀律檢查委員會向中國共產黨第二十次全國代表大會的工作報告和《