C語言編程實驗_第1頁
C語言編程實驗_第2頁
C語言編程實驗_第3頁
C語言編程實驗_第4頁
C語言編程實驗_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C語言實驗習題7-1輸出圖形(10分)編寫程序輸出圖形。第一行輸出12個$,第二行先輸出3個空格,然后再輸出hello!,第三行輸出12個$輸入樣例:無輸入輸出樣例:$$$$$$$$$$$$hello!$$$$$$$$$$$$代碼:#include<stdio.h>intmain(){printf("$$$$$$$$$$$$\n""hello!\n""$$$$$$$$$$$$\n");return0;}7-5計算華氏溫度(5分)本題要求編寫程序,計算攝氏溫度26°C對應的華氏溫度。計算公式:F=9XC/5+32,式中:C表示攝氏溫度,F(xiàn)表示華氏溫度,輸出數(shù)據(jù)要求為整型。輸入格式:本題目沒有輸入。輸出格式:按照下列格式輸出celsius=26,fahr=對應的華氏溫度整數(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分)程序每次讀入一個正3位數(shù),然后輸出按位逆序的數(shù)字。注意:當輸入的數(shù)字含有結尾的0時,輸出不應帶有前導的0。比如輸入700,輸出應該是7。輸入格式:每個測試是一個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ù)四則運算(10分)本題要求編寫程序,計算2個正整數(shù)的和、差、積、商并輸出。題目保證輸入和輸出全部在整型范圍內。輸入格式:輸入在一行中給出2個正整數(shù)A和B。輸出格式:在4行中按照格式“A運算符B=結果”順序輸出和、差、積、商。輸入樣例:輸出樣例:代碼:#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分)本題要求編寫程序,計算4個整數(shù)的和與平均值。題目保證輸入與輸出均在整型范圍內。輸入格式:輸入在一行中給出4個整數(shù),其間以空格分隔。輸出格式:在一行中按照格式“Sum=和;Average=平均值”順序輸出和與平均值,其中平均值精確到小數(shù)點后一位。輸入樣例: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分)中國有句俗語叫“三天打魚兩天曬網(wǎng)”。假設某人從某天起,開始“三天打魚兩天曬網(wǎng)”,問這個人在以后的第N天中是“打魚”還是“曬網(wǎng)”?輸入格式:輸入在一行中給出一個不超過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計算符號函數(shù)的值(15分)對于任一整數(shù)n,符號函數(shù)sign(n)的定義如下:-1 <0)S£gn(n)=< 0(n=0)[1(?>0)請編寫程序計算該函數(shù)對任一輸入整數(shù)的值。輸入格式:輸入在一行中給出整數(shù)n。輸出格式:在一行中按照格式"sign(n)=函數(shù)值”輸出該整數(shù)n對應的函數(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階梯電價(15分)為了提倡居民節(jié)約用電,某省電力公司執(zhí)行“階梯電價”,安裝一戶一表的居民用戶電價分為兩個“階梯”:月用電量50千瓦時(含50千瓦時)以內的,電價為0.53元/千瓦時;超過50千瓦時的,超出部分的用電量,電價上調0.05元/千瓦時。請編寫程序計算電費。輸入格式:輸入在一行中給出某用戶的月用電量(單位:千瓦時)。輸出格式:在一行中輸出該用戶應支付的電費(元),結果保留兩位小數(shù),格式如:“cost=應付電費值”;若用電量小于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計算油費(15分)現(xiàn)在90號汽油6.95元/升、93號汽油7.44元/升、97號汽油7.93元/升。為吸引顧客,某自動加油站推出了“自助服務”和“協(xié)助服務”兩個服務等級,分別可得至5%和3%的折扣。本題要求編寫程序,根據(jù)輸入顧客的加油量a,汽油品種b(90、93或97)和服務類型c(m-自助,e-協(xié)助),計算并輸出應付款。輸入格式:輸入在一行中給出兩個整數(shù)和一個字符,分別表示顧客的加油量a,汽油品種b(90、93或97)和服務類型c(m-自助,e-協(xié)助)。輸出格式:在一行中輸出應付款額,保留小數(shù)點后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兩個數(shù)的簡單計算器(15分)本題要求編寫一個簡單計算器程序,可根據(jù)輸入的運算符,對2個整數(shù)進行加、減、乘、除或求余運算。題目保證輸入和輸出均不超過整型范圍。輸入格式:輸入在一行中依次輸入操作數(shù)1、運算符、操作數(shù)2,其間以1個空格分隔。操作數(shù)的數(shù)據(jù)類型為整型,且保證除法和求余的分母非零。輸出格式:當運算符為+、-、*、/、%時,在一行輸出相應的運算結果。若輸入是非法符號(即除了加、減、乘、除和求余五種運算符以外的其他符號)則輸出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分)輸入一個非負整數(shù)n,生成一張3的乘方表,輸出30?3n的值??烧{用冪函數(shù)計算3的乘方。輸入格式:輸入在一行中給出一個非負整數(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<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個正整數(shù),請統(tǒng)計奇數(shù)和偶數(shù)各有多少個?輸入格式:輸入第一行給出一個正整N(W1000);第2行給出N個正整數(shù),以空格分隔。輸出格式:在一行中先后輸出奇數(shù)的個數(shù)、偶數(shù)的個數(shù)。中間以1個空格分隔。輸入樣例: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ù)中的最小值。輸入格式:輸入在一行中首先給出一個正整數(shù)n,之后是n個整數(shù),其間以空格分隔。輸出格式:在一行中按照“min=最小值”的格式輸出n個整數(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項和(15分)本題要求編寫程序,計算平方根序列”1+"2+"3+的前N項之和??砂^文件math.h并調用sqrt函數(shù)求平方根。輸入格式:輸入在一行中給出一個正整數(shù)N。輸出格式:在一行中按照“sum=S”的格式輸出部分和的值S,精確到小數(shù)點后兩位。題目保證計算結果不超過雙精度范圍。輸入樣例:輸出樣例: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)計學生平均成績與及格人數(shù)(15分)本題要求編寫程序,計算學生們的平均成績,并統(tǒng)計及格(成績不低于60分)的人數(shù)。題目保證輸入與輸出均在整型范圍內。輸入格式:輸入在第一行中給出非負整數(shù)N,即學生人數(shù)。第二行給出N個非負整數(shù),即這N位學生的成績,其間以空格分隔。輸出格式:按照以下格式輸出:average=成績均值count=及格人數(shù)其中平均值精確到小數(shù)點后一位。輸入樣例: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分)對方不想和你說話,并向你扔了一串數(shù)對方不想和你說話,并向你扔了一串數(shù)……而你必須從這一串數(shù)字中找到“250”這個高大上的感人數(shù)字。輸入格式:輸入在一行中給出不知道多少個絕對值不超過1000的整數(shù),其中保證至少存在一個“250”。輸出格式:在一行中輸出第一次出現(xiàn)的“250”是對方扔過來的第幾個數(shù)字(計數(shù)從1開始)。題目保證輸出的數(shù)字在整型范圍內。輸入樣例: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猴子吃桃問題(15分)一只猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了一個;第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以后每天早上都吃了前一天剩下的一半加一個。到第N天早上想再吃時,見只剩下一個桃子了。問:第一天共摘了多少個桃子?輸入格式:輸入在一行中給出正整數(shù)N(1<NW10)。輸出格式:在一行中輸出第一天共摘了多少個桃子。輸入樣例: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分)微博上有個自稱“大笨鐘V”的家伙,每天敲鐘催促碼農們愛惜身體早點睡覺。不過由于笨鐘自己作息也不是很規(guī)律,所以敲鐘并不定時。一般敲鐘的點數(shù)是根據(jù)敲鐘時間而定的,如果正好在某個整點敲,那么“當”數(shù)就等于那個整點數(shù);如果過了整點,就敲下一個整點數(shù)。另外,雖然一天有24小時,鐘卻是只在后半天敲廣12下。例如在23:00敲鐘,就是“當當當當當當當當當當當”,而到了23:01就會是“當當當當當當當當當當當當”。在午夜00:00到中午12:00期間(端點時間包括在內),笨鐘是不敲的。下面就請你寫個程序,根據(jù)當前時間替大笨鐘敲鐘。輸入格式:輸入第一行按照hh:mm的格式給出當前時間。其中hh是小時,在00到23之間;mm是分鐘,在00到59之間。輸出格式:根據(jù)當前時間替大笨鐘敲鐘,即在一行中輸出相應數(shù)量個Dang。如果不是敲鐘期,則輸出:Onlyhh:mm.TooearlytoDang.其中hh:mm是輸入的時間。輸入樣例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開始構成的三角形字符陣列。輸入格式:輸入在一行中

溫馨提示

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

評論

0/150

提交評論