c語言編程題--精選文檔_第1頁
c語言編程題--精選文檔_第2頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、四、編程題(2道小題,共20分) 1、求100之內(nèi)自然數(shù)中最大的能被17整除的數(shù)。#include<stdio.h>void main() int i;for(i=100;i>0;i-)if(i%17=0)break;printf("%dn",i);2、已知a,b,c都是1位整數(shù),求當三位整數(shù)abc、cba的和為1333時a、b、c的值。#include<stdio.h>void main()int a,b,c;for(a=1;a<=9;a+)for(b=0;b<=9;b+)for(c=1;c<=9;c+)if(a*100+b

2、*10+c+c*100+b*10+a=1333)printf("%d,%d,%dn",a,b,c);3、計算并輸出200-400之間不能被3整除的整數(shù)的和。#include<stdio.h>void main() int i,sum=0;for(i=200;i<=400;i+) if(i%3!=0) sum=sum+i; printf("%dn",sum);4、從鍵盤輸入10個數(shù),統(tǒng)計非負數(shù)的個數(shù),并計算非負數(shù)的和。#include<stdio.h>void main() int i,n=0,sum=0;int a10;pr

3、intf(“請輸入10個數(shù):”);for(i=0;i<10;i+)scanf(“%d”,&ai);for(i=0;i<10;i+)if(ai>=0) sum=sum+ai;n+; printf("非負個數(shù)是%d,sum=%dn",n,sum);5、求100之內(nèi)自然數(shù)中偶數(shù)之和。#include<stdio.h>void main() int i,sum=0;for(i=0;i<=100;i+)if(i%2=0)sum=sum+i; printf("sum=%dn",sum);6、輸入5個數(shù),求和并輸出。要求編寫

4、求和的函數(shù)。#include<stdio.h>void main() int b(int x,int n);int sum=0;int a5;int i;printf("請輸入5個數(shù):");for(i=0;i<5;i+)scanf("%d",&ai);sum=b(a,5); printf("sum=%dn",sum);int b(int x,int n) int i,sum=0;for(i=0;i<5;i+)sum=sum+xi;return sum; 7、編程計算1*2*3+3*4*5+5*6*7+.

5、+99*100*101的值。#include<stdio.h>void main() int i,sum=0;for(i=1;i<=99;i=i+2) sum=sum+i*(i+1)*(i+2);printf("%dn",sum);8、編寫程序,將用戶輸入的字符串中所有的字符a用*代替,然后輸出。#include<stdio.h>#include<string.h>void main() int i,n;char b20;printf("請輸入字符串:");gets(b);n=strlen(b);for(i=0;

6、i<n;i+)if(bi='a')bi='*'for(i=0;i<n;i+)printf("%c",bi);printf("n");9、編寫程序,將一個一維數(shù)組的元素逆序存放并輸出。例如,原順序為1,2,3,4,5,逆序后為5,4,3,2,1。#include<stdio.h>void main() int i;int a5;printf(“請輸入5個數(shù):”);for(i=0;i<5;i+)scanf(“%d”,&ai);for(i=0;i<2;i+)t=ai;ai=a4-i;

7、a4-i=t; for(i=0;i<5;i+)printf("%d ",bi);printf("n");10、求3行3列矩陣a33=1,2,3,4,5,6,7,8,9非對角線上元素之和。#include<stdio.h>void main() int i,j,sum=0;int a33=1,2,3,4,5,6,7,8,9;for(i=0;i<3;i+)for(j=0;j<3;j+)if(i!=j&&i+j!=2)sum=sum+aij;printf("%d ",sum);printf(&q

8、uot;n");11、編程判斷輸入的整數(shù)的正負性和奇偶性。如果為正數(shù),輸出z;如果為負數(shù),輸出f;如果為偶數(shù),輸出o;如果為奇數(shù),輸出j#include<stdio.h>void main() int a;printf(“請輸入一個數(shù):”);scanf(“%d”,&a);if(a>0) printf("zn");if(a<0) printf("fn"); if(a%2=0) printf("on"); if(a%2!=0) printf("jn");12、計算并輸出1-20

9、0之間不能被5整除的整數(shù)的和。#include<stdio.h>void main() int i,sum=0;for(i=1;i<=200;i+)if(i%5!=0)sum=sum+i;printf("%dn",sum);13、從鍵盤輸入n和a的值,計算a+aa+aaa+.+aa.a(n個a)的值。#include<stdio.h>void main() int i,a,n;long int sum=0,st=0;printf("請輸a和n:");scanf("%d%d",&a,&n);

