C語言編程實(shí)驗(yàn)_第1頁
C語言編程實(shí)驗(yàn)_第2頁
C語言編程實(shí)驗(yàn)_第3頁
C語言編程實(shí)驗(yàn)_第4頁
C語言編程實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 C語言實(shí)驗(yàn)習(xí)題7-1輸出圖形(10分)編寫程序輸出圖形。第一行輸出12個(gè)$,第二行先輸出3個(gè)空格,然后再輸出hello!,第三行輸出12個(gè)$輸入樣例:無輸入輸出樣例:$ hello!$代碼:#include int main() printf($n hello!n $n); return 0 ;7-5計(jì)算華氏溫度(5分)本題要求編寫程序,計(jì)算攝氏溫度26C 對(duì)應(yīng)的華氏溫度。計(jì)算公式:F=9C/5+32,式中:C表示攝氏溫度,F(xiàn)表示華氏溫度,輸出數(shù)據(jù)要求為整型。輸入格式:本題目沒有輸入。輸出格式:按照下列格式輸出celsius = 26, fahr = 對(duì)應(yīng)的華氏溫度整數(shù)值代碼:#includ

2、e int main() int f; int c; c=26; f=9*c/5+32; printf(celsius = 26, fahr = %d,f); return 0 ;7-9逆序的三位數(shù)(10分)程序每次讀入一個(gè)正3位數(shù),然后輸出按位逆序的數(shù)字。注意:當(dāng)輸入的數(shù)字含有結(jié)尾的0時(shí),輸出不應(yīng)帶有前導(dǎo)的0。比如輸入700,輸出應(yīng)該是7。輸入格式:每個(gè)測(cè)試是一個(gè)3位的正整數(shù)。輸出格式:輸出按位逆序的數(shù)。輸入樣例:123輸出樣例:321代碼:#include int main()int n,a,b,c;scanf(%d,&n);a=n/100;b=n/10-a*10;c=n-a*100-b*

3、10;int d;d=a+b*10+c*100;printf(%d,d);return 0 ;7-10整數(shù)四則運(yùn)算(10分)本題要求編寫程序,計(jì)算2個(gè)正整數(shù)的和、差、積、商并輸出。題目保證輸入和輸出全部在整型范圍內(nèi)。輸入格式:輸入在一行中給出2個(gè)正整數(shù)A和B。輸出格式:在4行中按照格式“A 運(yùn)算符 B = 結(jié)果”順序輸出和、差、積、商。輸入樣例:3 2輸出樣例:3 + 2 = 53 - 2 = 13 * 2 = 63 / 2 = 1代碼:#include int main() int A,B; scanf(%d %d,&A,&B); int c,d,e,f; c=A+B; d=A-B; e=A

4、*B; f=A/B; printf(%d + %d = %dn %d - %d = %dn %d * %d = %dn %d / %d = %dn,A,B,c,A,B,d,A,B,e,A,B,f); return 0 ; 7-11求整數(shù)均值(10分)本題要求編寫程序,計(jì)算4個(gè)整數(shù)的和與平均值。題目保證輸入與輸出均在整型范圍內(nèi)。輸入格式:輸入在一行中給出4個(gè)整數(shù),其間以空格分隔。輸出格式:在一行中按照格式“Sum = 和; Average = 平均值”順序輸出和與平均值,其中平均值精確到小數(shù)點(diǎn)后一位。輸入樣例:1 2 3 4輸出樣例:Sum = 10; Average = 2.5代碼:#incl

5、ude int main() int a = 1, b = 1, c = 1, d = 1; double average = 1.0; scanf (%d %d %d %d, &a, &b,&c,&d); int Average; average = (double) (a + b + c + d) / 4; int sum; sum=a+b+c+d; printf (Sum = %d; Average = %.1lfn,sum, average); return 0;7-1三天打魚兩天曬網(wǎng)(15分)中國有句俗語叫“三天打魚兩天曬網(wǎng)”。假設(shè)某人從某天起,開始“三天打魚兩天曬網(wǎng)”,問這個(gè)人在以

6、后的第N天中是“打魚”還是“曬網(wǎng)”?輸入格式:輸入在一行中給出一個(gè)不超過1000的正整數(shù)N。輸出格式:在一行中輸出此人在第N天中是“Fishing”(即“打魚”)還是“Drying”(即“曬網(wǎng)”),并且輸出“in day N”。輸入樣例1:103輸出樣例1:Fishing in day 103輸入樣例2:34輸出樣例2:Drying in day 34代碼:#include int main() int N,b; N=1000; scanf(%d,&N); b=N%5; if (b=4|b=0) printf(Drying in day %d,N); else printf(Fishing i

