C語言程序設計部分習題及例題參考程序_第1頁
C語言程序設計部分習題及例題參考程序_第2頁
C語言程序設計部分習題及例題參考程序_第3頁
C語言程序設計部分習題及例題參考程序_第4頁
C語言程序設計部分習題及例題參考程序_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C語言程序設計部分例題及課后習題參考程序1.編程計算如下分段函數:2%+3x10y=4x0 x10、5x6x0參考程序#includeintmain()floatx,y;printf(inputx:);scanf(%f,&x);if(x=10)y=2*x+3;elseif(x=0)y=4*x;elsey=5*x-6;printf(y=%.2fn,y);2編程將從鍵盤輸入的百分制成績轉換為等級分,轉換方法如下:90以上(大于或等于90,下同)為A,80分以上為B,70分以上為C,60分以上為D,60分以下,即低于60分為E。參考程序#includeintmain()floatscore;char

2、rank;printf(inputascore:);scanf(%f,&score);if(score100|score0)printf(invalidscoreinputn);exit(-1);switch(int)score/10)case10:case9:rank=A;break;case8:rank=B;break;case7:rank=C;break;case6:rank=D;break;default:rank=E;printf(%.2f:%cn,score,rank);return0;.編程判斷以從鍵盤輸入的三個數為邊長,是否能構成三角形。參考程序#includeintmain(

3、)floata,b,c;printf(inputa,b,c:);scanf(%f%f%f,&a,&b,&c);if(a0&b0&c0&a+bc&a+cb&b+ca)printf(%.2f,%.2f,%.2f)能圍成三角形n,a,b,c);elseprintf(%.2f,%2.2f,%.2f)不能圍成三角形n,a,b,c);.編程實現將從鍵盤輸入的一個正整數逆序輸出,如輸入1234,輸出3421參考程序#includeintmain()intn;printf(inputanumber:);scanf(%d,&n);doprintf(%d,n%10);n/=10;while(n!=0);retur

4、n0;.輸入一個110范圍內的整數,計算該數的階乘。參考程序#includeintmain()intn,s=1,i;printf(inputanumber(110):);scanf(%d,&n);for(i=2;i=n;i+)s*=i;printf(%d!=%dn,n,s);return0;.從鍵盤輸入的一行字符,統計其含有多少個字符?!緟⒖汲绦颉?includeintmain()charch;intcnt=0;printf(inputacharline:);ch=getchar();while(ch!=n)cnt+;ch=getchar();printf(%dn,cnt);return0;.

5、打印乘法口訣表。【參考程序】#includeintmain()inti,j;for(i=1;i=9;i+)for(j=1;j=i;j+)printf(%d*%d=%-3d,j,i,i*j);printf(n);return0;.在屏幕上打印如下規(guī)律的圖形,具體行數由鍵盤輸入。*【參考程序】#includeintmain()inti,j,n;printf(請輸入打印圖形的行數:”);scanf(%d,&n);for(i=1;i=n;i+)for(j=1;j=n-i;j+)printf();for(j=1;j=2*i-1;j+)printf(*);printf(n);return0;.從鍵盤輸入一

6、個正整數,編程判斷其是否為素數(質數).【參考程序】#includeintmain()inti,n;printf(請輸入一個正整數:);scanf(%d,&n);for(i=2;i*i=n;i+)if(n%i=0)break;if(i*i=n|n=1)printf(%d不是一個素數.n,n);elseprintf(%d是一個素數.n,n);return0;.從鍵盤輸入100個整數,求其中正整數的和?!緟⒖汲绦颉?include#defineN100intmain()intn,s=0,i;for(i=1;i=N;i+)printf(請輸入第d個整數:”,i);scanf(%d,&n);if(n0

7、)continue;s+=n;printf(%dn,s);return0;.從鍵盤輸入1000個學生某門課程的百分制成績,分別統計其中80分以上(即大于或等于80)、60分以上及低于60分的人數?!緟⒖汲绦颉?include#defineN1000intmain()intm,n,k,i;floatscore;m=n=k=0;for(i=1;i100|score=80)m+;elseif(score=60)n+;elsek+;printf(%d:%d:%dn,m,n,k);return0;.運用如下公式計算圓周率的近似值,當最后一項的絕對值小于10-6時,停止計算。=1+(1)九一1+4357i

8、2n-1【參考程序】#includeintmain()doublepi=0.0,t=1.0;intsgn=1;while(t1000000)pi+=sgn/t;sgn=-sgn;t+=2;printf(Pi=%.6lfn,4*pi);return0;.古代某工地需要搬運磚塊,已知男人每人每次搬3塊,女人每人每次搬2塊,小孩兩人每次抬一塊,現有45人一次正好搬完全部磚塊,請問男人、女人、小孩各幾人?【參考程序】#includeintmain()intw,m,c;for(m=0;m=15;m+)for(w=0;w=22;w+)c=45-m-w;if(m*3+w*2+c*.5=45)printf(%

