c語言平時考試小例子_第1頁
c語言平時考試小例子_第2頁
c語言平時考試小例子_第3頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、給一個不多于 4 位的正整數(shù),求出它是幾位數(shù),逆序打印出各位數(shù)字#include<stdio.h>void main()int x,a,b,c,d;scanf("%d",&x);a=x/1000;b=x%1000/100;c=x%100/10;d=x%10;if(a!=0)printf("4:%d%d%d%dn",d,c,b,a);else if(b!=0)printf("3:%d%d%dn",d,c,b);else if(c!=0)printf("2:%d%dn",d,c);else if(d

2、!=0)printf("1:%dn",d);從 10 至 20 之間的素數(shù),自動輸出(我的)#include<stdio.h>#include<math.h>void main()int x,k;for(x=10;x>=10&&x<=20;x+)for(k=2;k<=sqrt(x);k+)if(x%k=0) break; if(k>sqrt(x) printf(" %d ",x);0-9 這十個數(shù)字組成多少個無重復(fù)的三位數(shù)#include<stdio.h>void main()i

3、nt x,a,b,c,num=0;for(x=100;x<=999;x+)a=x/100;b=x/10%10;c=x%10; if(a!=b&&a!=c&&b!=c)num+;printf("%5d",x);printf("n number= %d",num);求 300 內(nèi)能被 17 整除的最大數(shù) #include<stdio.h> void main()int x;for(x=300;x>=1;x-)if(x%17=0) break; printf("x=%dn",x);斐波

4、那契數(shù)列#include<stdio.h>void main()long f1=1,f2=1,f3;int k;printf("%1dt%1dt",f1,f2); for(k=3;k<=30;k+)f3=f1+f2;printf("%dt",f3);f1=f2;f2=f3;continue求 300 以內(nèi)能被 17 整除的所有整數(shù),用#include<stdio.h>void main()int x;for (x=1;x<=300;x+)if(x%17!=0) continue; printf("%dt&qu

5、ot;,x);輸出三角形星花#include <stdio.h>void main()int k1,k2;for(k1=1;k1<=4;k1+)putchar('t'); for(k2=1;k2<=k1;k2+) putchar('b');for(k2=1;k2<=k1*2-1;k2+) putchar('*');putchar('n');求s=2/1-3/2+5/3-8/ 5求前十項的和#include<stdio.h>void main()float s=0,f1=2,f2=1,f=1

6、,t,n;for(n=1;n<=10;n+)s=s+f*f1/f2;f=f*(-1); t=f2;f2=f1;f1=f1+t;printf("s=%fn",s);逆序輸出任意整數(shù)#include <stdio.h>void main()long x,y;scanf("%d",&y);while(y!=0)3 / 16printf("%d",x);y=y/10;函數(shù)求和#include<stdio.h>void main()float add(float,float);float a,b,c; sc

7、anf("%f,%f",&a,&b); c=add(a,b); printf("sum is %f",c);float add(float x,float y)float z;z=x+y;return(z);輸入年月日輸出該天在該年的天數(shù) #include<stdio.h> int leap(int year)int lp; lp=(year%4=0&&year%100!=0|year%400=0)?1:0; return lp;int month_day(int year,int month)int d; s