7、n day %d,N); return 0;7-2計(jì)算符號(hào)函數(shù)的值(15分)對(duì)于任一整數(shù)n,符號(hào)函數(shù)sign(n)的定義如下:請(qǐng)編寫程序計(jì)算該函數(shù)對(duì)任一輸入整數(shù)的值。輸入格式:輸入在一行中給出整數(shù)n。輸出格式:在一行中按照格式“sign(n) = 函數(shù)值”輸出該整數(shù)n對(duì)應(yīng)的函數(shù)值。輸入樣例1:10輸出樣例1:sign(10) = 1輸入樣例2:0輸出樣例2:sign(0) = 0輸入樣例3:-98輸出樣例3:sign(-98) = -1代碼:#include int main() int n; scanf(%d,&n); n0?(printf(sign(%d) = -1,n) : n=0?(p

8、rintf(sign(%d) = 0,n): printf(sign(%d) = 1,n);7-3階梯電價(jià)(15分)為了提倡居民節(jié)約用電,某省電力公司執(zhí)行“階梯電價(jià)”,安裝一戶一表的居民用戶電價(jià)分為兩個(gè)“階梯”:月用電量50千瓦時(shí)(含50千瓦時(shí))以內(nèi)的,電價(jià)為0.53元/千瓦時(shí);超過50千瓦時(shí)的,超出部分的用電量,電價(jià)上調(diào)0.05元/千瓦時(shí)。請(qǐng)編寫程序計(jì)算電費(fèi)。輸入格式:輸入在一行中給出某用戶的月用電量(單位:千瓦時(shí))。輸出格式:在一行中輸出該用戶應(yīng)支付的電費(fèi)(元),結(jié)果保留兩位小數(shù),格式如:“cost = 應(yīng)付電費(fèi)值”;若用電量小于0,則輸出Invalid Value!。輸入樣例1:10輸出

9、樣例1:cost = 5.30輸入樣例2:100輸出樣例2:cost = 55.50代碼:#include int main() int a; double b; scanf (%d,&a); if (a=0&a50.0) b=(0.58*(a-50)+26.5); printf(cost = %.2lfn,b);7-4計(jì)算油費(fèi)(15分)現(xiàn)在90號(hào)汽油6.95元/升、93號(hào)汽油7.44元/升、97號(hào)汽油7.93元/升。為吸引顧客,某自動(dòng)加油站推出了“自助服務(wù)”和“協(xié)助服務(wù)”兩個(gè)服務(wù)等級(jí),分別可得到5%和3%的折扣。本題要求編寫程序,根據(jù)輸入顧客的加油量a,汽油品種b(90、93或97)和服務(wù)類

10、型c(m - 自助,e - 協(xié)助),計(jì)算并輸出應(yīng)付款。輸入格式:輸入在一行中給出兩個(gè)整數(shù)和一個(gè)字符,分別表示顧客的加油量a,汽油品種b(90、93或97)和服務(wù)類型c(m - 自助,e - 協(xié)助)。輸出格式:在一行中輸出應(yīng)付款額,保留小數(shù)點(diǎn)后2位。輸入樣例:40 97 m輸出樣例:301.34代碼:#include #include int main() int a,b; double m1,m2; char c; scanf(%d %d %c,&a,&b,&c); switch(b) case 90: m1=6.95*a; break; case 93: m1=7.44*a; break;

11、case 97: m1=7.93*a; break; switch(c) case(m): m2=0.95*m1;break; case(e): m2=0.97*m1;break; printf(%.2lf,m2);7-5兩個(gè)數(shù)的簡(jiǎn)單計(jì)算器(15分)本題要求編寫一個(gè)簡(jiǎn)單計(jì)算器程序,可根據(jù)輸入的運(yùn)算符,對(duì)2個(gè)整數(shù)進(jìn)行加、減、乘、除或求余運(yùn)算。題目保證輸入和輸出均不超過整型范圍。輸入格式:輸入在一行中依次輸入操作數(shù)1、運(yùn)算符、操作數(shù)2,其間以1個(gè)空格分隔。操作數(shù)的數(shù)據(jù)類型為整型,且保證除法和求余的分母非零。輸出格式:當(dāng)運(yùn)算符為+、-、*、/、%時(shí),在一行輸出相應(yīng)的運(yùn)算結(jié)果。若輸入是非法符號(hào)(即除了

12、加、減、乘、除和求余五種運(yùn)算符以外的其他符號(hào))則輸出ERROR。輸入樣例1:-7 / 2輸出樣例1:-3輸入樣例2:3 & 6輸出樣例2:ERROR代碼:#include #include int main() int a,b,d; char c; scanf(%d %c %d,&a,&c,&b); if(c=+|c=-|c=*|c=/|c=%) switch (c) case +: printf(%d,a+b);break; case -: printf(%d,a-b);break; case *: printf(%d,a*b);break; case /: printf(%d,a/b);b

