![c語言編程題及答案_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/d74c5958-6574-430c-bd7e-6f46f32502bd/d74c5958-6574-430c-bd7e-6f46f32502bd1.gif)
![c語言編程題及答案_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/d74c5958-6574-430c-bd7e-6f46f32502bd/d74c5958-6574-430c-bd7e-6f46f32502bd2.gif)
![c語言編程題及答案_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/d74c5958-6574-430c-bd7e-6f46f32502bd/d74c5958-6574-430c-bd7e-6f46f32502bd3.gif)
![c語言編程題及答案_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/d74c5958-6574-430c-bd7e-6f46f32502bd/d74c5958-6574-430c-bd7e-6f46f32502bd4.gif)
![c語言編程題及答案_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/d74c5958-6574-430c-bd7e-6f46f32502bd/d74c5958-6574-430c-bd7e-6f46f32502bd5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、C語言編程題1. (*)求分數(shù)序列:1/2,2/3,3/5,5/8,8/13,13/21前20項的和。main()floati=1,j=2,t=0,s,n,m;for(n=1;n<=20;n+)s=i/j,m=i,i=j,j=m+j,t=t+s;printf("t=%f",t);2. (*)從鍵盤輸入一個字符串,再將其逆序輸出。(如:輸入abcde,輸出edcba)main()inti;charc10;scanf("%s",c);for(i=9;i>=0;i-)printf("%c",ci);3. (*)已知abc+cba
2、=1333,其中a、b、c均為一位數(shù),例如:617+716=1333,518+815=1333,試編程求出符合這一規(guī)律的a、b、c,并輸出結(jié)果。main()inta,b,c,x,y;for(a=1;a<=9;a+)for(b=0;b<=9;b+)for(c=1;c<=9;c+)x=100*a+10*b+c;y=100*c+10*b+a;if(x+y=1333)printf("x=%d,y=%d",x,y);4. (*)利用海倫公式求三角形面積,三邊長a,b,c由鍵盤輸入。若輸入的三邊長不能構(gòu)成三角形,輸出相應(yīng)提示信息。海倫公式如下:其中s=(a+b+c)/
3、2二角形面積=.,s*(sa)*(sb)*(sc)#include"math.h"main()floata,b,c,s,area;scanf("%f,%f,%f",&a,&b,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);if(a+b>c&&a+c>b&&b+c>a)printf("area=%f",area);else1printf("no");)5. (*)編程求出1!+2!+3!+8!+9!
4、+10!的值并輸出。程序1:main()inti,j;doublep=1,sum=0;for(i=1;i<=10;i+)for(j=1;j<=i;j+)p=p*i;sum=sum+p;p=1.0;printf("sum=%f",sum);程序2:floatfac(n)intn;floatf;if(n<0)printf("n<0,error!");elseif(n=0|n=1)f=1;elsef=fac(n-1)*n;return(f);main()inth,s=0,n;for(n=1;n<=4;n+)h=fac(n);s=s
5、+h;printf("s=1!+2!+10!=%dn",s);程序3:main()inti;doublep=1,sum=0;for(i=1;i<=10;i+)p=p*i;sum=sum+p;printf("sum=%f",sum);.2.6. (*)從鍵盤輸入兩個整數(shù),輸出其和,差,積,商。7. (*)輸入若干個自然數(shù),對奇數(shù)從大到小排序,對偶數(shù)從小到大排序,輸出兩種結(jié)果。maxji(inta,intn)inti,j,k,t;for(i=0;i<n-1;i+)k=i;for(j=i+1;j<n;j+)if(ak<aj)k=j;if
6、(k!=i)t=ak;ak=aj;aj=t;#defineN10main()intcN,i,j;for(i=0;i<N;i+)scanf("%d",&ci);maxji(c,N);for(i=N-1;i>=0;i-)if(ci%2=0)printf("%5d",ci);printf("n");for(i=0;i<N;i+)if(ci%2!=0)printf("%5d",ci);8. (*)求出0999之間的所有“水仙花數(shù)”并輸出?!八苫〝?shù)”是指一個三位數(shù),其各位數(shù)字的立方和確好等于該數(shù)本
7、身,如;153=1+5+3,則153是一個“水仙花數(shù)”。程序1:main()inti,j,k,a;for(i=1;i<=9;i+)for(j=0;j<=9;j+)for(k=0;k<=9;k+)if(i*i*i+j*j*j+k*k*k=100*i+10*j+k)printf("%d%d%dn",i,j,k);程序:main()intm,i,j,k,a;for(m=101;i<=999;m+)i=m/100;j=(m-m*100)/10;3 k=m%10;5 項之和,其中 a 是一個數(shù)字,例如:程序 3: main()long int sn=0,k=a
8、;int a,i,j;scanf("%d",&a);for(i=1;i<=5;i+) k=10*k+a;sn=sn+k;printf("%ldn",sn);if(i*i*i+j*j*j+k*k*k=m)printf("%dn",m);9. (*)試編程:判斷輸入的正整數(shù)是否既是5,又是7的整數(shù)倍數(shù)。若是則輸出yes;否no。10. (*)已有函數(shù)調(diào)用語句c=add(a,b);請編寫aad函數(shù),計算兩個實數(shù)a和b的和,并返回和值。11. (*)有人想將手中一張面值100元的人民幣換成5元、1元、0.5元面值的零錢100張,
9、以上三種面值的零錢至少有一張,問共有幾種換法。請編程實現(xiàn)。程序1:main()inti,j,k,n=0;for(i=1;i<19;i+)for(j=1;j<95;j+)for(k=1;k<94;k+)if(5*i+j+0.5*k=100&&i+j+k=100)printf("%d,%d,%dn",i,j,k);n+;printf("%d",n);12. (*)求Sn=a+aa+aaa+aaaa+aaaaa的前2+22+222+2222+22222程序1:main()inti,a,n;longsum=0,b=1,c=1;s
10、canf("%d,%d",&a,&n);for(i=1;i<=n;i+)sum+=a*c;b*=10;c+=b;printf("%ld",sum);程序2:main()longintsn=0,k=0;inta,i,j;scanf("%d",&a);for(i=1;i<=5;i+)for(j=1;j<=i;j+)k=10*k+a;sn=sn+k;4 k=0;printf("%ldn",sn);13. (*)編程輸出如下圖形(不能僅用printf語句):*main()inti,
11、k,j;for(i=0;i<=4;i+)for(j=0;j<4-i;j+)printf("");for(k=0;k<=2*i;k+)printf("*");printf("n");14. (*)用近似公式求自然對數(shù)的底e的值。11e1+1!+2!3!#include"math.h"main()floati,j,e,p=1.0,sum=0.0;for(i=1;i<10;i+)for(j=1;j<=i;j+)p=p*j;sum=sum+1.0/p;p=1.0;e=i+sum;printf(
12、"%fn",e);15. (*)請編程,用scanf()函數(shù)輸入三個字符,對這三個字符各加一個整數(shù)1后,用putchar()函數(shù)輸出,且每輸出一個字符換一行。16. (*)請編程,用scanf()函數(shù)輸入三個整數(shù),輸出其中不大不小的那個數(shù),輸出寬度為五位。intfindmid(inti,intj,intk)intn;if(i<j)n=i;i=j;j=n;5 .if(i<k)n=i;elseif(j>k)n=j;elsen=k;return(n);main()inti,j,k,n;scanf("%d%d%d",&i,&j,
13、&k);n=findmid(i,j,k);printf("%dn",n);17. (*)編程實現(xiàn)輸出所有1100之間能被9整除余2的數(shù)。18. (*)編寫一程序?qū)崿F(xiàn)如下功能:輸入1、2、3、4、5、6、7(分別對應(yīng)星期一至星期日)中的任何一個數(shù),便能輸出與之對應(yīng)的英文名稱。如輸入1,則輸出Monday。main()charday;scanf("%c",&day);swith(day)case'1':printf("mondayn");break;case'2':printf("
14、tuesdayn");break;case'3':printf("wednsdayn");break;case'4':printf("thursdayn");braek;case'5':printf("fridayn");break;case'6':printf("saturdayn");break;case'7':printf("sundayn");break;defult:printf("er
15、rorn");19. (*)編一程序,對于給定的一個百分制成績,輸出相應(yīng)的5分制成績。設(shè):90分以上為A,8089分為B,7079分為C,6069分為D,60分以下為E。(用switch語句實現(xiàn))。main()ints,score;scanf("%d",&score);s=score/10;switch(s)case10:printf("An");break;case9:printf("An");break;case8:printf("Bn");break;case7:printf("C
16、n");break;case6:printf("Dn");break;case5:case4:case3:case2:case1:printf("En");break;default:printf("error");20 (*)試編程:判斷輸入的正整數(shù)是否既是5,又是7的整數(shù)倍數(shù)。若是則輸出yes;否則輸出no。21 (*)一個數(shù)如果卻好等于它的因子之和,這個數(shù)就稱為“完數(shù)”。例如,6的因子為1、 2、3,而6=1+2+3,因此6是“完數(shù)”。編程序找出100之內(nèi)的所有完數(shù),并按下列格式輸出其因子:6itsfactorsare
17、1,2,3main()intm,i,s;for(m=2;m<1000;m+)1 s=0;for(i=1;i<m;i+)if(m%i=0)s=s+i;if(m=s)printf("%3ditsfactorsare",m);for(i=1;i<m;i+)if(m%i=0)printf("%4d",i);printf("n");22 (*)輸入5對整數(shù),請輸出每對數(shù)中較大者main()inti,j,a52;for(i=0;i<=4;i+)for(j=0;j<=1;j+)scanf("%d",
18、&aij);for(i=0;i<=4;i+)if(ai1>ai0)printf("%4dn",ai1);elseprintf("%4dn",ai0);623 (*)編程將一個3x3矩陣轉(zhuǎn)置(行列互換)后輸出。程序1 :float max(int n,float a口)int i;float max;max=a0;for(i=0;i<n;i+) if(max<ai) max=ai; return(max);float min(int n,float a口) int i;float min;min=a0;for(i=0;i&l
19、t;n;i+)if(min>ai) min=ai; return(min);float aver(int n,float a口) int i;float sum=0,aver;main()inti,j,a33,b33;for(i=0;i<=2;i+)for(j=0;j<=2;j+)scanf("%d”,&aij);for(i=0;i<=2;i+)for(j=0;j<=2;j+)print(%5d,aij);bji=aij;printf('n');for(j=0;j<=2;j+)for(i=0;i<=2;i+)print
20、f("%5d",bij);printf(n");24 (*)求一個一維數(shù)組的最大值,最小值和平均值(主函數(shù)調(diào)用并輸出)程序2:main()voidmake();inta10,i;externintmax,min;externfloataver;for(i=0;i<10;i+)scanf("%d”,&ai);make(a,10);printf("max=%d,min=%d,aver=%.2f",max,min,aver);intmax,min;floataver;voidmake(inta,intn)inti;floats
21、um;max=min=a0;sum=a0;for(i=1;i<n;i+)if(max<ai)max=ai;if(min>ai)min=ai;sum+=ai;printf("%f",sum);aver=(float)sum/n;sum=sum+ai;aver=sum/n;return(aver);#include"math.h"main()inti;floatm,n,a5,c;for(i=0;i<5;i+)scanf("%f",&ai);m=max(5,a);n=min(5,a);c=aver(5,a);
22、printf("%5f%5f%5fn",m,n,c);2634,輸25 (*)編寫函數(shù),求一個不超過五位的十進制整數(shù)各位數(shù)值的和。出15)#include"math.h"main()inti,a5,m,n=0;scanf("%d",&m);for(i=0;i<=4;i+)ai=m%10;n=n+ai;m=m-ai*10;printf("%5d",ai);printf('n');printf("%d",n);26 (*)編程求出一個3x3矩陣的最大和最小元素及其下標。
23、main()inti,j,max,min,a33,m1,n1,m2,n2;for(i=0;i<=2;i+)for(j=0;j<=2;j+)scanf("%d",&aij);min=max=a00;8 for(i=0;i<=2;i+)for(j=0;j<=2;j+)if(aij>max)max=aij;m1=I;n1=j;elseif(aij<min)min=aij;m2=i;n2=j;printf("max=%d,%3d,%3d,min=%d,%3d,%3d",max,m1,n1,min,m2,n2);27 (
24、*)有一個字符串,包含n個字符,編寫一個函數(shù),將此字符串中從第m個字符開始的全部字符復(fù)制成另一個字符串。main()charchs230=0,chs130="thisismyfirstCprogram"inti,j,m;scanf("%d",&m);for(i=m,j=0;i<30;i+,j+)chs2j=chs1i;chs229='0'printf("%s",chs2);28(*)求一個3x3矩陣的對角線元素之和。main()inti,j,sum1=0,sum2=0,a33;for(i=0;i<=
25、2;i+)for(j=0;j<=2;j+)scanf("%d",&aij);for(i=0;i<=2;i+)for(j=0;j<=2;j+)if(i=j)sum1+=aij;if(i+j)=2)sum2+=aij;printf("%5d%5d",sum1,sum2);29(*)從鍵盤輸入兩個整數(shù),輸出其最大公約數(shù)和最小公倍數(shù)。程序1:main()inta,b,t,p,r;scanf("%d,%d",&a,&b);if(a<b)t=a;a=b;b=t;p=a*b;while(b!=0)r=
26、a%b;a=b;b=r;printf(“%5d%5”d,a,p/a);main()9 inta,b,m,n,i,t;scanf(“%d%”d,&a,&b);if(a<b)t=a;a=b;b=t;m=a;n=b;for(i=1;i<=n;i+)if(m%i=0)&&(n%i=0)printf("%5dn",i);break;printf("%5d",a*b/i);30(*)一個已按從小到大的順序排序的數(shù)組,有9個元素,從終端輸入第10個數(shù),要求按原來排序的規(guī)律將它插入數(shù)組中。(該數(shù)比第一個數(shù)大,比第九個數(shù)小)#d
27、efineN10main()intb,i,n,aN=1,5,7,11,15,19,23,28,31;scanf("%d",&b);for(i=0;i<N-1;i+)if(ai>b)n=i;break;for(i=(N-2);i>=n;i-)ai+1=ai;an=b;for(i=0;i<N;i+)printf("%5d",ai);31(*)請編寫程序,輸出以下?lián)P輝三角形(要求輸出10行)。111121133114641#defineM10#defineN10main()intaMN,i,j;for(i=0;i<M;i+
28、)for(j=0;j<=i;j+)if(j=0|j=i)aij=1;elseaij=ai-1j-1+ai-1j;for(i=0;i<M;i+)for(j=0;j<=i;j+)printf("%4d",aij);printf("n");32 (*)從鍵盤輸入少于50個的整數(shù),其值在0和4之間(包括0和4),用-1作為輸入結(jié)束標志,統(tǒng)計每個整數(shù)的個數(shù)。請編程實現(xiàn)。33 (*)從鍵盤輸入兩個字符串a(chǎn)和b,要求不用庫函數(shù)strcat把串b的前五個字符連接到串a(chǎn)中;如果b的長度小于5,則把b的所有元素都連接到a中,請編程實現(xiàn)。main()char
29、a50,b10,*p1,*p2;inti,j;scanf(“%s%”s,a,b);n=strlen(a);for(p1=a+n,p2=b;p1<=a+(n+4);p1+,p2+)*p1=*p2;if(*p2=0)break;*p1=0;printf(“%s”,a);34 (*)編寫函數(shù),在一個一維數(shù)組中查找指定值,若找到則返回該數(shù)值的下標,否則返回-1。要求用指針變量傳遞數(shù)組首地址。main()floata10=1,2,3,4,5,6,7,8,9,10;floatb;inti;scanf("%f",&b);for(i=0;i<10;i+)if(b=ai)
30、printf("%dn",i);break;if(i>=10)printf("-1");printf("n");35 (*)寫一程序,要求用戶在鍵盤上輸入一個整數(shù),并把每位數(shù)字轉(zhuǎn)換為英文。例如:輸入1024時,輸出OneZeroTwoFourmain()longintn;intm,i=0,c10;scanf("%ld",&n);dom=n%10;i+;ci=m;printf("%5d%5d%5dn",i,m,ci);while(n/=10)>0);while(i>=1)
31、i-;switch(ci+1)case0:printf("zero");printf("");break;case1:printf("one");printf("");break;case 2: printf("two");printf("");break;case 3: printf("three");printf("");break;case4:printf("four");printf(""
32、);break;case5:printf("five");printf("");break;case6:printf("six");printf("");break;case7:printf("seven");printf("");break;case8:printf("eight");printf("");break;case9:printf("nine");printf("");break;d
33、efault:printf("no");36.(*)A數(shù)組中有8個元素,從第6個元素開始將數(shù)組后三個元素移到數(shù)組開頭。例如:A數(shù)組元素為:26985374移動后數(shù)組變?yōu)椋?7426985#defineN8main()inta8=2,6,9,8,5,3,7,4;inti,j,t;for(i=0;i<8;i+)printf("%5d",ai);printf("n");for(j=0;j<3;j+)t=aN-1;for(i=N-2;i>=0;i-)ai+1=ai;a0=t;for(i=0;i<8;i+)printf(
34、"%5d",ai);37 (*)按如下格式打印輸出乘法口訣表:1X1=11X2=22X2=41X9=92X9=183X9=279X9=8138 (*)請將n個整數(shù)按升序重新放在原數(shù)組中,操作時不得另開辟數(shù)組。39 (*)輸入若干學(xué)生一門功課的成績,統(tǒng)計各分數(shù)段的人數(shù)。凡不及格(60分以下)都由一個計數(shù)器來統(tǒng)計,其它以10分作為一個數(shù)段,100分作為一個分數(shù)段。main()inta10;inti,j,t,p;for(i=0;i<10;i+)scanf("%d",&ai);for(i=0;i<9;i+)p=i;for(j=i+1;j<
35、;10;j+)if(ap>aj)p=j;if(p!=j)t=ai;ai=ap;ap=t;for(i=0;i<10;i+)printf("%5d",ai);40 (*)編寫函數(shù),給定一個數(shù),刪除數(shù)組中與之相等的元素,返回值為刪除后數(shù)組中的元素個數(shù)。main()floata10,t;ints,b6=0,i;for(i=0;i<10;i+)scanf("%f",&ai);i=0;while(i<10)s=(int)ai/10;i+;switch(s)case10:b0+;break;case9:b1+;break;case8:b
36、2+;break;case7:b3+;break;case6:b4+;break;case5:case4:case3:case2:case1:case0:b5+;break;for(i=0;i<=5;i+)printf("%2d",bi);41 .(*)輸入一個整數(shù),判斷它能否被3、5、7整除,并輸出以下信息之一:能同時被3、5、7整除;能被其中兩個數(shù)(說明哪兩個數(shù))整除;只能被其中一個整除(說明哪個數(shù));不能被3、5、7任何一個整除。42 (*)有10個數(shù)已按由小到大的順序存放在一個整型數(shù)組中,從鍵盤輸入一個數(shù),找出該數(shù)是數(shù)組中的第幾個元數(shù),如果該數(shù)不在數(shù)組中,則打
37、印出“無此數(shù)”。main()inta10=2,4,6,8,10,12,14,16,18,20;inti,t,j,m;for(i=0;i<10;i+)printf(“%5d”,ai);printf(“n”);scanf(“%d”,&m);for(i=0;i<10;i+)if(m=ai)printf(“%5d”,i+1);break;if(i>=10)printf(“no”);43 (*)給出年、月、日,計算出該日是該年的第幾天。44 (*)求3至50之間所有素數(shù)之和,用子函數(shù)判斷是否為素數(shù)。#include<math.h>main()intm,k,i,s=0;for(m=3;m<50;m+)k=sqrt(m);for(i=2;i<=k;i+)if(m%i=0)break;if(i>=k+1)s=s+m;printf("%5dn",s);45 (*)不用strcpy函數(shù),實現(xiàn)兩個字符串的復(fù)制(形參用指針變量)。46 (*)從鍵盤輸入10個數(shù),將其中最小的數(shù)與第一個數(shù)對換,最大的數(shù)與最后一個數(shù)對換,實現(xiàn)從小到大的排序。(用指針實現(xiàn))47 (*)編制程序。在主函數(shù)中輸入a、b、c三個數(shù),在子函數(shù)中用指針法將a、b
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中子、電子及Γ輻照裝置合作協(xié)議書
- 2025年機載設(shè)備綜合測試臺合作協(xié)議書
- 2025年石材翻新護理用品合作協(xié)議書
- 建筑力學(xué)期末考試B卷試題及答案
- 2025年個人貨物運輸協(xié)議模板(2篇)
- 2025年個人房屋設(shè)計裝修合同(4篇)
- 2025年五年級體育教師工作總結(jié)(5篇)
- 2025年儀器銷售合同標準版本(4篇)
- 2025年五年級語文備課組長工作總結(jié)范文(二篇)
- 2025年二手車車輛轉(zhuǎn)讓合同簡單版(2篇)
- 2024年重慶市中考數(shù)學(xué)試卷(AB合卷)【附答案】
- 2024年安徽省高校分類考試對口招生語文試卷真題(含答案)
- DB43-T 2142-2021學(xué)校食堂建設(shè)與食品安全管理規(guī)范
- 宏觀利率篇:債券市場研究分析框架
- 橋梁頂升移位改造技術(shù)規(guī)范
- 六年級語文(上冊)選擇題集錦
- 介紹人提成方案
- 天津在津居住情況承諾書
- PHOTOSHOP教案 學(xué)習(xí)資料
- 2012年安徽高考理綜試卷及答案-文檔
- 《游戲界面設(shè)計專題實踐》課件-知識點5:圖標繪制準備與繪制步驟
評論
0/150
提交評論