C語言程序簡(jiǎn)單例子_第1頁
C語言程序簡(jiǎn)單例子_第2頁
C語言程序簡(jiǎn)單例子_第3頁
C語言程序簡(jiǎn)單例子_第4頁
C語言程序簡(jiǎn)單例子_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)驗(yàn)二參考答案 1輸入兩個(gè)整型數(shù)字,輸出他們的和。 #include main() int a, b, sum; scanf( “d%d”, sum=a+b; printf( a+“b=%d”,sum); 2輸入兩個(gè)實(shí)型數(shù),輸出他們的和與乘積。 #include main() float a, b, sum, product; scanf( “f%f ”, sum=a+b; product=a*b; printf( a+“b=%5.2f, a*b =%5.2f ”,sum, product); 22 b, c的值由鍵盤輸入) 3求方程ax bx c 0的根(設(shè)b 4ac )(其中a, #i n

2、clude #in clude mai n() float a, b, c, dt, x1, x2; scanf( “f%f%f ”, dt=sqrt(b*b-4*a*c); x1=(-b+dt)/(2*a); x2=(-b-dt)/(2*a); printf( x1“=%5.2f, x2 =%5.2f”x,1, x2); h 和 f 的值由鍵 4雞兔同籠,已知雞兔總頭數(shù)為h,總腳數(shù)為f,求雞兔各多少只? 盤輸入,輸出雞和兔的頭數(shù)) #include main() int h, f, x,y; scanf( “d%d” x=2*h-f/2; y=f/2-h; printf( x=“%d, y

3、=%d”,x, y); 實(shí)驗(yàn)三參考答案 1.輸入三個(gè)數(shù)a、b、c,要求按由小到大的順序輸出。 #include main() float a,b,c,t; scanf(“%f,%f,%f ”, if(ab) t=a; a=b; b=t; if(ac) t=a; a=c; c=t; if(bc) t=b; b=c; c=t; printf( “%f,%f,%f ”,a,b,c); c 能否構(gòu)成三角形,若不 直角還是一般三角形。 2編寫程序,輸入三角形三邊 a、b、c,判斷a b、 能則輸出相應(yīng)的信息,若能則判斷組成的是等腰、等邊、 (1) #include main() float a,b,c,

4、t; scanf(“%f,%f,%f ”, if(ab) t=a; a=b; b=t; if(ac) t=a; a=c; c=t; if(bc) t=b; b=c; c=t; if(a+bc) if(a=b|b=c) if(a=c) printf(等邊三角型”); else if(c*c=a*a+b*b) printf(等腰直角三角形”); else printf( 一般等腰三角形”); else if(c*c=a*a+b*b) printf( 一般直角三角形”); else printf( 一般三角形”); else printf(不構(gòu)成三角形”); #i nclude mai n() fl

5、oat a,b,c,t; scanf( %f,%f,%f ”, else if (a=b) printf( 一般等腰三角形”); else if(c*c=a*a+b*b) printf( 一般直角三角形”); else printf( 一般三角形”); 3.編程實(shí)現(xiàn)下列函數(shù) x(x1) y= 2x-1(1 x 10) |3x-11| (x 10) #include #include main() int x,y; printf(input x=:); scanf(%d, if(x1) y=x; else if(x10) y=2*x-1; else y=abs(3*x-11); printf(x

6、=%d y=%dn,x,y); 4編寫程序,輸入一百分制成績,對(duì)應(yīng)輸出等級(jí)A 、B、C、 D、E,90 分以上為 A, 80分一89分為B , 70分一79分為C, 60分一69分為D, 60分以下為E。 方法一:用 if 語句 #include main() float score; char grade; scanf(%f, if(score100|score=90) grade=A; else if(score=80) grade=B; else if(score=70) grade=C; else if(score=60) grade=D; else grade=E; printf(t

7、he student grade=%c n, grade); 方法二:用 switch 語句。 注意, case 后的表達(dá)式必須是一個(gè)常量表達(dá)式,所以在以用 switch 語句之前,必須把 0100之間的成績分別化成相關(guān)的常量。所有A (除100以外),B, C, D類的成績的 共同特點(diǎn)是十位數(shù)相同,此外都是E類。則由此可得把score除十取整,化為相應(yīng)的常 數(shù)。 #include main() float score, int s; char grade; scanf(%f, s=score/10; if(s10) printf(ninput error!); else switch (s)

8、 case 10: case 9: grade =A; break; case 8: grade =B; break; case 7: grade =C; break; case 6: grade =D; break; default: grade =E; printf(the student grade =%c n , ch); 實(shí)驗(yàn)四參考答案 1編寫程序,計(jì)算以下級(jí)數(shù)前 n 項(xiàng)之和。 sum 1 x x2/2! x3/3! x4/4! . xn /n! #include void main() int i, n; float s=1.0, sum=1.0, x; scanf(“%d, %f