13、reak; case %: printf(%d,a%b);break; else printf(ERROR);7-1生成3的乘方表(15分)輸入一個(gè)非負(fù)整數(shù)n,生成一張3的乘方表,輸出303n的值??烧{(diào)用冪函數(shù)計(jì)算3的乘方。輸入格式:輸入在一行中給出一個(gè)非負(fù)整數(shù)n。輸出格式:按照冪的遞增順序輸出n+1行,每行格式為“pow(3,i) = 3的i次冪的值”。題目保證輸出數(shù)據(jù)不超過長整型整數(shù)的范圍。輸入樣例:3輸出樣例:pow(3,0) = 1pow(3,1) = 3pow(3,2) = 9pow(3,3) = 27代碼:#include #include int main() int n,i,r

14、esult; scanf(%d,&n); for(i=0;i=n;i+) result=pow(3,i); printf(pow(3,%d) = %dn,i,result); 7-2奇偶分家(15分)給定N個(gè)正整數(shù),請(qǐng)統(tǒng)計(jì)奇數(shù)和偶數(shù)各有多少個(gè)?輸入格式:輸入第一行給出一個(gè)正整N(1000);第2行給出N個(gè)正整數(shù),以空格分隔。輸出格式:在一行中先后輸出奇數(shù)的個(gè)數(shù)、偶數(shù)的個(gè)數(shù)。中間以1個(gè)空格分隔。輸入樣例:988 74 101 26 15 0 34 22 77輸出樣例:3 6代碼:#include int main() int n,i,g,k,a=0,b=0; scanf(%d,&n); for(

15、i=0;in;i+) scanf(%d,&g); if(n1000) continue; k=g%2; switch(k) case 1: a+;break; case 0: b+;break; printf(%d %d,a,b); return 0;7-3找出最小值(15分)本題要求編寫程序,找出給定一系列整數(shù)中的最小值。輸入格式:輸入在一行中首先給出一個(gè)正整數(shù)n,之后是n個(gè)整數(shù),其間以空格分隔。輸出格式:在一行中按照“min = 最小值”的格式輸出n個(gè)整數(shù)中的最小值。輸入樣例:4 -2 -123 100 0輸出樣例:min = -123代碼:#include #include int ma

16、in() int i,m,n; scanf(%d,&n); int an; if(n1) ; else for (i=0;in;i+) scanf(%d,&ai); m=a0; for (i=0;iai) m=ai; printf(min = %d,m);7-4求平方根序列前N項(xiàng)和(15分)本題要求編寫程序,計(jì)算平方根序列1+2+3+的前N項(xiàng)之和。可包含頭文件math.h,并調(diào)用sqrt函數(shù)求平方根。輸入格式:輸入在一行中給出一個(gè)正整數(shù)N。輸出格式:在一行中按照“sum = S”的格式輸出部分和的值S,精確到小數(shù)點(diǎn)后兩位。題目保證計(jì)算結(jié)果不超過雙精度范圍。輸入樣例:10輸出樣例:sum = 2

17、2.47代碼:#include #include int main() int i,n; double sum=0; scanf(%d,&n); for(i=1;i=n;i+) sum+=sqrt(i); printf(sum = %.2lf,sum);7-5統(tǒng)計(jì)學(xué)生平均成績與及格人數(shù)(15分)本題要求編寫程序,計(jì)算學(xué)生們的平均成績,并統(tǒng)計(jì)及格(成績不低于60分)的人數(shù)。題目保證輸入與輸出均在整型范圍內(nèi)。輸入格式:輸入在第一行中給出非負(fù)整數(shù)N,即學(xué)生人數(shù)。第二行給出N個(gè)非負(fù)整數(shù),即這N位學(xué)生的成績,其間以空格分隔。輸出格式:按照以下格式輸出:average = 成績均值count = 及格人數(shù)