10、for(i=1;i<=n;i+) st=st+a;sum=sum+st;a=a*10;printf("%ldn",sum);14、輸入5個數(shù),求它們中最大值和平均值并輸出。#include<stdio.h>void main()int a5;int i,j,max,sum=0;float average;printf("請輸入5個數(shù):");for(i=0;i<5;i+)scanf("%d",&ai);max=a0;for(j=0;j<5;j+)sum=sum+aj;if(max<aj)max

11、=aj;average=1.0/5*sum;printf("max=%d,average=%fn",max,average);15、輸出所有200-400之間能被3整除且個位數(shù)字為6的整數(shù)。#include<stdio.h> void main()int i;for(i=200;i<=400;i+)if(i%3=0)&&(i-6)%10=0)printf("%dn",i);printf("n");16、編寫程序,將用戶輸入的字符串中所有的字符a去掉,然后輸出剩余的字符。#include<stdi

12、o.h>void main() int i,j,n1;char a20;printf("請輸入字符串:");gets(a);n1=strlen(a);for(i=0;i<n1;i+)if(ai!='a')printf("%c",ai); printf("n");17、計算并輸出200-400之間不能被7整除的整數(shù)的和。#include<stdio.h>void main() int i,sum=0;for(i=200;i<=400;i+)if(i%7!=0)sum=sum+i;printf

13、("sum=%dn",sum);18.計算并輸出200-400之間不能被5整除的整數(shù)的和。#include<stdio.h>void main() int i,sum=0;for(i=200;i<=400;i+)if(i%5!=0)sum=sum+i;printf("sum=%dn",sum);19、從鍵盤輸入10個數(shù),統(tǒng)計非正數(shù)的個數(shù),并計算非正數(shù)的和#include<stdio.h>void main() int i,n=0,sum=0;int a10;printf(“請輸入10個數(shù):”);for(i=0;i<10

14、;i+)scanf(“%d”,&ai);for(i=0;i<10;i+)if(ai<=0) sum=sum+ai;n+; printf("非正個數(shù)是%d,sum=%dn",n,sum);20、輸入一串字符,將其中的大寫字母變成對應(yīng)的小寫字母并輸出。#include<stdio.h>#include<string.h>void main() int i,n;char a20;printf("請輸入字符串:");gets(a);n=strlen(a);for(i=0;i<n;i+)if(ai>='

15、;A'&&ai<='Z')ai=ai+32; for(i=0;i<n;i+)printf("%c",ai);printf("n");21、打印所有的水仙花數(shù)。所謂水仙花數(shù)是指一個三位數(shù),其各位數(shù)字的立方和等于該數(shù)。例如,153就是一個水仙花數(shù),因為153=1*1*1+5*5*5+3*3*3。#include<stdio.h>void main() int a,b,c,s;for(a=1;a<=9;a+)for(b=0;b<=9;b+)for(c=0;c<=9;c+)if(a

16、*100+b*10+c=a*a*a+b*b*b*b+c*c*c)s=a*100+b*10+c;printf("%dn",s);22、一個皮球從100米高度自由落下,每次落地后反彈回原高度的一半,再落下,再反彈。求當它第10次落地時,共經(jīng)過了多少米,第10次反彈多高?#include<stdio.h>void main() int i;float sum=100.0,h=50;for(i=2;i<=10;i+) sum=sum+2*h; h=h/2;printf("%f,%fn",sum,h);23、輸出所有0-200之間能被3整除且個位

17、數(shù)字為6的整數(shù)。#include<stdio.h>void main()int i;for(i=0;i<=200;i+)if(i%3=0)&&(i-6)%10=0)printf("%dn",i);printf("n");24、輸入一個正整數(shù),輸出它的階乘。#include<stdio.h>void main() int i,J=1,n=10;printf(“請輸入一個正整數(shù):”);scanf(“%d”,&n);for(i=1;i<=n;i+)J=J*i;printf("%d 的階乘是:

18、%dn",n,J);25、編寫程序,判斷從鍵盤輸入的字符中數(shù)字字符的個數(shù)、大寫字母的個數(shù)、小寫字母的個數(shù)及其它字符的個數(shù),以*作為字符輸入結(jié)束標志。#include<stdio.h>#include<string.h>void main()int i,x,m=0,n=0,k=0,j=0;char a20;printf("請輸入字符串:");gets(a);x=strlen(a);for(i=0;i<x;i+)if(ai='*')break;elseif(ai>='0'&&ai<

19、;='9')m+; else if(ai>='A'&&ai<='Z') n+; else if(ai>='a'&&ai<='z')k+; else j+;printf("%d,%d,%d,%dn",m,n,k,j);26、編寫程序,使用循環(huán)結(jié)構(gòu)輸出下列圖形: * * * * * * * * * * * * * * * * * * *#include<stdio.h>void main() int i,j,k ;for(i=0;i