9、”, for(i=1; i=n; i+) s=s*x/i; sum=sum+s; printf( “sum=%5.2f”, sum); 2編程打印如下圖案(書后習(xí)題第 3 題): * * * * * #include main( ) int i, j, n; for(i=1; i=7; i+) for(j=0; j14-2*i; j+)printf( ); for(j=0; j2*i; j+)printf(*); printf(n); 3編寫程序?qū)崿F(xiàn)輸入整數(shù)n,輸出如下所示由數(shù)字組成的菱形。(圖中n=5) 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4

10、3 2 1 1 2 3 4 3 2 1 1 2 3 2 1 1 2 1 1 #include main( ) int i, j,n; scanf(%d, for(i=1; in; i+) printf( %d, j); printf( %d, j); printf( %d, j); printf( %d, j); for(j=1;j0;j-) printf(n); for(i=n; i0; i-) for(j=1;j0;j-) printf(n); 4.輸出Fibonacci數(shù)列第n項(xiàng)。其數(shù)列通項(xiàng)公式為 Fn=Fn-i+Fn-2, F1=1, F2=1 方法一: #include main()

11、 float f, f1=1, f2=1; int i, n; scanf(%d, for(i=3; i=n; i+) f=f1+f2; f1=f2; f2=f; printf(%10.0f n, f ); 方法二: #include #define NUM 20 void main() int i; float fNUM=1,1; for(i = 2; i NUM; i+) fi = fi-2+fi-1; for(i = 0; i NUM; i+) printf(%10.0f n, fi); 實(shí)驗(yàn)五參考答案 1 編寫程序,將1,2, 3這三個(gè)數(shù)賦給數(shù)組a,將5, 6, 7賦給數(shù)組b,將兩數(shù)組

12、對(duì)應(yīng) 元素相加的和賦給數(shù)組c,輸出數(shù)組c #include void main() int a3=1,2,3, b3=4,5,6, c3; int i; for(i=0;i3;i+) ci=ai+bi; printf(%d,ci); 2輸入任意 10個(gè)數(shù),按從大到小或從小到大的順序輸出( “冒泡”排序) #include #define NUM 10 void main () int aNUM, i, j, temp, flag; printf (input %d numbers: n, NUM); for (i=0; iNUM; i+) scanf (%d, for (i=1; iNUM;

13、i+) for (j=0; jaj+1) temp=aj; aj=aj+1; aj+1=temp; flag = 1; if (flag = 0) break; printf (the sorted numbers:n); for (i=0; iNUM; i+) printf (%d , ai); 3輸入 10 個(gè)整數(shù)并存放在一維數(shù)組中,找出其中最大值和此元素的下標(biāo) #include #define NUM 10 void main() int aNUM; int i,max, index; for(i=0; iNUM;i+) scanf(%d, max=a0; for(i=0; iNUM;i

14、+) if(maxai) max=ai; index=i; printf(max=%d, index=%d, max, index); 4將從鍵盤輸入的字符串進(jìn)行逆序輸出,逆序后的字符串仍然保留在原來字符數(shù)組中 (不得調(diào)用任何字符串處理函數(shù)包括 strlen) #include #define NUM 80 void main() char aNUM, temp; int i, j, index; for(i=0; iNUM;i+) scanf(%c, if(ai=n) break; ai=0; index=i; i+, j-) for(i=0, j=index-1; i=index/2; t

15、emp=ai; ai=aj; aj=temp; for(i=0; iNUM; i+) if(ai=0) break; printf(%c, ai); printf(n); 實(shí)驗(yàn)五參考答案 2 請(qǐng)同學(xué)們用有返回值和 1編寫函數(shù),求表達(dá)式 x 5x 4 的值, x 有由主函數(shù)輸入。 無返回值兩種方式去做,練習(xí)簡(jiǎn)單的函定義、聲明、及調(diào)用方法) 有返回值 #include float fun(float x) float m ; m=x*x-5*x+4; return m ; void main() float a, f; scanf(%f, f=fun(a); printf(%f n, f); 無返

16、回值 #include void fun(float x) float m ; m=x*x-5*x+4; printf(%f n, m); void main() float a; scanf(%f, fun(a); 2 編寫函數(shù),按如下遞歸公式求函數(shù)值。 1(n=0) fun(n)= y 2 fun(n 1)1 (n 0) #i nclude int fun (i nt n) int m; if(n=O) m=1; else m=2*fu n(n-1)+1; return m; void main() int a, f; sca nf(%d, f=fun (a); prin tf(%d n,