18、其中平均值精確到小數(shù)點(diǎn)后一位。輸入樣例:577 54 92 73 60輸出樣例:average = 71.2count = 4代碼:#include main() int n, i, a, count = 0, sum = 0; float d; scanf(%d, &n); if ( n = 0) printf(average = 0.0n); printf(count = 0); else for (i = 0; i = 60) count+; d = (float)sum /(float) n; printf(average = %.1fn, d); printf(count = %d,

19、 count); 7-6尋找250(15分)對(duì)方不想和你說話,并向你扔了一串?dāng)?shù) 而你必須從這一串?dāng)?shù)字中找到“250”這個(gè)高大上的感人數(shù)字。輸入格式:輸入在一行中給出不知道多少個(gè)絕對(duì)值不超過1000的整數(shù),其中保證至少存在一個(gè)“250”。輸出格式:在一行中輸出第一次出現(xiàn)的“250”是對(duì)方扔過來的第幾個(gè)數(shù)字(計(jì)數(shù)從1開始)。題目保證輸出的數(shù)字在整型范圍內(nèi)。輸入樣例:888 666 123 -233 250 13 250 -222輸出樣例:5代碼: #include #include int main() int i,n,m; for (i=1;i+) scanf(%d,&n); if(n=250)

20、 break; m=i; printf(%d,m);7-7猴子吃桃問題(15分)一只猴子第一天摘下若干個(gè)桃子,當(dāng)即吃了一半,還不過癮,又多吃了一個(gè);第二天早上又將剩下的桃子吃掉一半,又多吃了一個(gè)。以后每天早上都吃了前一天剩下的一半加一個(gè)。到第N天早上想再吃時(shí),見只剩下一個(gè)桃子了。問:第一天共摘了多少個(gè)桃子?輸入格式:輸入在一行中給出正整數(shù)N(1N10)。輸出格式:在一行中輸出第一天共摘了多少個(gè)桃子。輸入樣例:3輸出樣例:10代碼:#include #include int main() int a,b,n; scanf(%d,&n); a=pow(2,n-1); printf(%d,3*a-2

21、);7-8大笨鐘(15分)微博上有個(gè)自稱“大笨鐘V”的家伙,每天敲鐘催促碼農(nóng)們愛惜身體早點(diǎn)睡覺。不過由于笨鐘自己作息也不是很規(guī)律,所以敲鐘并不定時(shí)。一般敲鐘的點(diǎn)數(shù)是根據(jù)敲鐘時(shí)間而定的,如果正好在某個(gè)整點(diǎn)敲,那么“當(dāng)”數(shù)就等于那個(gè)整點(diǎn)數(shù);如果過了整點(diǎn),就敲下一個(gè)整點(diǎn)數(shù)。另外,雖然一天有24小時(shí),鐘卻是只在后半天敲112下。例如在23:00敲鐘,就是“當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)”,而到了23:01就會(huì)是“當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)當(dāng)”。在午夜00:00到中午12:00期間(端點(diǎn)時(shí)間包括在內(nèi)),笨鐘是不敲的。下面就請(qǐng)你寫個(gè)程序,根據(jù)當(dāng)前時(shí)間替大笨鐘敲鐘。輸入格式:輸入第一行按照hh:mm的格式給出當(dāng)前時(shí)間。

22、其中hh是小時(shí),在00到23之間;mm是分鐘,在00到59之間。輸出格式:根據(jù)當(dāng)前時(shí)間替大笨鐘敲鐘,即在一行中輸出相應(yīng)數(shù)量個(gè)Dang。如果不是敲鐘期,則輸出:Only hh:mm. Too early to Dang.其中hh:mm是輸入的時(shí)間。輸入樣例1:19:05輸出樣例1:DangDangDangDangDangDangDangDang輸入樣例2:07:05輸出樣例2:Only 07:05. Too early to Dang.代碼:#include #include int main() int a,b,n,i; char c; scanf(%2d%c%2d,&a,&c,&b); if(a=0&a=11)|(a=12&b=0) printf(Only %02d:%02d. Too early to Dang.,a,b); else if(b=0) for(i=0;ia-12;i+) printf(Dang); else if(b!=0) for(i=0;ia-11;i+) printf(Dang);7-9輸出三角形字符陣列(15分)本題要求編寫程序,輸出n行由大寫字母A開始構(gòu)成的三角形字符陣列。輸入格式:輸入在一行中給出一個(gè)正整數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論