20、<5;i+) for(j=0;j<4-i;j+)printf(" "); for(k=0;k<4;k+) printf("*");printf("n");printf("n");27、輸入一串字符,逆序輸出。要求使用數(shù)組實現(xiàn)。#include<stdio.h>#include<string.h>void main()int i,j,t,n;char a10;printf("請輸入字符串:");gets(a);n=strlen(a);for(i=0;i&l

21、t;n/2;i+)t=ai;ai=an-1-i;an-1-i=t;for(j=0;j<n;j+)printf("%c",aj); printf("n");28、求1-1/2+1/3-1/4+.+1/99-1/100的值。#include<stdio.h>void main()int n,s=1;floatsum=1.0;for(n=2;n<=100;n+)s=-s;sum=sum+1.0/n*s;printf("1-1/2+1/3-1/4+.+1/99-1/100=%fn",sum);29、輸入3個學生4門課的

22、成績(60,70,65,75),(75,80,75,90),(95,75,90,65),計算每個學生的總分和平均成績并輸出,結(jié)果保留一位小數(shù)。#include<stdio.h>void main() int a34=60,70,65,75,75,80,75,90,95,75,90,65;int i,j;float average,sum=0.0; printf("三個學生的總分和平均成績依次為:n");for(i=0;i<3;i+) sum=0.0;for(j=0;j<4;j+)sum=sum+aij;average=sum/4;printf(&qu

23、ot;%.2f,%.2fn",sum,average);30、求兩個正整數(shù)的最大公約數(shù)。#include<stdio.h>void main() int m,n,m1,n1,t,k;printf(“請輸入兩個正整數(shù):”);scanf(“%d%d”,&m,&n); if(m<n) t=m;m=n;n=t;m1=m;n1=n;while(k=m1%n1)!=0) m1=n1;n1=k;printf("%d和%d最大公約數(shù)是:%dn",m,n,n1);31、求100之內(nèi)自然數(shù)中奇數(shù)之和。#include<stdio.h>vo

24、id main() int i,sum=0;for(i=0;i<=100;i+)if(i%2!=0)sum=sum+i; printf("sum=%dn",sum);32、輸出所有200-400之間能被3整除且個位數(shù)字為7的整數(shù)。#include<stdio.h> void main()int i;for(i=200;i<=400;i+)if(i%3=0)&&(i-7)%10=0)printf("%dn",i);printf("n");33、編程計算1*2*3+4*5*6+.+97*98*99的

25、值。#include<stdio.h>void main() int i,n,sum=0;for(i=1;i<=94;i=i+3) sum=sum+i*(i+1)*(i+2);printf("%dn",sum);34、輸入n的值,計算并輸出1*1+2*2+3*3+4*4+5*5+.+n*n的值。要求編寫函數(shù)f求平方。#include<stdio.h>void main() intf(int x);int n,sum;printf("請輸n值:");scanf("%d",&n); sum=f(n);

26、printf("%dn",sum);int f(int x) int j,z=0;for(j=1;j<=x;j+)z=z+j*j;return z; 35、計算并輸出1-200之間不能被3整除的整數(shù)的和。#include<stdio.h>void main() int i,sum=0;for(i=1;i<=200;i+) if(i%3!=0) sum=sum+i; printf("%dn",sum);36、輸入3個學生4門課的成績(60,70,65,75),(75,80,75,90),(95,75,90,65),計算每個學生的總分

27、和平均成績并輸出,結(jié)果保留一位小數(shù)。#include<stdio.h>void main() int a34=60,70,65,75,75,80,75,90,95,75,90,65;int i,j;float average,sum=0.0; printf("三個學生的總分和平均成績依次為:n");for(i=0;i<3;i+) sum=0.0;for(j=0;j<4;j+)sum=sum+aij;average=sum/4;printf("%.1f,%.1fn",sum,average);37、輸入一個華氏溫度,輸出攝氏溫度,計

28、算公式為c=5/9*(F-32)。要求結(jié)果保留兩位小數(shù)。#include<stdio.h>void main() float F,c;printf(“請輸入一個華氏溫度:”);scanf(“%f”,&F);c=5.0/9*(F-32);printf("%.2fn",c);38、輸入任意三個數(shù),按從大到小的順序輸出。#include<stdio.h>void main() int a,b,c,t;printf(“請輸入任意三個數(shù):”);scanf(“%d%d%d”,&a,&b,&c);if(a<b) t=a;a=b