9、d:%d:%dn,m,w,c);return0;.從鍵盤輸入兩個正整數到m、n中,求它們的最大公約數和最小公倍數?!緟⒖汲绦颉?includeintmain()intm,n,m1,n1,r;printf(請輸入兩個正整數:”);scanf(%d%d,&m,&n);m1=m;n1=n;r=m%n;while(r!=0)m=n;n=r;r=m%n;printf(gcd(%d,%d)=%dn,m1,n1,n);printf(lcm(%d,%d)=%dn,m1,n1,m1*n1/n);return0;14.編程計算如下式子的值,直到n等于100。+o-T+(-1)九一2+34n【參考程序】#inclu

10、deintmain()doubles=0.0,t=1.0;intsgn=1;while(t=100)s+=sgn/t;sgn=-sgn;t+=1;printf(s=%.6lfn,s);return0;15.計算如下規(guī)律式子的值。其中a與n的值都是由鍵盤輸入確定。如當a為2,n為3時,該式子表示的含義為2+22+222,故結果為246。a+aa+aaa+aaaa(n個a)【參考程序】#includeintmain()inta,n,s=0,t;printf(inputa,n:);scanf(%d%d,&a,&n);t=a;while(n0)s+=t;t=t*10+a;n-;printf(%dn,s

11、);return0;16.計算如下式子的值。3571+23571+2+4+6+101100【參考程序】#includeintmain()intn;floats=0.0;for(n=2;n=100;n+=2)s+=(float)(n+1)/n;printf(%.6fn,s);return0;17.如數列第1項為2,此后各項的值均為其前一項的2倍再加3,編程計算該數列的前10項之和?!緟⒖汲绦颉?includeintmain()intn,s=0,i;n=2;for(i=1;i=3;i+)s+=n;n=n*2+3;printf(%dn,s);return0;18.現要求將1角錢換成1分、2分或5分的

12、硬幣,請問有多少種換法,并輸出每一種換法?!緟⒖汲绦颉?includeintmain()intone,two,five,cnt=0;for(five=0;five=2;five+)for(two=0;two=0)printf(%d:%d:%dn,one,two,five);cnt+;printf(一共有d種換法n,cnt);return0;20.編程統計并輸出200到300以內的全部素數?!緟⒖汲绦颉?includeintmain()intm,i,k=0;for(m=201;m300;m+=2)for(i=3;i*im)k+;printf(%8d,m);if(k%5=0)printf(n);p

13、rintf(n200到300之間一共有d個素數n,k);return0;21.打印所有“水仙花數”,所謂“水仙花數”是指一個三位數,其各位數字的立方和等于該數自身。如153【參考程序】#includeintmain()intm,n,k;for(m=1;m=9;m+)for(n=0;n=9;n+)for(k=0;k=9;k+)if(m*m*m+n*n*n+k*k*k=m*100+n*10+k)printf(%5d,m*100+n*10+k);printf(n);return0;22.輸出200到300之間滿足如下條件的數,即各位數字之和為12,數字之積為42.【參考程序】#includeintm

14、ain()intm,n;for(m=0;m=9;m+)for(n=0;n=9;n+)if(m+n=10&m*n=21)printf(%5d,200+m*10+n);printf(n);return0;23.編程將一個正整數進行質因數分解,例如輸入90,須在屏幕上打印出90=2*3*3*5【參考程序】#includeintmain()intm,n;scanf(%d,&m);printf(%d=,m);n=2;while(m!=1)while(m%n=0)printf(%d,n);if(m!=n)printf(*);m/=n;n+;printf(n);return0;.輸入一行字符,分別統計其中英

15、文字母、空格、數字及其他字符的個數。【參考程序】#includeintmain()charch;intletter,space,digit,other;letter=space=digit=other=0;printf(inputacharline:);ch=getchar();while(ch!=n)if(ch=a&ch=A&ch=0&ch=9)digit+;elseif(ch=)space+;elseother+;ch=getchar();printf(%d:%d:%d:%dn,letter,digit,space,other);return0;.編程輸出1000以內的全部完數。所謂完數,

16、是指該數恰好等于他的全部真因子的和。如6=1+2+3【參考程序】#includeintmain()intm,i,t;for(m=2;m=1000;m+)t=1;for(i=2;i*i=m;i+)if(m%i=0)t+=i;if(i*i!=m)t+=m/i;if(t=m)printf(%dn,m);return0;.從鍵盤輸入10個整數,求這些整數的總和及平均值,并統計不低于平均值的元素個數?!緟⒖汲绦颉?include#defineN5intmain()intaN,i,cnt=0;floataver;printf(請輸入d個整數:,N);aver=0.0;for(i=0;iN;i+)scanf(%d,&ai);aver+=ai;for(i=0;i=aver/N)cnt+;printf(這d個整數的和是.0f,平均值是.2fn,N,aver,aver/10);printf(不低于平均值的數有d個n,cnt);return0;.設有存放于數組中一組整數,現從鍵盤輸入一個整數,在數組中查找該數,如果數組中含有該數,則輸出其全部出現位置,否則輸出“*不存在”,*代表該數值?!緟⒖汲绦颉?include#defineN10intmain()intaN=16,3

溫馨提示

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

評論

0/150

提交評論