8、witch(month)case 1:case 3:case 5:case 7:case 8:case 10:case 12:d=31;break;case 2:d=leap(year)?29:28;break; default:d=30;return d;int days(int year,int month,int day)int i,ds=0;for(i=1;i<month;i+) ds=ds+month_day(year,i);ds=ds+day; return ds;void main()int year,month,day,t_day; scanf("%d_%d_%

9、d",&year,&month,&day); t_day=days(year,month,day);printf("%d_%d_%d is %dn",year,month,day,t_day); 計算 x 的 n 次方 #include<stdio.h> void main() float power(float x,int n);float x,y;int n; scanf("%f,%d",&x,&n); y=power(x,n); printf("%f",y);floa

10、t power(float x,int n)int i;float t=1; for(i=1;i<=n;i+) t=t*x;return t;求和#include<stdio.h>void main()float add(float,float);float a,b,c; scanf("%f,%f",&a,&b); c=add(a,b); printf("sum is %f",c);float add(float x,float y)float z;z=x+y;return(z);交換兩個數(shù) 1(這個不能交換) #inc

11、lude<stdio.h> void swap(int a,int b);void main()int x=7,y=11; printf("x=%d,ty=%dn",x,y); printf("swapped:n");swap(x,y); printf("x=%d,ty=%dn",x,y);void swap(int a,int b)int temp; temp=a;a=b;b=temp;交換兩個數(shù) 2(能換過來)#include<stdio.h>void swap(int *p1,int *p2)int p;

12、 p=*p1;*p1=*p2;*p2=p;void main()int a,b; scanf("%d,%d",&a,&b); printf("a=%d,b=%dn",a,b); printf("swapped:n");swap(&a,&b); printf("a=%d,b=%dn",a,b);遞歸算法計算 n!#include <stdio.h> long fac(unsigned n)long f;if(n=0)f=1;else f=n*fac(n-1); return

13、 f;void main()long y;int n; scanf("%d",&n); y=fac(n);printf("%d!=%ldn",n,y);例 5-1 輸入 10 個數(shù),正序逆序輸出,用數(shù)組 #include<stdio.h> void main()int i;int a10;printf("input 10 numbersn"); for(i=0;i<10;i+)scanf("%d",&ai); printf("n");for(i=0;i<=

14、9;i+) printf("%d ",ai);printf("n"); for(i=9;i>=0;i-) printf("%d ",ai);利用數(shù)組,求斐波拉契數(shù)列的前 10 項 #include<stdio.h> void main()int i;static int a10=1,1; for(i=2;i<10;i+) ai=ai-1+ai-2;for(i=1;i<10;i+) printf("%d ",ai);求若干數(shù)(不多于 10 個)的最大數(shù),最小數(shù) #define N 10#

15、include<stdio.h> void main()int i,n;float aN,max,min; printf("input data numbers"); scanf("%d",&n);printf("enter numbers:"); for(i=0;i<n;i+)scanf("%f",&ai); max=min=a0;for(i=1;i<n;i+) if(ai>max) max=ai;if(ai<min) min=ai; printf("

16、nmax=%f,min=%fn",max,min);輸入 10 個數(shù),求它們的和 #include<stdio.h> void main()int a10;int i,sum=0; for(i=0;i<=9;i+)printf("enter number %d:",i+1); scanf("%d",&ai);sum+=ai; printf("the totle is :%dn",sum);冒泡排序法#include<stdio.h>void main()int a6;int i,j,t;

17、printf("input 6 numbers:n"); for(i=0;i<6;i+) scanf("%d",&ai); printf("n"); for(j=1;j<6;j+) for(i=0;i<6-j;i+)if (ai>ai+1) t=ai;ai=ai+1;ai+1=t; printf("the sored numbers:n"); for(i=0;i<6;i+) printf("%d ",ai); printf("n");判斷

18、是否為回文數(shù)#include<stdio.h>void main()long x;int i,j,n,d20;scanf("%ld",&x);n=0;dodn=x%10;x=x/10;n+; while(x!=0);for(i=0,j=n-1;i<j;i+,j-) if(di!=dj) break; if(i<j) printf("not"); else printf("yes");二維數(shù)組的輸入輸出#include<stdio.h>void main()int i,j,a34;printf

19、("input array numbers:n"); for(i=0;i<3;i+)for(j=0;j<4;j+) scanf("%d",&aij);printf("output array numbers:n");for(i=0;i<3;i+)for(j=0;j<4;j+)printf("%d ",aij); printf("n");N行M列二維數(shù)組找出最大值,及最大值所在行列#define N 2#define M 3#include<stdio.h&g

20、t;void main()int i,j,xNM,max,line,col;printf("input array numbers:n");for(i=0;i<N;i+)for(j=0;j<M;j+)scanf("%d",&xij);max=x00;line=0;col=0;for(i=0;i<N;i+)for(j=0;j<M;j+)if(max<xij)max=xij;line=i;col=j; printf("nmax=%dtline=%dtcol=%dn",max,line,col);輸入字

21、符串,統(tǒng)計小寫大寫字母、數(shù)字、其他字符的個數(shù)#include<stdio.h>void main()int i,m,n,x,y;char s80;printf("input a string:n");scanf("%s",s);m=n=x=y=0;i=0;while(si!='0')if(si>='a'&&si<='z') m+;else if(si>='A'&&si<='Z') n+;else if(si&

22、gt;='0'&&si<='9') x+;else y+;i+; printf("az:%dnAZ:%dn09:%dnothers:%dn",m,n,x,y);s2中將字符串S1從第m個字符開始剩余的所有字符,送入字符數(shù)組 #include<stdio.h>void main()int i,j,m;char s180,s280; printf("input a string:n");gets(s1); printf("input start point:n"); sca