29、;b=t; if(a<c) t=a;a=c;c=t;if(b<c) t=b;b=c;c=t;printf("%d,%d,%dn",a,b,c);39、用1元人民幣兌換5分、2分、1分的硬幣共50枚,每種硬幣至少一枚,問共有多少種兌換方案?輸出每一種方案中三種硬幣的數(shù)量。#include<stdio.h>main() float x=1.0; float a=0.01,b=0.02,c=0.05; int i,j,k; int count=0; printf(" 1分,2分,5分張數(shù)依次為: n"); for(i=1;i<10

30、0;i+) for(j=1;j<50;j+) for(k=1;k<20;k+) if(i*a+j*b+k*c)=1&&i+j+k=50) printf(" %d %d %dn",i,j,k); count+; printf("共有%d種方案n",count);40、從鍵盤輸入圓的半徑,計算并輸出圓面積與周長,要求結(jié)果保留兩位小數(shù)。#include<stdio.h>void main() int r;float pi=3.14159;float c,s;printf(“請輸入半徑r:”);scanf(“%d”,&am

31、p;r);s=pi*r*r;c=2*pi*r;printf("面積=%.2f,周長=%.2fn",s,c);41、從鍵盤輸入一個字符串,再輸入兩個正整數(shù)m和n,輸出字符串中從m開始,連續(xù)n個字符。例如,輸入abcdefg,2,3,輸出bcd。#include<stdio.h>#include<string.h>void main() int i,m,n;char a20;printf("請輸入字符串:");gets(a);n=strlen(a);printf("請輸入兩個正整數(shù):");scanf("%

32、d%d",&m,&n); for(i=m-1;i<m+n-1;i+)printf("%c",ai);printf("n");42、輸入一個不多于5位的正整數(shù),判斷它是幾位數(shù),并逆序輸出各位數(shù)字。#include<stdio.h>void main() int a,b,c,d,e;longx;printf(“請輸入一個不多于5位的正整數(shù):”);scanf(“%d”,&x);a=x/10000;b=x%10000/1000;c=x%1000/100;d=x%100/10;e=x%10; if(a!=0)pr

33、intf("它是5位數(shù),%d,%d,%d,%d,%dn",e,d,c,b,a); else if(b!=0)printf("它是4位數(shù),%d,%d,%d,%dn",e,d,c,b); else if(c!=0)printf("它是3位數(shù),%d,%d,%dn",e,d,c); else if(d!=0)printf("它是2位數(shù),%d,%dn",e,d); else printf("它是1位數(shù),%dn",e); 43, 輸出Fibonacci數(shù)列的前40項 #include<stdio.h&

34、gt;void main()int a40=1,1;int i;printf("%12d%12d",a0,a1);for(i=2;i<40;i+)if(i%4=0) printf("n");ai=ai-1+ai-2;printf("%12d",ai);printf("n");44,判斷某一年是否是閏年#include <stdio.h>void main ()int year,leap;printf(“請輸入一個年份:”);scanf("%d",&year);if (y

35、ear%4=0)if (year%100=0)if (year%400=0)leap=1;elseleap=0;else leap=1;elseleap=0;if (leap)printf("%d is a leap yearn",year);elseprintf("%d is not a leap yearn",year);45,起泡法(選擇法)對十個數(shù)排序#include<stdio.h>void main()int i,j,t;int a10;printf("請輸入10個數(shù):n");for(i=0;i<10;i

36、+)scanf("%d",&ai);for(j=0;j<9;j+)for(i=0;i<9-j;i+)if(ai>ai+1)t=ai;ai=ai+1;ai+1=t;for(i=0;i<10;i+)printf("%d ",ai);printf("n");46,判斷某個數(shù)是否為素數(shù).#include<stdio.h>#include<math.h>void main()int i,m;float k;printf("請輸入一個正整數(shù):");scanf("

37、%d",&m);k=sqrt(m);for(i=2;i<=k;i+)if(m%i=0)break;if(i>k)printf("%d is a prime numbern",m);else printf("%d is not a prime numbern",m);47,編程計算1!+2!+3!+10的值。#include<stdio.h>void main() int i,j,sum1=1,sum=0;for(i=1;i<=10;i+)for(j=1;j<=i;j+)sum1=sum1*j;sum=

38、sum+sum1;printf("1!+2!+3!+10!=%ldn",sum);48,求以下數(shù)列前十五項的和:2/1,3/2,5/3,8/5,13/8,21/13。#include<stdio.h>void main() int n;float a=2.0,sum=0.0,b=1.0,t;for(n=1;n<=15;n+) sum=sum+a/b;t=a;a=a+b;b=t;printf("%fn",sum);49,從鍵盤輸入圓柱體高與底面半徑,計算并輸出圓柱體表面積與體積,要求結(jié)果保留兩位小數(shù)。#include<stdio.h>void main()int h,r;float p

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論