![沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第1頁](http://file4.renrendoc.com/view14/M00/29/1A/wKhkGWYnG1KAcS_jAAIXzIHo0nI535.jpg)
![沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第2頁](http://file4.renrendoc.com/view14/M00/29/1A/wKhkGWYnG1KAcS_jAAIXzIHo0nI5352.jpg)
![沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第3頁](http://file4.renrendoc.com/view14/M00/29/1A/wKhkGWYnG1KAcS_jAAIXzIHo0nI5353.jpg)
![沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第4頁](http://file4.renrendoc.com/view14/M00/29/1A/wKhkGWYnG1KAcS_jAAIXzIHo0nI5354.jpg)
![沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第5頁](http://file4.renrendoc.com/view14/M00/29/1A/wKhkGWYnG1KAcS_jAAIXzIHo0nI5355.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
沈陽理工大學(xué)課程設(shè)計(jì)專用紙No.PAGE1沈陽理工大學(xué)課程設(shè)計(jì)任務(wù)書分院(系)信息科學(xué)與工程學(xué)院專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)生姓名學(xué)號(hào)設(shè)計(jì)題目抽獎(jiǎng)程序內(nèi)容及要求:預(yù)先將參加抽獎(jiǎng)?wù)叩馁Y料在文件中存儲(chǔ)起來,包括身份證號(hào)碼、姓名、電話、住址等信息。計(jì)算機(jī)從文件中讀取抽獎(jiǎng)人員信息。開始抽獎(jiǎng)時(shí),屏幕上快速閃動(dòng)參與者的身份證號(hào)碼,按任意鍵停止閃動(dòng)參與者的身份證號(hào)碼,按任意鍵停止閃動(dòng),把中獎(jiǎng)人的信息顯示在屏幕上。可反復(fù)抽出一、二、三等獎(jiǎng)若干名。技術(shù)要求:1、編程、調(diào)試、運(yùn)行結(jié)果正確。2、設(shè)計(jì)說明書。其中包括:(1).變量及函數(shù)的說明(設(shè)置列表)。(2).核心算法。(3).畫出N-S流程圖。(4).寫出源程序代碼及附上相關(guān)文件。(5).運(yùn)行結(jié)果(使用截圖將運(yùn)行結(jié)果顯示出來)。(6結(jié)論(結(jié)果分析及問題討論)。(7)參考文獻(xiàn)。(8).提交源程序及相關(guān)文件的電子文檔。進(jìn)度安排:17周:確定算法,進(jìn)行初步設(shè)計(jì)(總體設(shè)計(jì))、詳細(xì)設(shè)計(jì)、模塊編碼等。18周:編碼調(diào)試,測試數(shù)據(jù).19周:撰寫論文,驗(yàn)收并答辯。指導(dǎo)教師(簽字):年月日分院院長(簽字):年月日目錄HYPERLINK課程設(shè)計(jì)目的及要求………3HYPERLINK變量及函數(shù)的說明……………………4HYPERLINK核心算法………………5HYPERLINK功能模塊圖和傳統(tǒng)流程圖……………6-11HYPERLINK源程序代碼及附上相關(guān)文件………12-14HYPERLINK運(yùn)行結(jié)果……………15-18HYPERLINK課程設(shè)計(jì)總結(jié)…………19HYPERLINK參考文獻(xiàn)………………201.課程設(shè)計(jì)目的及要求目的:基本掌握面向過程程序設(shè)計(jì)的基本思路和方法;達(dá)到熟練掌握c語言的基本知識(shí)和技能;能夠利用所學(xué)的基本知識(shí)和技能,解決簡單的程序設(shè)計(jì)問題.要求:利用c語言面向過程的編程思想來完成設(shè)計(jì);掌握c語言抽獎(jiǎng)程序問題;設(shè)計(jì)流程圖.2.變量及函數(shù)說明函數(shù)功能函數(shù)中的變量作用awarder[AWARDER_NUM]結(jié)構(gòu)體變量,儲(chǔ)存抽獎(jiǎng)?wù)叩男畔utput()從文件中讀取抽獎(jiǎng)人員信息fp文件指針,指向awarder.txt文件i循環(huán)變量show()把中獎(jiǎng)人的信息顯示在屏幕上i循環(huán)變量award()抽獎(jiǎng)小過程i循環(huán)變量awarders()全部抽獎(jiǎng)過程i循環(huán)變量3.核心算法建立一個(gè)文本文件,從文件中讀取抽獎(jiǎng)?wù)叩男畔?,然后清屏顯示一個(gè)抽獎(jiǎng)?wù)叩纳矸葑C號(hào)碼,每隔五毫秒清屏一次,直到有按鍵將獲獎(jiǎng)?wù)叩纳矸葑C號(hào)碼顯示在桌面上,并提示下一次抽獎(jiǎng),重復(fù)抽獎(jiǎng),最后將抽獎(jiǎng)?wù)叩男畔@示在桌面上。4. 功能模塊圖和傳統(tǒng)流程圖讀取文件中抽獎(jiǎng)?wù)叩男畔⒆x取文件中抽獎(jiǎng)?wù)叩男畔⒊楠?jiǎng)的詳細(xì)過程全部抽獎(jiǎng)過程顯示所有抽獎(jiǎng)?wù)叩男畔⑷蝿?wù)功能模塊圖:4-1開始開始輸出讀取提示信息調(diào)用output函數(shù)輸出抽獎(jiǎng)的提示信息調(diào)用awarders函數(shù)輸出獲獎(jiǎng)?wù)叩奶崾拘畔⑶迤琳{(diào)用show函數(shù)輸出退出提示信息結(jié)束main函數(shù)流程圖:圖4-2開開始FILEfp;inti以只讀的方式打開文件,并用fp指向它從文件中讀取抽獎(jiǎng)?wù)叩男畔?并輸出關(guān)閉fp指向的文件結(jié)束output函數(shù)流程圖:圖4-3開始開始inti;輸入一等獎(jiǎng)獲得者的信息i=0輸出第i+1個(gè)二等獎(jiǎng)獲得者的信息Yi<2?i=0Y輸出第i+1個(gè)二等獎(jiǎng)獲得者的信息i<5?N結(jié)束Nshow函數(shù)流程圖:圖4-4返回i結(jié)束Nbreak開始i=0i<=AWARDER_NUM?Yi=0清屏輸出第i+1個(gè)人的身份證號(hào)kbhit()!=0?Sleep(5)Naward函數(shù)流程圖:圖4-5開始開始inti;輸出抽一等獎(jiǎng)的提示信息調(diào)用awarder函數(shù)抽一等獎(jiǎng)i=0Yi<2?輸出抽第i+1個(gè)二等獎(jiǎng)的提示信息調(diào)用awarder函數(shù)抽二等獎(jiǎng)i++;NYi<5?輸出抽第i+1個(gè)二等獎(jiǎng)的提示信息調(diào)用awarder函數(shù)抽三等獎(jiǎng)i++;N結(jié)束awarders函數(shù)流程圖:圖4-65.源程序代碼及附上相關(guān)文件#include<stdio.h>#include<stdlib.h>#include<windows.h>#defineAWARDER_NUM20structtag_award{charID[20];charname[20];chartelNo[20];charaddress[50];}awarder[AWARDER_NUM];intfirst_award;intsecond_award[2];intthird_award[3];voidoutput()/*讀取抽獎(jiǎng)人員信息*/{ FILE*fp;inti; if((fp=fopen("awarder.txt","r"))==NULL) {printf("cannotopenfile\n"); return; }printf("所有抽獎(jiǎng)?wù)叩男畔n"); for(i=0;i<AWARDER_NUM;i++) { fscanf(fp,"%s%s%s%s\n",awarder[i].ID,awarder[i].name,awarder[i].telNo,awarder[i].address); printf("%s%8s%12s%8s\n",awarder[i].ID,awarder[i].name,awarder[i].telNo,awarder[i].address); } fclose(fp);}voidshow()/*把中獎(jiǎng)人的信息顯示在屏幕上*/{inti; printf("一等獎(jiǎng)獲得者:\n");printf("\t身份證號(hào):%s\n",awarder[first_award].ID);printf("\t姓名:%s\n",awarder[first_award].name);printf("\t電話號(hào)碼:%s\n",awarder[first_award].telNo);printf("\t家庭住址:%s\n",awarder[first_award].address);printf("二等獎(jiǎng)獲得者:\n");for(i=0;i<2;i++){ printf("第%d個(gè)二等獎(jiǎng)獲得者:\n",i+1);printf("\t身份證號(hào):%s\n",awarder[second_award[i]].ID);printf("\t姓名:%s\n",awarder[second_award[i]].name);printf("\t電話號(hào)碼:%s\n",awarder[second_award[i]].telNo);printf("\t家庭住址:%s\n",awarder[second_award[i]].address);}printf("三等獎(jiǎng)獲得者:\n");for(i=0;i<5;i++){printf("第%d個(gè)三等獎(jiǎng)獲得者:\n",i+1);printf("\t身份證號(hào):%s\n",awarder[third_award[i]].ID);printf("\t姓名:%s\n",awarder[third_award[i]].name);printf("\t電話號(hào)碼:%s\n",awarder[third_award[i]].telNo);printf("\t家庭住址:%s\n",awarder[third_award[i]].address);}}intaward()/*抽獎(jiǎng)小過程*/{ inti; for(i=0;i<=AWARDER_NUM;i++) {if(i==AWARDER_NUM)i=0; system("cls"); printf("\n\n\n%s",awarder[i].ID); if(kbhit())break; Sleep(5);} return(i);}voidawarders()/*全部抽獎(jiǎng)過程*/{ inti; printf("\n\n開始抽第一等獎(jiǎng)(1名),按任意鍵開始...\n");getch(); printf("按任意鍵結(jié)束...\n"); first_award=award(); printf("\n\n開始抽第二等獎(jiǎng)(2名)\n"); for(i=0;i<2;i++) { printf("\n\n第%d個(gè)二等獎(jiǎng),按任意鍵開始...\n",i+1);getch(); printf("按任意鍵結(jié)束...\n");getch(); second_award[i]=award(); } printf("\n\n開始抽第三等獎(jiǎng)(5名)\n"); getch(); for(i=0;i<5;i++) { printf("\n\n第%d個(gè)三等獎(jiǎng),按任意鍵開始...\n",i+1); getch(); printf("按任意鍵結(jié)束...\n");getch(); third_award[i]=award(); }getch();}main(){ printf("\n******1.讀取:完成抽獎(jiǎng)?wù)咝畔⒌妮斎?**\n"); output(); printf("******2.抽獎(jiǎng):開始抽獎(jiǎng)!**************\n"); awarders();getch(); printf("\n按任意鍵顯示所有中獎(jiǎng)?wù)叩男畔?.."); getch(); system("cls"); printf("******3.顯示:顯示所有中獎(jiǎng)?wù)叩男畔?**\n"); show(); printf("******4.操作完成,按任意鍵退出\n"); getch();exit(1);}相關(guān)文件:6.運(yùn)行結(jié)果開始屏幕顯示抽獎(jiǎng)?wù)咝畔?屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)屏幕上快速閃動(dòng)參與者的身份證號(hào)碼按任意鍵停止閃動(dòng)顯示中獎(jiǎng)?wù)叩男畔?. 課程設(shè)計(jì)總結(jié)通過編寫程序,并上機(jī)實(shí)踐操作,運(yùn)行程序并得到正確結(jié)果,對(duì)程序的編寫及內(nèi)涵有了深刻的了解。對(duì)我們學(xué)習(xí)計(jì)算機(jī)的同學(xué),學(xué)好C語言對(duì)我們來說相當(dāng)重要,他不僅是學(xué)習(xí)計(jì)算機(jī)的基礎(chǔ),而且也是我們學(xué)習(xí)與計(jì)算機(jī)有關(guān)課程的基石。在自己編寫程序的過程中,剛開始時(shí)感覺有點(diǎn)難,不知道該如何下手,但是經(jīng)過自己冷靜的思考,既然讓自己編寫
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金融機(jī)構(gòu)保安工作內(nèi)容詳解
- 2025年全球及中國寵物安全救生衣行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025-2030全球頂?shù)装b盒行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025年全球及中國落地式拆碼盤機(jī)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025-2030全球廚房家用電器行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025-2030全球智能電梯紫外線消毒系統(tǒng)行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025-2030全球商用儲(chǔ)水式熱水器行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025-2030全球耐高溫硅膠電纜行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025-2030全球夾具零件行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025-2030全球磁參數(shù)測量儀行業(yè)調(diào)研及趨勢分析報(bào)告
- 四川省自貢市2024-2025學(xué)年上學(xué)期八年級(jí)英語期末試題(含答案無聽力音頻及原文)
- 2025-2030年中國汽車防滑鏈行業(yè)競爭格局展望及投資策略分析報(bào)告新版
- 2025年上海用人單位勞動(dòng)合同(4篇)
- 新疆烏魯木齊地區(qū)2025年高三年級(jí)第一次質(zhì)量監(jiān)測生物學(xué)試卷(含答案)
- 衛(wèi)生服務(wù)個(gè)人基本信息表
- 高中英語北師大版必修第一冊全冊單詞表(按單元編排)
- 苗圃建設(shè)項(xiàng)目施工組織設(shè)計(jì)范本
- 廣東省湛江市廉江市2023-2024學(xué)年八年級(jí)上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 學(xué)校食品安全舉報(bào)投訴處理制度
- 2025年生物安全年度工作計(jì)劃
- 安徽省蕪湖市2023-2024學(xué)年高一上學(xué)期期末考試 生物 含解析
評(píng)論
0/150
提交評(píng)論