版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
序號(hào):0301學(xué)號(hào):10416313課程設(shè)計(jì)設(shè)計(jì)課程名稱:C語(yǔ)言課程設(shè)計(jì)題目:成績(jī)統(tǒng)計(jì)系統(tǒng)進(jìn)制轉(zhuǎn)換系統(tǒng)學(xué)生姓名:韓建東學(xué)院(系):懷德學(xué)院專業(yè)班級(jí):計(jì)算機(jī)101指導(dǎo)教師:倪彤光設(shè)計(jì)時(shí)間:年6月13日年6月27日
常州大學(xué)課程設(shè)計(jì)任務(wù)書一懷德學(xué)院計(jì)算機(jī)專業(yè)計(jì)算機(jī)101班同學(xué):韓建東一、設(shè)計(jì)題目成績(jī)統(tǒng)計(jì)系統(tǒng)二、設(shè)計(jì)內(nèi)容假設(shè)某校學(xué)生通訊錄基礎(chǔ)信息關(guān)鍵包含:學(xué)號(hào)、姓名、通訊地址、電話等,本系統(tǒng)應(yīng)能對(duì)這些基礎(chǔ)信息進(jìn)行管理,并要求含有以下功效:1、含有學(xué)生信息添加功效2、含有學(xué)生信息刪除功效3、含有學(xué)生信息瀏覽功效4、含有學(xué)生信息查詢功效5、含有學(xué)生信息排序功效三、基礎(chǔ)要求1、編寫源程序要求:(1)能夠?qū)崿F(xiàn)任務(wù)書中功效;(2)盡可能使界面友好、直觀、易操作(3)源程序要有合適注釋,使程序輕易閱讀。2、撰寫“課程設(shè)計(jì)匯報(bào)”,要求以下:(1)封面:統(tǒng)一采取《江蘇工業(yè)學(xué)院課程設(shè)計(jì)說(shuō)明書》封面格式(2)任務(wù)書(3)目錄(4)“課程設(shè)計(jì)匯報(bào)”正文3、課程設(shè)計(jì)驗(yàn)收要求:(1)運(yùn)行所設(shè)計(jì)系統(tǒng);(2)回復(fù)相關(guān)問(wèn)題;(3)提交課程設(shè)計(jì)匯報(bào);(4)提交源程序。四、進(jìn)度安排1、系統(tǒng)分析、設(shè)計(jì)準(zhǔn)備階段:4課時(shí)2、編程調(diào)試階段:22課時(shí)3、總結(jié)和書寫課程設(shè)計(jì)匯報(bào)階段:2課時(shí)4、考評(píng)階段:2課時(shí)指導(dǎo)老師:倪彤光年6月7日系主任:蘇兵年6月7日教學(xué)院長(zhǎng):楊長(zhǎng)春年6月7日常州大學(xué)課程設(shè)計(jì)任務(wù)書二懷德學(xué)院計(jì)算機(jī)專業(yè)計(jì)算機(jī)101班同學(xué):韓建東一、設(shè)計(jì)題目進(jìn)制轉(zhuǎn)換系統(tǒng)二、設(shè)計(jì)內(nèi)容本系統(tǒng)要求含有以下功效:1、含有將十進(jìn)制轉(zhuǎn)換為二進(jìn)制功效2、含有將十進(jìn)制轉(zhuǎn)換為十六進(jìn)制功效3、含有將二進(jìn)制轉(zhuǎn)換為十進(jìn)制功效 4、含有將十六進(jìn)制轉(zhuǎn)換為十進(jìn)制功效三、基礎(chǔ)要求1、編寫源程序要求:(1)能夠?qū)崿F(xiàn)任務(wù)書中功效;(2)盡可能使界面友好、直觀、易操作(3)源程序要有合適注釋,使程序輕易閱讀。2、撰寫“課程設(shè)計(jì)匯報(bào)”,要求以下:(1)封面:統(tǒng)一采取《江蘇工業(yè)學(xué)院課程設(shè)計(jì)說(shuō)明書》封面格式(2)任務(wù)書(3)目錄(4)“課程設(shè)計(jì)匯報(bào)”正文3、課程設(shè)計(jì)驗(yàn)收要求:(1)運(yùn)行所設(shè)計(jì)系統(tǒng);(2)回復(fù)相關(guān)問(wèn)題;(3)提交課程設(shè)計(jì)匯報(bào);(4)提交源程序。四、進(jìn)度安排1、系統(tǒng)分析、設(shè)計(jì)準(zhǔn)備階段:4課時(shí)2、編程調(diào)試階段:22課時(shí)3、總結(jié)和書寫課程設(shè)計(jì)匯報(bào)階段:2課時(shí)4、考評(píng)階段:2課時(shí)指導(dǎo)老師:倪彤光年6月7日系主任:蘇兵年6月7日教學(xué)院長(zhǎng):楊長(zhǎng)春年6月7日1.意義及功效 51.1系統(tǒng)意義 51.1.1成績(jī)管理信息系統(tǒng)意義 51.1.2進(jìn)制算法設(shè)計(jì)意義 51.2系統(tǒng)功效 51.2.1成績(jī)管理信息系統(tǒng)功效 51.2.2進(jìn)制算法設(shè)計(jì)功效 52功效結(jié)構(gòu)圖 52.1成績(jī)管理信息系統(tǒng) 52.2進(jìn)制算法設(shè)計(jì) 53.步驟圖 63.1成績(jī)管理信息系統(tǒng)步驟圖 64調(diào)試運(yùn)行 64.1成績(jī)管理信息系統(tǒng) 64.2進(jìn)制算法設(shè)計(jì) 65使用說(shuō)明 65.1成績(jī)管理信息系統(tǒng) 65.2進(jìn)制算法設(shè)計(jì) 66C語(yǔ)言源程序代碼 76.1成績(jī)管理信息系統(tǒng) 76.2進(jìn)制算法設(shè)計(jì) 77心得體會(huì) 88實(shí)習(xí)日志 89參考文件 91.意義及功效1.1系統(tǒng)意義1.1.1成績(jī)管理信息系統(tǒng)意義為了方便學(xué)校用來(lái)統(tǒng)計(jì)學(xué)生數(shù)據(jù),為學(xué)校能夠省下大量人力和物力,同時(shí)也省下了時(shí)間。1.1.2進(jìn)制算法設(shè)計(jì)意義為了方便廣大初學(xué)學(xué)生愈加好了解進(jìn)制之間轉(zhuǎn)換。1.2系統(tǒng)功效1.2.1成績(jī)管理信息系統(tǒng)功效1、含有學(xué)生信息添加功效2、含有學(xué)生信息刪除功效3、含有學(xué)生信息瀏覽功效4、含有學(xué)生信息查詢功效5、含有學(xué)生信息排序功效1.2.2進(jìn)制算法設(shè)計(jì)功效1、含有將十進(jìn)制轉(zhuǎn)換為二進(jìn)制功效2、含有將十進(jìn)制轉(zhuǎn)換為十六進(jìn)制功效3、含有將二進(jìn)制轉(zhuǎn)換為十進(jìn)制功效 4、含有將十六進(jìn)制轉(zhuǎn)換為十進(jìn)制功效2功效結(jié)構(gòu)圖2.1成績(jī)管理信息系統(tǒng)輸入學(xué)生信息輸入學(xué)生信息添加學(xué)生信息刪除學(xué)生信息顯示學(xué)生信息排序?qū)W生信息2.2進(jìn)制算法設(shè)計(jì)輸入數(shù)據(jù)輸入數(shù)據(jù)要轉(zhuǎn)換進(jìn)制輸出數(shù)據(jù)3.步驟圖3.1成績(jī)管理信息系統(tǒng)步驟圖4調(diào)試運(yùn)行4.1成績(jī)管理信息系統(tǒng)4.2進(jìn)制算法設(shè)計(jì)5使用說(shuō)明5.1成績(jī)管理信息系統(tǒng)1是添加學(xué)生信息,2是刪除學(xué)生信息,3是查詢學(xué)生信息,4是排序?qū)W生信息,5是顯示學(xué)生信息,6是退出程序5.2進(jìn)制算法設(shè)計(jì)先輸入要轉(zhuǎn)換為多少進(jìn)制數(shù),在輸入要轉(zhuǎn)換多少進(jìn)制數(shù)6C語(yǔ)言源程序代碼6.1成績(jī)管理信息系統(tǒng)#include"stdio.h"#include"stdlib.h"#include"string.h"#defineMAX50voidadd();voiddel();voidquery();voidsort();voidlist();typedefstructemployee{intnumber; charname[20]; charsex[2];intage; charxueli[10]; floatsalary; charaddress[30]; chartel[11];}EMP;voidmain(){charc;inti; do { system("cls"); for(i=0;i<80;i++) printf("*"); printf("\t1:添加學(xué)生信息\n"); printf("\t2:刪除學(xué)生信息\n"); printf("\t3:查詢\n"); printf("\t4:排序\n");printf("\t5:顯示\n");printf("\t6:退出\n"); printf("\t請(qǐng)選擇輸入選項(xiàng)[1\\2\\3\\4\\5\\6]:\n"); do { c=getchar(); }while(c!='1'&&c!='2'&&c!='3'&&c!='4'&&c!='5'&&c!='6'); getchar(); switch(c) {case'1':add();break; case'2':del();break; case'3':query();break; case'4':sort();break;case'5':list();break;case'6':exit(0); } printf("按任意鍵返回主菜單:\n"); getchar(); system("cls"); }while(1);}voidadd(){EMPemploy; FILE*fp; /*以下為輸入學(xué)生信息代碼*/ printf("請(qǐng)輸入學(xué)生信息"); printf("\n學(xué)生號(hào)(整數(shù)0001—1999):");scanf("%d",&employ.number); getchar();printf("\n學(xué)生姓名:"); gets();printf("\n學(xué)生性別(請(qǐng)輸入男或女):"); gets(employ.sex);printf("\n學(xué)生年紀(jì):"); scanf("%d",&employ.age);getchar();printf("\n學(xué)生成績(jī):"); gets(employ.xueli);printf("\n學(xué)生班級(jí):"); scanf("%f",&employ.salary);getchar();printf("\n學(xué)生地址:");gets(employ.address); printf("\n學(xué)生電話:"); gets(employ.tel);/*學(xué)生信息輸入代碼結(jié)束*/ printf("該學(xué)生信息為:%d%s%s%d%s%.2f%s%s\n",employ.number,,employ.sex,employ.age,employ.xueli,employ.salary,employ.address,employ.tel);/*將學(xué)生信息保留到文件中*/if((fp=fopen("XX.out","ab"))==NULL) {printf(""); getchar(); exit(0); }if(fwrite(&employ,sizeof(employ),1,fp)!=1) printf("filewriteerror\n");fclose(fp);/*保留學(xué)生信息代碼結(jié)束*/}voidquery(){intflag,number,count;EMPemploy; FILE*fp; charname[10]; printf("請(qǐng)輸入查找方法:"); printf("1--代表根據(jù)學(xué)生號(hào)2--代表根據(jù)姓名\n"); scanf("%d",&flag);getchar(); if(flag==1) {printf("請(qǐng)輸入學(xué)生號(hào):"); scanf("%d",&number);getchar(); if((fp=fopen("XX.out","rb"))==NULL) {printf("cannotopenfileexit!"); getchar(); exit(0); }do { count=fread(&employ,sizeof(employ),1,fp);if(employ.number==number){printf("該學(xué)生信息為:%d%s%s%d%s%.2f%s%s\n",employ.number,,employ.sex,employ.age,employ.xueli,employ.salary,employ.address,employ.tel); break; } }while(count==1); //printf("%d",flag); fclose(fp); } else {printf("%d",flag); } printf("該學(xué)生不存在!\n");}voiddel(){intcount,i=0,number,j; FILE*fp; EMPemploy[MAX]; charflag;if((fp=fopen("XX.out","rb"))==NULL) {printf("cannotopenfileexit!"); getchar(); exit(0); }/*從文件中讀入數(shù)據(jù)*/ do{count=fread(&employ[i],sizeof(employ[0]),1,fp);if(count==1){i++;} }while(count==1); /*for(count=0;count<i;count++) printf("%d",employ[count].number); */ fclose(fp);printf("\n請(qǐng)輸入刪除學(xué)生學(xué)生號(hào):"); scanf("%d",&number);getchar();printf("\n你確定刪除該學(xué)生嗎(y/n)");flag=getchar(); if(flag=='y'){ /*找被刪除下標(biāo)識(shí)為count*/ for(count=0;count<i;count++) if(number==employ[count].number)break;/*以下為刪除代碼*/if(count<i){/*先將數(shù)組中信息刪除*/for(j=count+1;j<i;j++) { employ[j-1].number=employ[j].number; strcpy(employ[j-1].address,employ[j].address); employ[j-1].age=employ[j].age; strcpy(employ[j-1].name,employ[j].name); employ[j-1].salary=employ[j].salary; strcpy(employ[j-1].sex,employ[j].sex); strcpy(employ[j-1].tel,employ[j].tel); strcpy(employ[j-1].xueli,employ[j].xueli); } /*寫入刪除后數(shù)據(jù)*/ if((fp=fopen("XX.out","wb"))==NULL) {printf("cannotopenfileexit!"); getchar(); exit(0); }fwrite(employ,sizeof(employ[0]),i-1,fp);fclose(fp); } elseprintf("你輸入學(xué)生號(hào)不存在\n"); }}voidsort(){EMPemploy[MAX],temp; FILE*fp;intcount,n=0,flag,i,j;/*打開文件*/ if((fp=fopen("XX.out","rb"))==NULL) {printf("cannotopenfileexit!"); getchar(); exit(0); }/*從文件中讀入數(shù)據(jù)*/ do{count=fread(&employ[n],sizeof(employ[0]),1,fp);if(count==1){n++;} }while(count==1); fclose(fp);printf("1--代表根據(jù)學(xué)生號(hào)升序排序2--代表根據(jù)學(xué)生號(hào)降序排序\n"); scanf("%d",&flag);getchar(); if(flag==1){ //升序排序 for(i=0;i<n-1;i++) for(j=0;j<n-1-i;j++) {if(employ[j].number>employ[j+1].number) {temp.number=employ[j].number;strcpy(,employ[j].name); strcpy(temp.sex,employ[j].sex); temp.age=employ[j].age;strcpy(temp.xueli,employ[j].xueli);temp.salary=employ[j].salary;strcpy(temp.address,employ[j].address); strcpy(temp.tel,employ[j].tel); employ[j].number=employ[j+1].number;strcpy(employ[j].name,employ[j+1].name); strcpy(employ[j].sex,employ[j+1].sex); employ[j].age=employ[j+1].age;strcpy(employ[j].xueli,employ[j+1].xueli);employ[j].salary=employ[j+1].salary;strcpy(employ[j].address,employ[j+1].address); strcpy(employ[j].tel,employ[j+1].tel);employ[j+1].number=temp.number;strcpy(employ[j+1].name,); strcpy(employ[j+1].sex,temp.sex); employ[j+1].age=temp.age;strcpy(employ[j+1].xueli,temp.xueli);employ[j+1].salary=temp.salary;strcpy(employ[j+1].address,temp.address); strcpy(employ[j+1].tel,temp.tel); } } } else{ //降序排序 for(i=0;i<n-1;i++) for(j=0;j<n-1-i;j++) {if(employ[j].number<employ[j+1].number) {temp.number=employ[j].number;strcpy(,employ[j].name); strcpy(temp.sex,employ[j].sex); temp.age=employ[j].age;strcpy(temp.xueli,employ[j].xueli);temp.salary=employ[j].salary;strcpy(temp.address,employ[j].address); strcpy(temp.tel,employ[j].tel); employ[j].number=employ[j+1].number;strcpy(employ[j].name,employ[j+1].name); strcpy(employ[j].sex,employ[j+1].sex); employ[j].age=employ[j+1].age;strcpy(employ[j].xueli,employ[j+1].xueli);employ[j].salary=employ[j+1].salary;strcpy(employ[j].address,employ[j+1].address); strcpy(employ[j].tel,employ[j+1].tel);employ[j+1].number=temp.number;strcpy(employ[j+1].name,); strcpy(employ[j+1].sex,temp.sex); employ[j+1].age=temp.age;strcpy(employ[j+1].xueli,temp.xueli);employ[j+1].salary=temp.salary;strcpy(employ[j+1].address,temp.address); strcpy(employ[j+1].tel,temp.tel); } } }for(i=0;i<n;i++)printf("該學(xué)生信息為:%d%s%s%d%s%.2f%s%s\n",employ[i].number,employ[i].name,employ[i].sex,employ[i].age,employ[i].xueli,employ[i].salary,employ[i].address,employ[i].tel); }voidlist(){EMPemploy;FILE*fp;intcount;if((fp=fopen("XX.out","rb"))==NULL) {printf("cannotopenfileexit!"); getchar(); exit(0); }do{ count=fread(&employ,sizeof(employ),1,fp);if(count==1)printf("該學(xué)生信息為:%d%s%s%d%s%.2f%s%s\n",employ.number,,employ.sex,employ.age,employ.xueli,employ.salary,employ.address,employ.tel);}while(count==1);fclose(fp);}6.2進(jìn)制算法設(shè)計(jì)#include<stdio.h>#include<malloc.h>//malloc函數(shù)頭文件#defineINITSIZE100//初始分配空間大小typedefintElemType;//要據(jù)需要定義數(shù)據(jù)類型typedefstruct{ElemType*data;//用于存放元素動(dòng)態(tài)數(shù)組空間inttop;//棧頂指針intstacksize;//目前??臻g長(zhǎng)度}linkStack;voidinitstack(linkStack*s)//初始化棧{s->data=(ElemType*)malloc(INITSIZE*sizeof(ElemType));//分配空間s->top=0;//棧頂指針初始化s->stacksize=INITSIZE;//初始化??臻g}intpush(linkStack*s,ElemTypex)//元素入棧{if(s->top>s->stacksize)//假如分配空間已滿,從新分配{s->data=(ElemType*)realloc(s->data,(s->stacksize+1)*sizeof(ElemType));if(!s->data)return0;//分配失敗,反回零s->stacksize++;//增加空間大小}s->data[s->top++]=x;//把元素X入棧return1;}intpop(linkStack*s)//元素出棧{if(s->top==0)return0;returns->data[--s->top];}voidlist(linkStacks)//輸出棧內(nèi)元素{inti,hex;charchhex;for(i=s.top-1;i>=
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 年度B2B電子商務(wù)戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 年度高分子復(fù)合材料競(jìng)爭(zhēng)策略分析報(bào)告
- 2025個(gè)人公司股權(quán)轉(zhuǎn)讓合同范本:股權(quán)分割與權(quán)益調(diào)整4篇
- 2024離婚財(cái)產(chǎn)分割協(xié)議公證與遺產(chǎn)分割
- 2024蔬菜大棚溫室租賃與農(nóng)業(yè)科技研發(fā)服務(wù)合同3篇
- 課程設(shè)計(jì)要不要上課呢
- 《電子商務(wù)概論》課件
- 增加頂管施工方案
- 二零二五版民法典離婚協(xié)議書樣本與專業(yè)律師服務(wù)協(xié)議4篇
- 2025年暑期學(xué)生兼職工作質(zhì)量及效果評(píng)估協(xié)議3篇
- 2025年中國(guó)重汽集團(tuán)招聘筆試參考題庫(kù)含答案解析
- 教師招聘(教育理論基礎(chǔ))考試題庫(kù)(含答案)
- 2024年秋季學(xué)期學(xué)校辦公室工作總結(jié)
- 鋪大棚膜合同模板
- 長(zhǎng)亭送別完整版本
- 智能養(yǎng)老院視頻監(jiān)控技術(shù)方案
- 你比我猜題庫(kù)課件
- 無(wú)人駕駛航空器安全操作理論復(fù)習(xí)測(cè)試附答案
- 建筑工地春節(jié)留守人員安全技術(shù)交底
- 默納克-NICE1000技術(shù)交流-V1.0
- 蝴蝶蘭的簡(jiǎn)介
評(píng)論
0/150
提交評(píng)論