




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
一、實驗的目的1、學習在VC++環境下編輯調試C語言程序的方法。2、掌握在C語言中的各種數據類型,以及如何定義整型、實型、字符型的變量,并進行賦值的方法。3、掌握順序程序的思路,特別是賦值語句的使用方法。4、掌握各種類型數據的輸入輸出方法的正確應用,熟悉各種格式控制符的作用。5、學會在選擇結構中正確應用關系表達式及邏輯表達式。6、熟練掌握if語句和switch語句的使用。7、學會選擇結構問題算法的編制與調試應用。8、熟練掌握while語句、do-while語句和for語句實現循環的方法。9、學會循環問題的編制與調試、運行。二、實驗內容與要求本實驗涵蓋順序、選擇、循環三部分程序設計的應用,要求每部分完成兩個問題的源代碼的編輯、編譯、連接與運行,最終產生相關的運行結果,按規定要求提交相應的實驗報告。具體要求完成的問題如下:(譚浩強C語言第四版)(1)P82/2(2)P84/6(3)P112/6(4)P113/9(5)P140/3(6)P141/16三、算法設計思想(1)P82/2:存款利息的計算。有1000元,想存5年,可按以下5種辦法存:(1)一次存5年。(2)先存2年期,到期后將本息再存3年期。(3)先存3年期,到期后將本息再存2年期。(3)存1年期,到期后將本息再存1年期,連續存5次。(2)存活期,活期利息每一季度結算一次。2007年12月的銀行存款利息如下:1年期定期存款利息為4.14%;2年期定期存款利息為4.68%;3年期定期存款利息為5.4%;5年期定期存款利息為5.85%;活期存款利息為0.72%(活期利息每一季度結算一次利息)。如果為年利率,為存款年數,則計算本息和點的公式是:1年期本息和:p=1000*(1+r).年期本息和:p=1000*(1+n*r).存次年期的本息和:p=1000*pow(1+r,n).活期存款本息和:p=1000*pow(1+r/4,4n).說明:1000*(1+r/4)是一個季度的本息和.定義數據類型,進行相關運算并輸出結果P84/6:請編程序將“China”譯成密碼,密碼規律是:用原來的字母后面第4個字母代替原來的字母。例如,字母“A”后面第4個字母是“E”,用“E”代替“A”。因此,“China”應為“Glmre”。請編一程序,用賦初值的方法使c1,c2,c3,c4,c5這5個變量的值分別為‘C’,‘h’,‘i’,‘n’,‘a’,經過計算,使c1,c2,c3,c4,cc5分別變為‘G’,‘1’,‘m’,‘r’,‘e’。分別用putchar函數和printf函數輸出這5個字符。定義字符常量,進行ASCII值的運算,輸出對應字符,注意對輸出字符的格式聲明。P112/6:有一函數:Y=x(x<1)&&2x-1(1<=x&&x<10)&&3x-11(x>=10)寫程序,輸入X的值,輸出Y相應的值。用if語句判斷x的值,根據x的值決定計算后y的值。因為y的可能值不是兩個而是3個,所以不能只用一個簡單的if語句,而應用嵌套的if語句來實現。P113/9:給一個不多于5位的正整數,要求:1.求出它是幾位數;2分別輸出每一位數字;3按逆序輸出個位數字,例如原數是321,應輸出123用if語句判定數字的位數,進行一系列的運算輸出每一位數字,用switch語句進行檢查得到逆序輸出結果。P140/3:輸入兩個正整數m和n,求其最大公約數和最小公倍數。用輾轉相處法可以進行函數嵌套調用,求出最大公約數和最小公倍數。P141/16:輸出一下圖案:*********"""""""***********用循環的嵌套來處理此問題,用if語句實現循環與判斷進行相應字符的輸出。四、源程序代碼P82/2:#include<stdio.h>#include<math.h>intmain(){floatp0=1000,r1=4?14,r2=4?68,r3=5?4,r4=5?85;floatp1,p2,p3,p4,p5;p1=p0*(1+5*r4/100.0)-p0;p2=p0*(1+2*r2/100?0)*(1+3*r3/100.0)-p0;p3=p0*(1+3*r3/100.0)*(1+2*r2/100.0)-p0;p4=p0*pow(1+r1/100.0,5.0)-p0;p5=p0*pow(1+0.72/(4*100.0),4*5?0)-p0;printf("p1=%7.2f\np2=%7.2f\np3=%7.2f\n",p1,p2,p3);printf("p4=%7.2f\np5=%7.2f\n”,p4,p5);return0;}P84/6:#include<stdio.h>intmain(){charc1='C',c2='h',c3='i',c4='n',c5='a';c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;printf("譯為密碼為:%c%c%c%c%c\n”,c1,c2,c3,c4,c5);return0;}P112/6:#include<stdio.h>intmain(){intx,y;printf("請輸入一個數:");scanf("%d”,&x);if(x<1)y=x;elseif(1<=x&&x<10)y=2*x-1;elsey=3*x-11;printf("y的值為:%d\n",y);return0;}P113/9:#include<stdio.h>#include<math.h>intmain(){intnum,indiv,ten,hundred,thousand,ten_thousand,place;printf("請輸入一個整數(0-99999):");scanf("%d”,&num);if(num>9999)place=5;elseif(num>999)place=4;elseif(num>99)place=3;elseif(num>9)place=2;elseplace=1;printf("位數:%d\n”,place);printf("每位數字為:");ten_thousand=num/10000;thousand=(int)(num-ten_thousand*10000)/1000;hundred=(int)(num-ten_thousand*10000-thousand*1000)/100;ten=(int)(num-ten_thousand*10000-thousand*1000-hundred*100)/10;indiv=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10);switch(place){case5:printf("%d%d%d%d%d\n",ten_thousand,thousand,hundred,ten,indiv);printf(-逆序輸出各位數字:");printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,ten_thousand);break;case4:printf("%d%d%d%d\n",thousand,hundred,ten,indiv);printf(-逆序輸出各位數字:");printf("%d%d%d%d\n”,indiv,ten,hundred,thousand);break;case3:printf("%d%d%d\n”,hundred,ten,indiv);printf("逆序輸出各位數字:");printf("%d%d%d\n”,indiv,ten,hundred);break;case2:printf("%d%d\n”,ten,indiv);printf("逆序輸出各位數字:");printf("%d%d\n”,indiv,ten);break;case1:printf("%d\n”,indiv);printf(-逆序輸出各位數字:");printf("%d\n”,indiv);break;}return0;}P140/3:#include<stdio.h>intmain(){intp,r,n,m,temp;printf("請輸入兩個正整數n,m:");scanf("%d,%d",&n,&m);if(n<m){temp=n;n=m;m=temp;}p=n*m;while(m!=0){r=n%m;n=m;m=r;}printf("它們的最大公約數為:%d\n”,n);printf("它們的最小公倍數為:%d\n”,p);return0;}P141/16:#include<stdio.h>#include<math.h>intmain(){inti,j,k;for(i=0;i<=3;i++){for(j=0;j<=2-i;j++)printf(-");for(k=0;k<=2*i;k++)printf("*");printf("\n");}for(i=0;i<=2;i++){for(j=0;j<=i;j++)printf("");for(k=0;k<=4-2*i;k++)printf("*");printf("\n");}}五、運行結果及分析(1)P82/2:(2)P84/6:件為密碼為:cm典Presskeytocontinue(3)P112/6:III:(4)P113/9:
<0-99999>:10000停位數字為二1酒鮑甌序琦i由含位數字二9^01i*ressanykeytocontinueII:烹蔓入一個整數<0-99999>:10^0莓位皺字為泌那疲序輸由各位數字誠嗨]L^pess<0-99999>:10000停位數字為二1酒鮑甌序琦i由含位數字二9^01i*ressanykeytocontinueII:烹蔓入一個整數<0-99999>:10^0莓位皺字為泌那疲序輸由各位數字誠嗨]L^pessanvkeytocontinueI:(5)P140/3:個為各y一san7V:2數輸,爨位序espr0SMJ:1位ke僅供學習交流參考*L*pessanykeytocontinue六、結論與體會(在上機程序調試中遇到的問題、采用的解決辦法、得到的收獲)C語言的學習
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 海藻肥的技術標準
- 2025年陜西貨運從業資格證考試題目和答案解析
- 2025年遼寧a2貨運從業資格證考試
- 當歸生物學特征
- 鄉鎮人才工作情況匯報編排
- 16魯濱孫漂流記76670
- 中學七年級數學上冊《25-有理數的減法》課件-(新版)北師大版
- 全國安全交通日觀后感
- 管理工作方案
- 低溫液體儲槽操作培訓
- GB/T 39802-2021城鎮供熱保溫材料技術條件
- GB/T 2792-2014膠粘帶剝離強度的試驗方法
- GB/T 21566-2008危險品爆炸品摩擦感度試驗方法
- GB/T 215-2003煤中各種形態硫的測定方法
- GB/T 17492-2012工業用金屬絲編織網技術要求和檢驗
- GB/T 17207-2012電子設備用固定電容器第18-1部分:空白詳細規范表面安裝固體(MnO2)電解質鋁固定電容器評定水平EZ
- GB/T 16886.7-2001醫療器械生物學評價第7部分:環氧乙烷滅菌殘留量
- 國開電大《人員招聘與培訓實務》形考任務4國家開放大學試題答案
- 鐵路職工政治理論應知應會題庫
- 中考復習確定二次函數的解析式課件
- 音樂歌曲網上搜課件
評論
0/150
提交評論