freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c程序設(shè)計實習(xí)報告-資料下載頁

2025-08-24 08:44本頁面

【導(dǎo)讀】實現(xiàn)系統(tǒng)內(nèi)購物卡賬戶及相關(guān)賬戶管理。實現(xiàn)購物卡交易和合法性檢查。數(shù)據(jù)以文件形式存儲。從卡中消費掉一定金額。還需提供選擇菜單功能。保證能在linux平臺下運行。設(shè)置gfp和cfp兩個文件指針,用于。操作不同的文件。unsignedlongmoney;//余額,本應(yīng)用float類型但無奈用float類型時輸入輸出錯誤??ㄈ酥鹘缑婧瘮?shù)的調(diào)用。

  

【正文】 if(t==0) { fclose(gfp)。 return。 } printf(\t 登錄成功 :\n)。 h=1。 do { fseek(gfp,0,0)。 for(i=0。in。i++) fscanf(gfp,%u %s %s %u %s %ld %u %d %c,amp。ka[i].cardid,amp。ka[i].name,amp。ka[i].idd,amp。ka[i].account,amp。ka[i].pswd,amp。ka[i].money,amp。ka[i].jifen,amp。ka[i].zhuangtai,amp。ka[i].cc)。 printf(\t*************************************************\n)。 printf( 卡號 持卡人姓名 關(guān)聯(lián)帳號 余額 積分 狀態(tài) \n)。 switch(ka[s].zhuangtai) { case 0 : strcpy(zt,未注冊 )。 break。 case 1 : strcpy(zt,正常 )。 break。 case 2 : strcpy(zt,掛失 )。 break。 22 case 3 : strcpy(zt,已注銷 )。 break。 } ye=(float)ka[s].money/100。 printf(%10u %14s %10u % %10u %10s\n,ka[s].cardid,ka[s].name,ka[s].account,ye,ka[s].jifen,amp。zt)。 printf(\t*************************************************\n)。 sprintf(cdname,%,s+1)。 cfp=fopen(cdname,r+)。 if(cfp==NULL) cfp=fopen(cdname,w+)。 fseek(cfp,0,0)。 fscanf(cfp,%lu,amp。wn)。 for(i=0。iwn。i++) fscanf(cfp,%s %s %lu %lu %lu %u %u %u %s %c,amp。zh[i].atime,amp。zh[i].xmu,amp。zh[i].money_in,amp。zh[i].money_out, amp。zh[i].money_have,amp。zh[i].jifen_in,amp。zh[i].jifen_out,amp。zh[i].jifen,amp。zh[i].didian,amp。zh[i].cc)。 r=i+1。 do { printf(\t 請選擇 (08):\n)。 printf(\t\t\t1 消費 \n\t\t\t2 充值 \n\t\t\t3 總記錄查詢 (未啟用 ) \n\t\t\t4 消費記錄查詢 (未啟用 )\n)。 printf(\t\t\t5 充值紀(jì)錄查詢 (未啟用 )\n\t\t\t6 密碼修改 \n\t\t\t7 掛失 \n\t\t\t8 解掛失 \n\t\t\t0 返回 \n)。 scanf(%d,amp。i)。 printf(\t*************************************************\n)。 if(i0||i8) printf(\t 對不起,您只能選擇 0~ 8)。 }while(i0||i8)。 switch(i) { case 1 : xf(s)。break。 //消費 case 2 : czh(s)。break。 //充值 case 3 : zjl(r)。break。 //總記錄查 詢 (未啟用 ) case 4 : xfjl(r)。break。 //消費記錄查詢 (未啟用 ) case 5 : czjl(r)。break。 //充值紀(jì)錄查詢 (未啟用 ) case 6 : if(ct_s(s)==1) ka_pass(s)。break。 //密碼修改 case 7 : ka[s].zhuangtai=2。break。 //掛失 case 8 : if(ct_s(s)==1) ka[s].zhuangtai=1。break。 //解掛失 case 0 : h=0。break。 //返回 } fseek(gfp,0,0)。 for(i=0。iN。i++) fprintf(gfp,%u %s %s %u %s %ld %u %d %c\n,ka[i].cardid,ka[i].name,ka[i].idd,ka[i].account,k 23 a[i].pswd,ka[i].money,ka[i].jifen,ka[i].zhuangtai,ka[i].cc)。 fclose(cfp)。 }while(h!=0)。 fclose(gfp)。 } 開始 輸如需登錄帳號 錄入從文件錄入購物卡數(shù)目和所有購物卡信息,成功? 否 是 提示錯誤,關(guān)閉文件 管理系統(tǒng)內(nèi)有此帳號且未被注銷 是 否 相關(guān)提示,關(guān)閉文件 調(diào)用密碼核對函數(shù) 密碼正確? 是 否 顯示當(dāng)前賬戶相關(guān)信息 打開信息記錄相關(guān)文件,讀入信息 顯示功能選擇菜單,輸入功能選擇值 i i為 0~ 8? 否 是 i=0? 否 是 調(diào)用相關(guān)功能函數(shù) 保 存 詳 細記錄,關(guān)閉詳細記錄文件 關(guān)閉文件 24 五 程序 實際運行情況 1 登錄選擇界面: 圖 51 登錄選擇界面效果圖 2 管理員密碼設(shè)置和管理員主界面 25 圖 52 管理員密碼設(shè)置和管理員主界面效果圖 3 購物卡制作和簽發(fā) 26 圖 53 購物卡制作和簽發(fā)效果圖 4 購物卡信息查看 圖 54 購物卡查看效果圖 5 管理員密碼 修改 27 圖 55 管理員密碼修改 效果圖 6 充值 7 帳戶登錄和帳戶主界面 圖 56 充值效果圖 28 圖 57 帳戶登錄和帳戶主界面效果圖 8 掛失 9 消費 29 圖 59 消費效果圖 六 課程設(shè)計小結(jié) 從 2020 年 7 月 11日拿到課題到現(xiàn)在匆匆忙忙把報告寫完,一個星期的時間,可以說非常痛苦。每天早上八點開始一直調(diào)試到夜里一兩點鐘,如果能一步一個腳印地走下去也不會覺得什么,但現(xiàn)實情況是 有時這樣調(diào)試一兩天一點進展都沒有,甚至出現(xiàn)頭天晚上調(diào)試你好的程序到了第二天早晨莫名其妙地不能運行了,而此時編譯軟件一般 是不能指示出錯誤在哪里的,此時調(diào)試就更加困難了??梢哉f,這個課程設(shè)計很難。 然而,如果要指出到底困難在哪里,那就只能說是知識的欠缺了。其實此設(shè)計要求的知識都是來源于課本的基礎(chǔ)知識,無非就是數(shù)組,指針,文件操作和結(jié)構(gòu)體等,并沒有哪條語句無法再課本上找到! 知識的欠缺主要是上課時就沒有弄得太明白和課程結(jié)束后由于缺少復(fù)習(xí)的遺忘。其實,我們應(yīng)該感謝學(xué)校的這種安排:課程結(jié)束后一年多再進行課程設(shè)計。這讓我深刻地體會到了什么叫做學(xué)習(xí)。如果一個科目考試通過后就丟,那么過上幾個月當(dāng)我們需要這些知識時,我們連從哪里查詢知識和查詢 什么知識都不知道。就拿此次設(shè)計來說,我明顯地感覺到指針和文件這兩個章節(jié)我必須重新學(xué)起,只是由于時間限制,我沒能把指針認(rèn)真看一遍。而課程設(shè)計結(jié)束后能否摒棄學(xué)務(wù)繁忙的借口認(rèn)真把課本看上一遍,是后續(xù)課程 ( 如單片機)能否學(xué)好的關(guān)鍵。 此此課程設(shè)計,由于知識的欠缺,可以說做得很差。 在功能方面,由于數(shù)據(jù)輸入輸出不明原因錯誤,購物卡詳細記錄查詢的功能無法啟用,而此管理系統(tǒng)還連補卡的功能都沒有!在實際中,由于需要補卡,帳號就等于卡號是不可取的,其實在 cdlist 結(jié)構(gòu)體里面設(shè)置一個帳號和一個卡號的初衷也是出于實現(xiàn)補卡功能, 只是后來看到了自己能力有限,根本不可能在一個星期之內(nèi)完成才放棄。 在性能方面,此系統(tǒng)的菜單設(shè)計非常 不合理,變量設(shè)置混亂,以至后期修改和調(diào)試變得非常困難。用 malloc()函數(shù)開辟存儲空間而不得不使用數(shù)組存放結(jié)構(gòu)體變量,造成計算機內(nèi)存浪費和數(shù)組長度固定;用 for(I。!feof(* fp)。i++)語句而不得不想辦法活動動態(tài)的循環(huán)限定 30 值,以及不能熟練地使用指針造成不得不一遍地存儲和寫入數(shù)據(jù)等問題比比皆是。在結(jié)構(gòu)體中,由于最后一個值的讀入總是出現(xiàn)錯誤,以至于不得不給結(jié)構(gòu)體添加一個 char cc 的成員來繞過 以上問 題。更令人哭笑不得的是,當(dāng)結(jié)構(gòu)體中成員的數(shù)據(jù)類型用 float 時不明原因錯誤,以至于不得不用 unsigned int 型存儲收入,支出,余額的數(shù)據(jù),在需要的時候在進行轉(zhuǎn)換,這即增加了開發(fā)者的工作,也增加了電腦的負擔(dān)。此外,程序在運行中還會出現(xiàn)購物卡數(shù)據(jù)不明原因部分丟失的問題,而這個問題連會在什么情況下出現(xiàn)我都沒有搞清楚,改制就無從談起了;還有,在功能選擇時如果輸入的不是數(shù)組而是字母,在返回時會跳過選擇數(shù)據(jù)輸入而出現(xiàn)死循環(huán), 此問題還不知什么原因。要講到漏洞,那實在是太多了:未設(shè)置數(shù)據(jù)加密功能而造成打開相關(guān)文件就能 看到密碼,刪除 boslist_cs 文件就可破解管理員密碼等。 匆匆完成此次課程設(shè)計,問題很多,收獲一點也并非沒有。雖然學(xué)習(xí)到的語句不多,但最大的收獲是讓我看到了自己的問題出在哪里。在單片機開發(fā)中,由于單片機的運輸能力比起電腦很差,這就對算法和數(shù)據(jù)設(shè)計有很嚴(yán)格的要求,對于處理稍微復(fù)雜一點的問題, 一般是不允許 繞過一些不懂知識點的。應(yīng)該記住, STC89C52 單片機的 ROA 只有 8KB,RAM 只有 256Bit。要學(xué)好單片機, C 語言還要好好再學(xué)。 李澤志 2020717 七 參考文獻 [1] 譚浩強, C 程序設(shè)計(第三版),清華大學(xué)出版社, 2020 年 7 月 [2] 張冬梅等, C 語言課程設(shè)計與學(xué)習(xí)指導(dǎo),中國鐵道出版社, 2020 年 7 月
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1