沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第1頁
沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第2頁
沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第3頁
沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第4頁
沈陽理工大學(xué)課程設(shè)計(jì)-抽獎(jiǎng)程序_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論