C語言實驗報告(課程設計)_第1頁
C語言實驗報告(課程設計)_第2頁
C語言實驗報告(課程設計)_第3頁
C語言實驗報告(課程設計)_第4頁
C語言實驗報告(課程設計)_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

實驗報告實驗名稱 模塊化程序設計實驗項目 編寫若干個函數(shù),并在主程序中進行集成調用一、試驗目的本實驗為學生提供了一個既動手又動腦,上機實踐的機會。學生通過分析和解決該實驗中的問題和需求,將課本上的理論知識和實際有機地結合起來,鍛煉學生分析、解決較復雜問題的能力,提高學生編寫綜合系統(tǒng)程序的能力。二、實驗內容1.主菜單編寫程序,使之能夠顯示以下主菜單:q、?1、,卜.]、?、?[、■[、?、"、?1、.J、,卜.:、"、?,、.J、■[、r7*r7*rrw?[、<J、r7^r7*rr*ri*ri**T>主菜單:(完成人:).字母數(shù)字轉換.獎金發(fā)放.打印月歷.打印素數(shù).整數(shù)排序.退出*1**1**1* *1* *i*,,、?.、卜?卜?卜[、,】、?.??.、[??卜?卜[? ;??.、1??卜?卜?[?<Jw1??[??卜?卜.卜力??.、?.、卜?卜?[、[、―1?,.?,■、?1?,卜?卜在主菜單程序中,根據輸入的數(shù)字1?6來選擇相應的選項,在執(zhí)行完每一個選項之后,返回主菜單(退出除外)。每一個菜單要完成的任務由下面的2?7依次給出。.字母數(shù)字轉換編寫一個函數(shù),能夠將字母電話號碼轉換成數(shù)字號碼(假設輸入的字母都是大寫字母,輸入的電話號碼以#結束):例如:輸入電話號碼:CALLATT,則輸出:2255288c輸入電話號碼:1-800-COL-LECT,則輸出:1-800-265-5328。提示:電話上的字母、數(shù)字對照表如下:2=ABC,3=DEF,4=GHI,5=JKL,6=MNO,7二PQRS,8=TUV,9=WXYZ。如果原始的電話號碼中出現(xiàn)了非字母字符,則這部分字符保持不變。在主程序中輸入需要轉換的電話號碼,調用此函數(shù),返回得到轉換后的結果,再打印輸出此結果。.獎金發(fā)放企業(yè)發(fā)放的獎金根據利潤提成。利潤低于或等于10萬元時,獎金可提10%;利潤高于10萬元,低于20萬元時,低于10萬元的部分按10%提成,高于10萬元的部分,可提成7.5%;20萬到40萬之間時,高于20萬元的部分,可提成5%;超過40萬元的部分按3%提成,編寫一個函數(shù),當月利潤作為參數(shù),返回應發(fā)放獎金的總數(shù)。if(ch二二'T,||ch二二,U,||ch=='V')ch=,8,;if(ch二二,W'||ch二二,X'||ch二二'Y\\ch二二'Z,)ch二,9,;elsech=ch;printf(〃%c〃,ch);}printf(〃\n〃);printf(〃請輸入菜單項 \n〃);return0;}intf2(){inta;longfloatsum;printf(〃請輸入利潤:\n〃);scanf(〃%d〃,&a);if(a<=100000)sum=a*0.1;elseif(a>100000&&a<200000)sum=100000*0.1+(a-100000)*0.075;elseif(a>200000&&a<400000)sum=200000*0.l+(a-200000)*0.05;elsesum=400000*0.l+(a-400000)*0.03;printf(〃獎金是:%5.lf\n〃,sum);printf(,z請輸入菜單項 \n〃);return0;)intf3(){inta,b,c,j,k,n;printf(〃請輸入打印月的天數(shù):〃);scanf(〃%d〃,&a);printf(〃請輸入這個月開始的一天屬于星期幾:(『星期日,日星期二.....):〃);scanf(〃%d〃,&b);n=0;for(j=l;j<b;j++)(printf(〃\t〃);n++;)for(k=l;k<a;k++)printf(〃%d\t〃,k);n++;if(n%7==0)printf(〃\n〃);)printf(〃\n〃);printf(z,請輸入菜單項 \n〃);return0;}intjudge(intn)(inti=0;for(i=2;i〈n;i++)(if(n%i==0)(return0;)}return1;printf(〃\n〃);printf(z,請輸入菜單項 \n〃);)intf4()(inta=0;intb=0;printf(〃輸入一個整數(shù)(如果是素數(shù),返回結果1,否則返回0):〃);scanf(〃%d〃,&a);b=judge(a);printf(〃%d\n〃,b);printf(〃\n〃);printf(z,請輸入菜單項 \n〃);return0;)intmysort(intx[],intn)(inti,j,t;for(i=0;i<n;i++){for(j=0;j<n-i-l;j++)t=x[j];x[j]=x[j+l];x[j+l]=t;returnx[j];)intf5(){intx[1000];inti,n,j,m,t;printf(〃請輸入數(shù)據的個數(shù):〃);scanf&n);printf(〃原始排序:〃);for(i=0;i<n;i++)(scanf(〃%d〃,&x[i]);)mysort(x,n);for(i=0;i<n-l;i++)(printf(〃%d〃,x[i]);)printf(〃%d\n”,x[n-l]);printf(〃\n〃);printf(,z請輸入菜單項 \n〃);return0;)intmain()inta;printf(〃**************************\n〃);printf(〃主菜單:(完成人:)\n〃);printf(〃L字母數(shù)字轉換\n〃);printf("2.獎金發(fā)放\n〃);printf(〃3.打印月歷\n〃);printf(,z4.打印素數(shù)\n〃);printf(〃5.整數(shù)排序\n〃);printf(〃6.退出\n〃);printf(〃**************************\n〃);printf(〃請輸入菜單項 \n〃);while(scanf(〃%d〃,&a)!=E0F&&a!=6)switch(a)(case1:f1();break;case2:f2();break;case3:f3();break;case4:f4();break;case5:f5();break;default:ma.in();)return0;提示:請利用數(shù)軸來分界,定位。建議把獎金定義為實型。在主程序中輸入當月利潤,調用此函數(shù),返回得到應發(fā)放的獎金,再打印輸出此結果。.打印月歷編寫一個函數(shù),打印一個月的月歷。函數(shù)的參數(shù)是要打印月份的天數(shù)以及本月第一天是星期幾。在主程序中輸入要打印月份的天數(shù)以及本月第一天是星期幾,然后調用此函數(shù)打印輸出月歷。.打印素數(shù)編寫一個函數(shù),判斷一個數(shù)是不是素數(shù),如果是素數(shù),返回結果1,否則返回0。在主程序中輸入一個整數(shù),調用此函數(shù),根據函數(shù)返回結果打印輸出該輸入的數(shù)是不是素數(shù)。.整數(shù)排序編寫一個函數(shù),實現(xiàn)對n個整數(shù)進行排序。函數(shù)的參數(shù)是整數(shù)的個數(shù)及用于存放這n個整數(shù)的數(shù)組,排序后的結果仍然存放在該數(shù)組中。在主程序中輸入n個整數(shù),調用此函數(shù),然后再打印輸出函數(shù)返回的排序后的結果數(shù)組。.退出輸入菜單項的第6項,退出整個程序的運行。三、程序中所有自己定義的函數(shù)之間的調用關系圖四、程序運行結果屏幕截圖(注意,每個功能一個截圖)1、主菜單截圖”而工;期X2M修舛人鷹和!主菜嬖:(完成人:L字母數(shù)子轉換.獎金發(fā)放K打印月歷.打印發(fā)數(shù)員整數(shù)排序.退出*******************###^^#卜一請檢入菜單項 1責愉入電話號碼.以蟠結束1-800-COL-LECTS1-800-265-5328匚 請輸入菜單項 6pressanykeytocontinue3、“獎金發(fā)放”功能截圖4、“打印月歷”功能截圖——請輸入菜單項 &人?個整數(shù)(如果是素數(shù).返回結果1.否則返回0):3■一~~WI輸入菜單項一一ressanvkevtocontinue完7放歷數(shù)字:(數(shù)發(fā)月索推單母金印印數(shù)出填字獎打打整退13?C:\USERS\86159VDESKTOP\Debu主渠單:(完成人:1字母數(shù)字轉換"獎金發(fā)放K打印月歷4.打卬去長KiHm9.退出— —一******************率*******P——請輸入菜單項 一諦轆入數(shù)據的個如5原始排序:1683413468k——請輸入菜隼項 PPressanykeytocontinue五、實驗總結(調試程序的心得體會、發(fā)現(xiàn)的問題以及是如何解決的,學習本課程的收獲以及建議等,不少于300字)c語言實驗報告和現(xiàn)代計算機技術的實際應用相結合,是我們在本階段學完理論課程之后對自己該方面的能力的一次很好的檢驗,從開始的算法思路到運行調試后的美觀的圖形界面以及另人興奮的可用程序,都是一個很好的學習和鍛煉的過程。使我們鞏固了原有的理論知識,培養(yǎng)了我們靈活運用和組合集成所學過知識及技能來分析、解決實際問題的能力。使我們體會到自身知識和能力能在實際中的應用和發(fā)揮。不但可以激發(fā)創(chuàng)新意識,還可以開發(fā)創(chuàng)造能力、培養(yǎng)溝通能力。調試程序的時候我有過山窮水盡的困惑,對著密密麻麻的代碼看了一遍又一遍,始終找不出error,查閱各種資料,一遍一遍地修改,最后豁然開朗。一個多禮拜的掙扎,絞盡腦汁終于帶著麻木的手指和大腦脫出那堆‘'泥潭"?,F(xiàn)在的心情是如魚得水,干澀的眼睛前方是萬里睛空。終于,所有的努力即將化成了一份屬于自己的實驗報告,心里也在默默的感慨著:“有志者,事竟成,破釜沉舟,百二秦關終歸楚??嘈娜耍觳回?臥薪嘗膽,三千越甲可吞吳。〃學習程序設計要有死磕到底的恒心、常人所不能及的毅力,學習程序設計就是蓋房子,要有牢靠的地基,我們才能建起高樓大廈。六、程序清單#include<stdio.h>#include<stdlib.h>intfl()(charch;printf(〃請輸入電話號碼,以#鍵結束〃);while((ch=getchar())!='#')if(ch

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論