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

下載本文檔

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

文檔簡(jiǎn)介

C語(yǔ)言實(shí)驗(yàn)習(xí)題7-1輸出圖形(10分)編寫程序輸出圖形。第一行輸出12個(gè)$,第二行先輸出3個(gè)空格,然后再輸出hello!,第三行輸出12個(gè)$輸入樣例:無(wú)輸入輸出樣例:$$$$$$$$$$$$hello!$$$$$$$$$$$$代碼:#include<stdio.h>intmain(){printf("$$$$$$$$$$$$\n""hello!\n""$$$$$$$$$$$$\n");return0;}7-5計(jì)算華氏溫度(5分)本題要求編寫程序,計(jì)算攝氏溫度26°C對(duì)應(yīng)的華氏溫度。計(jì)算公式:F=9XC/5+32,式中:C表示攝氏溫度,F(xiàn)表示華氏溫度,輸出數(shù)據(jù)要求為整型。輸入格式:本題目沒有輸入。輸出格式:按照下列格式輸出celsius=26,fahr=對(duì)應(yīng)的華氏溫度整數(shù)值代碼:#include<stdio.h>intmain(){intf;intc;c=26;f=9*c/5+32;printf("celsius=26,fahr=%d",f);return0;}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<stdio.h>intmain(){intn,a,b,c;scanf(〃%d〃,&n);a=n/100;b=n/10-a*10;c=n-a*100-b*10;intd;d=a+b*10+c*100;printf(〃%d〃,d);return0;}7-10整數(shù)四則運(yùn)算(10分)本題要求編寫程序,計(jì)算2個(gè)正整數(shù)的和、差、積、商并輸出。題目保證輸入和輸出全部在整型范圍內(nèi)。輸入格式:輸入在一行中給出2個(gè)正整數(shù)A和B。輸出格式:在4行中按照格式“A運(yùn)算符B=結(jié)果”順序輸出和、差、積、商。輸入樣例:輸出樣例:代碼:#include<stdio.h>intmain(){intA,B;scanf("%d%d〃,&A,&B);intc,d,e,f;c=A+B;d=A-B;e=A*B;f=A/B;printf("%d+%d=%d\n""%d-%d=%d\n""%d*%d=%d\n""%d/%d=%d\n”,A,B,c,A,B,d,A,B,e,A,B,f)return0}7-11求整數(shù)均值(10分)本題要求編寫程序,計(jì)算4個(gè)整數(shù)的和與平均值。題目保證輸入與輸出均在整型范圍內(nèi)。輸入格式:輸入在一行中給出4個(gè)整數(shù),其間以空格分隔。輸出格式:在一行中按照格式“Sum=和;Average=平均值”順序輸出和與平均值,其中平均值精確到小數(shù)點(diǎn)后一位。輸入樣例:1234輸出樣例:代碼:#include<stdio.h>intmain(){inta=1,b=1,c=1,d=1;doubleaverage=1.0;scanf("%d%d%d%d",&a,&b,&c,&d);intAverage;average=(double)(a+b+c+d)/4;intsum;sum=a+b+c+d;printf("Sum=%d;Average=%.1lf\n〃,sum,average);return0;7-1三天打魚兩天曬網(wǎng)(15分)中國(guó)有句俗語(yǔ)叫“三天打魚兩天曬網(wǎng)”。假設(shè)某人從某天起,開始“三天打魚兩天曬網(wǎng)”,問(wèn)這個(gè)人在以后的第N天中是“打魚”還是“曬網(wǎng)”?輸入格式:輸入在一行中給出一個(gè)不超過(guò)1000的正整數(shù)N。輸出格式:在一行中輸出此人在第N天中是“Fishing”(即“打魚”)還是“Drying”(即“曬網(wǎng)”),并且輸出“indayN”。輸入樣例1:103輸出樣例1:Fishinginday103輸入樣例2:34輸出樣例2:Dryinginday34代碼:#include<stdio.h>intmain(){intN,b;N<=1000;scanf(〃%d〃,&N);b=N%5;if(b==4||b==0)printf("Dryinginday%d",N);elseprintf("Fishinginday%d",N);return0;}7-2計(jì)算符號(hào)函數(shù)的值(15分)對(duì)于任一整數(shù)n,符號(hào)函數(shù)sign(n)的定義如下:-1 <0)S£gn(n)=< 0(n=0)[1(?>0)請(qǐng)編寫程序計(jì)算該函數(shù)對(duì)任一輸入整數(shù)的值。輸入格式:輸入在一行中給出整數(shù)n。輸出格式:在一行中按照格式"sign(n)=函數(shù)值”輸出該整數(shù)n對(duì)應(yīng)的函數(shù)值。輸入樣例1:輸出樣例1:sign(10)=1輸入樣例2:0輸出樣例2:sign(0)=0輸入樣例3:-98輸出樣例3:sign(-98)=-1代碼:#include<stdio.h>intmain(){intn;scanf(〃%d〃,&n);n<0?(printf("sign(%d)=T〃,n)):n==0?(printf(〃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í);超過(guò)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,則輸出"InvalidValue!”。輸入樣例1:10輸出樣例1:輸入樣例2:輸出樣例2:cost=55.50代碼:#include<stdio.h>intmain(){inta;doubleb;scanf(〃%d〃,&a);if(a<0)printf("InvalidValue!\n〃);elseif(a>=0&&a<=50.0){b=(0.53*a);printf("cost=%.2lf\n〃,b);}elseif(a>50.0){b=(0.58*(a-50)+26.5);printf("cost=%.2lf\n〃,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ù)類型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位。輸入樣例:4097m輸出樣例:301.34代碼:#include<stdio.h>#include<stdlib.h>intmain(){inta,b;doublem1,m2;charc;scanf("%d%d%c”,&a,&b,&c);switch(b){case90:m1=6.95*a;break;case93:m1=7.44*a;break;case97: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)算。題目保證輸入和輸出均不超過(guò)整型范圍。輸入格式:輸入在一行中依次輸入操作數(shù)1、運(yùn)算符、操作數(shù)2,其間以1個(gè)空格分隔。操作數(shù)的數(shù)據(jù)類型為整型,且保證除法和求余的分母非零。輸出格式:當(dāng)運(yùn)算符為+、-、*、/、%時(shí),在一行輸出相應(yīng)的運(yùn)算結(jié)果。若輸入是非法符號(hào)(即除了加、減、乘、除和求余五種運(yùn)算符以外的其他符號(hào))則輸出ERRORo輸入樣例1:-7/2輸出樣例1:輸入樣例2:輸出樣例2:代碼:#include<stdio.h>#include<stdlib.h>intmain(){inta,b,d;charc;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);break;case'%':printf(〃%d〃,a%b);break;}elseprintf(〃ERROR〃);}7-1生成3的乘方表(15分)輸入一個(gè)非負(fù)整數(shù)n,生成一張3的乘方表,輸出30?3n的值??烧{(diào)用冪函數(shù)計(jì)算3的乘方。輸入格式:輸入在一行中給出一個(gè)非負(fù)整數(shù)n。輸出格式:按照冪的遞增順序輸出n+1行,每行格式為“pow(3,i)=3的i次冪的值”。題目保證輸出數(shù)據(jù)不超過(guò)長(zhǎng)整型整數(shù)的范圍。輸入樣例:3輸出樣例:pow(3,0)=1pow(3,1)=3pow(3,2)=9pow(3,3)=27代碼:#include<stdio.h>#include<math.h>intmain(){intn,i,result;scanf(〃%d〃,&n);for(i=0;i<=n;i++){result=pow(3,i);printf("pow(3,%d)=%d\n",i,result);}}7-2奇偶分家(15分)給定N個(gè)正整數(shù),請(qǐng)統(tǒng)計(jì)奇數(shù)和偶數(shù)各有多少個(gè)?輸入格式:輸入第一行給出一個(gè)正整N(W1000);第2行給出N個(gè)正整數(shù),以空格分隔。輸出格式:在一行中先后輸出奇數(shù)的個(gè)數(shù)、偶數(shù)的個(gè)數(shù)。中間以1個(gè)空格分隔。輸入樣例:9887410126150342277輸出樣例:36代碼:#include<stdio.h>intmain(){intn,i,g,k,a=0,b=0;scanf(〃%d〃,&n);for(i=0;i<n;i++){scanf(〃%d〃,&g);if(n<0||n>1000)continue;k=g%2;switch(k){case1:a++;break;case0:b++;break;}}printf("%d%d”,a,b);return0;}7-3找出最小值(15分)本題要求編寫程序,找出給定一系列整數(shù)中的最小值。輸入格式:輸入在一行中首先給出一個(gè)正整數(shù)n,之后是n個(gè)整數(shù),其間以空格分隔。輸出格式:在一行中按照“min=最小值”的格式輸出n個(gè)整數(shù)中的最小值。輸入樣例:4-2-1231000輸出樣例:代碼:#include<stdio.h>#include<stdlib.h>intmain(){inti,m,n;scanf(〃%d〃,&n);inta[n];if(n<1);elsefor(i=0;i<n;i++)scanf(〃%d〃,&a[i]);m=a[0];for(i=0;i<n;i++){if(m>a[i])m=a[i];}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é)果不超過(guò)雙精度范圍。輸入樣例:輸出樣例:sum=22.47代碼:#include<stdio.h>#include<math.h>intmain()inti,n;doublesum=0;scanf(〃%d〃,&n);for(i=1;i<=n;i++){sum+=sqrt(i);}printf("sum=%.2lf",sum);}7-5統(tǒng)計(jì)學(xué)生平均成績(jī)與及格人數(shù)(15分)本題要求編寫程序,計(jì)算學(xué)生們的平均成績(jī),并統(tǒng)計(jì)及格(成績(jī)不低于60分)的人數(shù)。題目保證輸入與輸出均在整型范圍內(nèi)。輸入格式:輸入在第一行中給出非負(fù)整數(shù)N,即學(xué)生人數(shù)。第二行給出N個(gè)非負(fù)整數(shù),即這N位學(xué)生的成績(jī),其間以空格分隔。輸出格式:按照以下格式輸出:average=成績(jī)均值count=及格人數(shù)其中平均值精確到小數(shù)點(diǎn)后一位。輸入樣例:57754927360輸出樣例:average=71.2count=4代碼:#include<stdio.h>main(){intn,i,a,count=0,sum=0;floatd;scanf(〃%d〃,&n);if(n==0){printf("average=0.0\n〃);printf("count=0");}else{for(i=0;i<n;i++){scanf("%d",&a);sum=sum+a;if(a>=60)count++;}d=(float)sum/(float)n;printf("average=%.1f\n",d);printf("count=%d",count);}}7-6尋找250(15分)對(duì)方不想和你說(shuō)話,并向你扔了一串?dāng)?shù)對(duì)方不想和你說(shuō)話,并向你扔了一串?dāng)?shù)……而你必須從這一串?dāng)?shù)字中找到“250”這個(gè)高大上的感人數(shù)字。輸入格式:輸入在一行中給出不知道多少個(gè)絕對(duì)值不超過(guò)1000的整數(shù),其中保證至少存在一個(gè)“250”。輸出格式:在一行中輸出第一次出現(xiàn)的“250”是對(duì)方扔過(guò)來(lái)的第幾個(gè)數(shù)字(計(jì)數(shù)從1開始)。題目保證輸出的數(shù)字在整型范圍內(nèi)。輸入樣例:888666123-23325013250-222輸出樣例:代碼:#include<stdio.h>#include<stdlib.h>intmain(){inti,n,m;for(i=1;;i++){scanf(〃%d〃,&n);if(n==250)break;}m=i;printf(〃%d〃,m);}7-7猴子吃桃問(wèn)題(15分)一只猴子第一天摘下若干個(gè)桃子,當(dāng)即吃了一半,還不過(guò)癮,又多吃了一個(gè);第二天早上又將剩下的桃子吃掉一半,又多吃了一個(gè)。以后每天早上都吃了前一天剩下的一半加一個(gè)。到第N天早上想再吃時(shí),見只剩下一個(gè)桃子了。問(wèn):第一天共摘了多少個(gè)桃子?輸入格式:輸入在一行中給出正整數(shù)N(1<NW10)。輸出格式:在一行中輸出第一天共摘了多少個(gè)桃子。輸入樣例:3輸出樣例:10代碼:#include<stdio.h>#include<math.h>intmain(){inta,b,n;scanf(〃%d〃,&n);a=pow(2,n-1);printf(〃%d〃,3*a-2);}7-8大笨鐘(15分)微博上有個(gè)自稱“大笨鐘V”的家伙,每天敲鐘催促碼農(nóng)們愛惜身體早點(diǎn)睡覺。不過(guò)由于笨鐘自己作息也不是很規(guī)律,所以敲鐘并不定時(shí)。一般敲鐘的點(diǎn)數(shù)是根據(jù)敲鐘時(shí)間而定的,如果正好在某個(gè)整點(diǎn)敲,那么“當(dāng)”數(shù)就等于那個(gè)整點(diǎn)數(shù);如果過(guò)了整點(diǎn),就敲下一個(gè)整點(diǎn)數(shù)。另外,雖然一天有24小時(shí),鐘卻是只在后半天敲廣12下。例如在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í)間。其中hh是小時(shí),在00到23之間;mm是分鐘,在00到59之間。輸出格式:根據(jù)當(dāng)前時(shí)間替大笨鐘敲鐘,即在一行中輸出相應(yīng)數(shù)量個(gè)Dang。如果不是敲鐘期,則輸出:Onlyhh:mm.TooearlytoDang.其中hh:mm是輸入的時(shí)間。輸入樣例1:19:05輸出樣例1:DangDangDangDangDangDangDangDang輸入樣例2:07:05輸出樣例2:Only07:05.TooearlytoDang.代碼:#include<stdio.h>#include<stdlib.h>intmain(){inta,b,n,i;charc;scanf(〃%2d%c%2d〃,&a,&c,&b);if((a>=0&&a<=11)||(a==12&&b==0))printf("Only%02d:%02d.TooearlytoDang.”,a,b);elseif(b==0)for(i=0;i<a-12;i++)printf(〃Dang〃);elseif(b!=0)for(i=0;i<a-11;i++)printf(〃Dang〃);}7-9輸出三角形字符陣列(15分)本題要求編寫程序,輸出n行由大寫字母A開始構(gòu)成的三角形字符陣列。輸入格式:輸入在一行中

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論