17、 m); n由主函數(shù)輸入 3編寫函數(shù)求數(shù)n所有質(zhì)因子(所有為素?cái)?shù)的因子)并輸出, #include #in clude int prime(i nt m) int j; if (m = 1) return 0; else if (m = 2) retur n 1; else if (m%2=0) return 0; else for(j=3; j=sqrt(m); j+=2) if(m%j=0) return 0; return 1; void main() int i,n,flag; scanf(%d, for (i=1;i=n; i+) if(n%i=0) flag=prime(i); e

18、lse flag=0; if(flag=1) printf(%d n,i); 4哥德巴赫猜想之一是,任何一個(gè)大于 5 的偶數(shù)都可以表示為兩個(gè)素?cái)?shù)之和。編寫程 序驗(yàn)證這一論斷。 #include int prime(int m) int j; if (m = 1) return 0; else if (m = 2) return 1; else if (m%2=0) return 0; else for(j=3; j=sqrt(m); j+=2) if(m%j=0) return 0; return 1; main( ) int a,b,c,n; scanf(%d, for (a=6; a=n;

19、 a+=2) for (b=3; b=a/2; b+=2) if (prime(b)=1) c=a-b; if (prime(c)=1) printf(%d=%d+%dn,a,b,c); break; 將所有總成績 5.二維數(shù)組score中存放5個(gè)學(xué)生的3門課成績,由主函數(shù)輸入一個(gè)數(shù), 大于該數(shù)的學(xué)生輸出。 #include void max(float a53, float score) int i,j; float s; for(i=0;i5;i+) s=0; for(j=0; jscore) printf(stu%d: %.2fn, i+1, s); void main() int i,

20、j; float a53; float score; printf(please input number:n); for(i=0; i5; i+) printf(stu%d:, i+1); for(j=0; j3;j+) scanf(%f, printf(n); printf(please input score:); scanf(%f, max(a,score); 實(shí)驗(yàn)七參考答案 1用指針變量輸出任意 4*4 矩陣各元素的值 (1) #include stdio.h void main() int i,a44=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1; int *p=

21、a; for(i=0;i4*4;i+) printf(%3d,*(p+i); if(i+1)%4=0) printf(n); (2) #include stdio.h void main() int a44=1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4; int (*p)4=a; int i,j; for(i=0;i4;i+) for(j=0;j4;j+) printf(%3d,*(*(p+i)+j); printf(n); printf(n); 2有一個(gè)整型二維數(shù)組 amn ,找出最大值所在的行和列,以及該最大值 #include stdio.h void main() i

22、nt a44=1,34,35,26,7,12,92,24,55,33,53,6,7,41,34,64; int (*p)4=a; int i,j,x,y,max; max=a00; for(i=0;i4;i+) for(j=0;j4;j+) printf(%3d,*(*(p+i)+j); if(max*(*(p+i)+j) max=*(*(p+i)+j); x=i; y=j; printf(n); printf(nmax=%dnx=%dny=%dn,max,x,y); 3從鍵盤輸入一字符串,求此字符串的長度并輸出 #include int str_len(char *p) int n=0; w

23、hile(*p!=0) n+; p+; return n; int main() char a100; int n; printf(Input a string:n); gets(a); n=str_len(a); printf(The lenth:%dn,n); 4將字符串 str 中的小寫字母全部改為大寫字母,并輸出該字符串 #include stdio.h void fun(char *p) int i; for(i=0;*(p+i)!=0;i+) if(*(p+i)=a void main() char str50; char *p=NULL; printf(Please input

24、string:n); gets(str); p=str; fun(p); puts(str); 實(shí)驗(yàn)八參考答案 1. 編寫程序: 定義一個(gè)職工結(jié)構(gòu)體類型, 定義職工結(jié)構(gòu)體變量, 從鍵盤輸入一名職工信 息,然后輸出。(假設(shè)職工信息包括:姓名、身份證號(hào)、工齡、工資) #include struct employee char name20; char id20; int gl; int salary; ; int main() struct employee em; printf(Name:n); scanf(%s,); printf(HM:n); scanf(%s,em.id);

25、printf(GL:n); scanf(%d, printf(GZ:n); scanf(%d, printf(Name:%s HM:%s GL:%d GZ:%dn,,em.id,em.gl,em.salary); return 0; 2. 設(shè)計(jì)一個(gè)保存學(xué)生情況的結(jié)構(gòu)體,學(xué)生情況包括姓名、學(xué)號(hào)、年齡。輸入 5 個(gè)學(xué)生的 情況,輸出學(xué)生的平均年齡和年齡最小的學(xué)生的情況 #include struct Student char name100; / 姓名 char stdNo10; / 學(xué)號(hào) int age; / 年齡 ; / 輸入學(xué)生信息 void input (Student *stu, int n) prin

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論