23、nf("%d",&m);i=m-1;j=0; while(s1i!='0') s2j=s1i;i+;j+;s2j='0'puts(s2);字符串拷貝函數(shù)#include<stdio.h> #include<string.h> void main()static char a10="abcdefghi"char b="happy" strcpy(a,b);puts(a);字符串連接函數(shù)#include<stdio.h> #include<string.h&

24、gt; void main()static char a20="my name is ",b10="li ming" strcat(a,b);puts(a); 計算字符串長度的函數(shù):#include<stdio.h>#include<string.h> void main()static char st20="hello0abcd0abc0" printf("%d",strlen(st); (去掉 hello 后的那些,結(jié)果也是 5)用字符串處理函數(shù),判斷回文數(shù)#include<std

25、io.h>#include<string.h>void main()char a10;int i,j,n,f=1;gets(a);n=strlen(a);for(i=0,j=n-1;i<j;i+,j-)if(ai!=aj)f=0;break;if(f=1) printf("yes");一個數(shù)組 10 個整形元素,求出各素數(shù)之和(數(shù)組元素作為函數(shù)的參數(shù))#include<stdio.h>#include<math.h>void main()int a10,i,sum=0;int prime(int x);printf("

26、;enter 10 numbers:n");for(i=0;i<10;i+) scanf("%d",&ai); if(prime(ai)( prime(ai) 返回的值只是 1 或 0,若是 0,則 if 錯誤,就不進(jìn)行下一步 sum+=ai 。若是 1,則進(jìn)行下一步。 )sum+=ai; printf("sum=%dn",sum);int prime(int x)int f=1,k;if(x=1) f=0;for(k=2;k<=sqrt(x);k+)if(x%k=0) f=0;break; return(f);數(shù)組名作為函

27、數(shù)的參數(shù)(計算一個數(shù)組中的某幾項的和) #include<stdio.h> int f(int b,int m,int n)int i,s=0;for(i=m;i<n;i=i+2) s=s+bi;return s;void main()int x,a=1,2,3,4,5,6,7,8,9; x=f(a,3,7);printf("%dn",x);【指針】* 求其后內(nèi)存地址中的內(nèi)容 #include"stdio.h" void main()int a,b;int *p1,*p2; a=100;b=10;p1=&a;p2=&b;

28、printf("%d,%dn",a,b); printf("%d,%dn",*p1,*p2);對輸入的兩個整數(shù)按大小順序輸出 #include <stdio.h> void main()int *p1,*p2,*p,a,b; a=5;b=9; p1=&a;p2=&b;if(a>b)p=p1;p1=p2;p2=p; printf("a=%d,b=%dn",a,b);printf("max=%d,min=%dn",*p1,*p2);交換兩數(shù) 1,能#include<stdio.h

29、>void main()void swap(int *pa,int *pb);int a,b;int *p1,*p2;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a<b)swap(p1,p2);printf("n%d,%dn",a,b);void swap(int *pa,int *pb)int p;p=*pa;*pa=*pb;*pb=p;交換兩數(shù) 2,能#include<stdio.h> void main()int a,b;void swap(int *pa,int

30、*pb); scanf("%d,%d",&a,&b); if(a<b)swap(&a,&b);printf("n%d,%dn",a,b);void swap(int *pa,int *pb)int p; p=*pa;*pa=*pb;*pb=p; 交換兩數(shù) 3,不能 #include<stdio.h> void main()int a,b; int *p1,*p2; void swap(int *pa,int *pb); scanf("%d,%d",&a,&b); p1=&a;p2=&b; if(a<b) swap(p1,p2);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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論