成都信息工程學(xué)院C語言系統(tǒng)全部答案_第1頁
成都信息工程學(xué)院C語言系統(tǒng)全部答案_第2頁
成都信息工程學(xué)院C語言系統(tǒng)全部答案_第3頁
成都信息工程學(xué)院C語言系統(tǒng)全部答案_第4頁
成都信息工程學(xué)院C語言系統(tǒng)全部答案_第5頁
已閱讀5頁,還剩89頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、分類一1. 編寫一程序p1-111.c實現(xiàn)以下功能x(x只考慮整數(shù)int且必須定義為int、但f(x)完全可能超過int的表示范圍)通過鍵盤輸入(輸入前給出提示please input x:),然后計算并在屏幕上輸出函數(shù)值。注意,圖1中的括號不是<>而是(),編程可用素材:printf("please input x: ").。 -5x+27   (x<0)f(x)= 7909     (x=0)2x-1 &

2、#160;   (x>0)程序的運行效果應(yīng)類似地如圖1所示,圖1中的3是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main(void)int x;double y;printf("please input x:");scanf("%d", &x);if (x > 0)y = (double) 2 * x - 1;elseif (x = 0)y = (double) 7909;elsey = (double) - 5 * x + 27;printf("nf(%d

3、) = %.0lfn", x, y);return 0;2. p1-113已知某銀行整存整取存款不同期限的年息利率分別為:3.15%期限一年,3.63%期限二年, 4.02%期限三年,4.69%期限五年,5.36%期限八年。從鍵盤上輸入存錢的本金(以元為單位,必須定義為int且應(yīng)考慮金額很大的情況)和存款期限(只考慮1,2,3,5,8),求到期時能從銀行得到的利息(以元為單位,應(yīng)考慮有小數(shù),不計復(fù)利)。編程可用素材:printf("nplease input benjin,cunqi:").、printf("nlixi

4、60;= . yuan".。程序的運行效果應(yīng)類似地如圖1所示,圖1中的10000,8是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main(void)int benjin, cunqi;double lixi;double money;printf("nplease input benjin,cunqi:");scanf("%d,%d", &benjin, &cunqi);money = benjin;if ( cunqi = 1 )lixi = money * cunqi

5、* 3.15 / 100;elseif ( cunqi = 2 )lixi = money * cunqi * 3.63 / 100;else if ( cunqi = 3 )lixi = money * cunqi * 4.02 / 100;elseif ( cunqi = 5 )lixi = money * cunqi * 4.69 / 100;else if ( cunqi = 8 )lixi = money * cunqi *5.36 / 100;printf("nlixi = %.2f yuann", lixi);return 0;3. p1-114編寫一個簡單計

6、算器程序,輸入格式為:data1 op data2。其中data1和data2是參加運算的兩個數(shù)(data1、data2必須定義為int,但二者相加可能超出int能表示的范圍),op為運算符,它的取值只能是+、-、*、/、%。程序的運行效果應(yīng)類似地如圖1、圖2、圖3、圖4所示,圖1中的3000 + 2000、圖2中的3000 % 2000、圖3中的3000 % 0和圖4中的3000 / 0是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )in

7、t data1, data2;double jieguo;char op;printf("nplease input data1 op data2:");scanf("%d %c %d", &data1, &op, &data2);switch ( op )case '+':jieguo = ( double ) data1 + data2;printf("n%d%c%d=%.0fn", data1, op, data2, jieguo);break;case '-':jiegu

8、o = ( double ) data1 - data2;printf("n%d%c%d=%.0fn", data1, op, data2, jieguo);break;case '*':jieguo = ( double ) data1 * data2;printf("n%d%c%d=%.0fn", data1, op, data2, jieguo);break;case '/':if ( data2 != 0 )jieguo = ( double ) data1 / data2;printf("n%d%c%d

9、=%.0fn", data1, op, data2, jieguo);break;elseprintf("nerror! chu shu wei 0.n");break;case '%':if ( data2 != 0 )jieguo = data1 % data2;printf("n%d%c%d=%.0fn", data1, op, data2, jieguo);break;elseprintf("nerror! chu shu wei 0.n");break;default:printf("ne

10、rror!n");return 0;4.輸入月份,打印2003年該月有幾天。當(dāng)輸入的月份超范圍時,應(yīng)顯示“invalid month input”。程序的運行效果應(yīng)類似地如圖1和圖2所示,圖1中的4和圖2中的13是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )int month;int day;printf("nplease input the month number:");scanf("%d", &month);switch ( month )case 1:

11、case 3:case 5:case 7:case 8:case 10:case 12:day = 31;printf("n2003.%d has %d days.n", month, day);break;case 4:case 6:case 9:case 11:day = 30;printf("n2003.%d has %d days.n", month, day);break;case 2:day = 28;printf("n2003.%d has %d days.n", month, day);break;default:pr

12、intf("ninvalid month inputn");return 0; 5.已知某公司員工的保底薪水為500,某月所接工程的利潤profit(整數(shù))與利潤提成的關(guān)系如下(計量單位:元):profit1000 沒有提成;1000profit2000 提成10%;2000profit5000 提成15%;5000profit10000提成20%;10000profit提成25%。請根據(jù)輸入的利潤計算員工的薪水。程序的運行效果應(yīng)類似地如圖1所示,圖1中的2000是從鍵盤輸入的內(nèi)容。#include < stdio.h >int m

13、ain( void )int profit;double salary = 500;printf("ninput profit:");scanf("%d", &profit);if ( profit <= 1000 )salary = 500;if ( profit > 1000 && profit <= 2000 )salary = salary + profit * 0.1;if ( profit > 2000 && profit <= 5000 )salary = salary

14、+ profit * 0.15;if ( profit > 5000 && profit <= 10000 )salary = salary + profit * 0.2;if ( profit > 10000 )salary = salary + profit * 0.25;printf("salary=%.2fn", salary); return 0;6.編寫一程序p7-708.c實現(xiàn)以下功能輸入一個三位正整數(shù),然后逆序輸出。如輸入123,則輸出321。程序的運行效果應(yīng)類似地如圖1所示,圖1中的752是從鍵盤輸入的內(nèi)容。#includ

15、e<stdio.h>#include<stdlib.h>/*int main(void)int num, i;char str4;printf("input an integer:");scanf("%d", &num);itoa(num, str, 10);printf("the result is ");for(i = 2; i >= 0; i-)printf("%c", stri);printf("n");return 0;*/int main(voi

16、d)int num;printf("input an integer:");scanf("%d", &num);printf("the result is ");doprintf("%d", num%10);num = num/10; while (num);printf("n");return 0;cf7. 編寫一程序p7-713.c實現(xiàn)以下功能用scanf輸入某年某月某日,判斷這一天是這一年的第幾天?以3月5日為例,應(yīng)該先把前兩個月的加起來,然后再加上5天即本年的第幾天,特殊情況,閏

17、年且輸入月份大于3時需考慮多加一天。注:判斷年份是否為閏年的方法為400的倍數(shù)為閏年,如2000年;若非100的倍數(shù),而是4的倍數(shù),為閏年,如1996年。程序的運行效果應(yīng)類似地如圖1所示,圖1中的2000-3-1是從鍵盤輸入的內(nèi)容。#include<stdio.h>int main(void)int ye, mo, da, sum = 0, i;int mday13 = 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31; printf("please input: year-month-dayn");scanf(

18、"%d-%d-%d", &ye, &mo, &da);for (i = 1; i < mo; i+)sum = sum + mdayi;if (ye % 400 = 0 | ye % 100 != 0 && ye % 4 = 0) && mo > 2)sum+;sum = sum + da;printf("it is the %dth day.n", sum);return 0;8. p7-723.c輸入三角形的三邊長a、b、c(邊長可以是小數(shù)),求三角形面積area,并輸出。如果輸入的

19、三邊構(gòu)不成三角形,應(yīng)給出“data error”的信息提示。注:根據(jù)“海倫秦九韶”公式,areap(p-a)(p-b)(p-c),其中p(a+b+c)/2。程序的運行效果應(yīng)類似地如圖1和圖2所示,圖1中的3,4,5和圖2中的3,4,8是從鍵盤輸入的內(nèi)容。#include < stdio.h >#include < math.h >int main( void )double aa, bb, cc, pp, ss, tt;printf("nplease input triange sides:");scanf("%lf,%lf,%l

20、f", &aa, &bb, &cc);if ( ( aa + bb > cc ) && ( aa + cc > bb ) && ( bb + cc > aa ) )pp = ( aa + bb + cc ) / 2;tt = pp * ( pp - aa ) * ( pp - bb ) * ( pp - cc );ss = sqrt( tt );printf("narea=%.2lfn", ss);elseprintf("ndata errorn");return 0;

21、9. 7-731輸出n行星號,每行5個*星號。程序的運行效果應(yīng)類似地如圖1所示,圖1中的4是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )int nn, i;printf("nplease input n:");scanf("%d", &nn);for ( i = 1; i <= nn; i+ )printf("* * * * *n");return 0;10.編寫一程序p7-736.c實現(xiàn)以下功能從鍵盤上輸入一個四位整數(shù),計算各個位上的數(shù)字之和。程序的運行效果應(yīng)類

22、似地如圖1所示,圖1中的1234是從鍵盤輸入的內(nèi)容。#include<stdio.h>int main(void)int num, sum = 0;printf("input a number with 4-digit: ");scanf("%d", &num);dosum = sum + num % 10;num = num / 10; while (num);printf("sum=%dn", sum);return 0;11. 從鍵盤輸入3個整數(shù),輸出絕對值最大的數(shù)。程序的運行效果應(yīng)類似地如圖1所示,圖1中的

23、1,2,3是從鍵盤輸入的內(nèi)容。#include<stdio.h>int ab(int x);int main(void)int num3, i, j;printf("input 3 numbers:");scanf("%d,%d,%d", &num0, &num1, &num2);j = 0;for (i = 1; i < 3; i+)if (ab(numj) < ab(numi)j = i;printf("the number with maximum absolute value is %d.

24、n", numj);return 0;int ab(int x)if (x >= 0)return x;return - x; 12. 設(shè)某企業(yè)2006年的產(chǎn)值為5000萬,計劃以后每年的增長率為x(x從鍵盤輸入,例如輸入8.75表示8.75%),計算該企業(yè)的產(chǎn)值在哪年實現(xiàn)翻番以及翻番時的產(chǎn)值,然后輸出(輸出時以萬為單位,應(yīng)考慮有小數(shù))。程序的運行效果應(yīng)類似地如圖1所示,圖1中的50是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main(void)float chanzhi = 5000, xx;int year = 2006;printf(&

25、quot;nplease input x:");scanf("%f", &xx);while ( chanzhi < 10000 )chanzhi = chanzhi * ( 1 + xx / 100 );year+;printf("nyear = %d nian, chanzhi = %.2fn", year, chanzhi);return 0;13.編寫一程序p2-221.c實現(xiàn)以下功能從鍵盤讀入一個字符串(最多127個字符),檢查該字符串是否是回文。所謂回文即正向與反向的拼寫都一樣,例如:adgda。程序的運行效果應(yīng)類似地

26、如圖1和圖2所示,圖1中的asdfghjhgfdsa和圖2中的asdfghjhgfdsaa是從鍵盤輸入的內(nèi)容。#include < stdio.h >#include < string.h >int main( void )int i, j, len;char aa128;printf("nplease input string:");gets(aa);len = strlen(aa);for ( i = 0, j = len - 1; i < j; i+, j-)if ( aai != aaj )break;if ( i >= j )p

27、rintf("n%s shi hui wen.", aa);elseprintf("n%s bu shi hui wen.", aa);return 0;14. 用scanf輸入10個整數(shù)(采用int數(shù)據(jù)類型),計算所有正數(shù)的和、負(fù)數(shù)的和以及10個數(shù)的和。程序的運行效果應(yīng)類似地如圖1所示,圖1中的4 6 20 -45 35 56 -23 -4 9 70是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )int aa

28、10, i;float sum1 = 0, sum2 = 0, sum3 = 0;printf("ninput 10 integers.n");for ( i=0; i<10; i+ )scanf("%d", &aai);for ( i=0; i<10; i+ )if ( aai > 0 )sum1 = sum1 + aai;elsesum2 = sum2 + aai;sum3 = sum1 + sum2;printf("nzhengshu=%.0f,fushu=%.0f,all=%.0fn", sum1,

29、sum2, sum3);return 0;15. 7-732編寫一程序p7-732.c實現(xiàn)以下功能,輸入3行3列的矩陣,輸出所有元素的累加和。程序的運行效果應(yīng)類似地如圖1所示,圖1中的        1 2 3        4 5 6        7 8 9是從鍵盤輸入的內(nèi)容。#include

30、< stdio.h >int main( void )int i, j, aa33, sum = 0;for ( i = 0; i < 3; i+ )for ( j = 0; j < 3; j+ )scanf("%d", &aaij);for ( i = 0; i < 3; i+ )for ( j = 0; j < 3; j+ )sum = sum + aaij;printf("sum=%d", sum);return 0;16. 編寫一程序p7-743.c實現(xiàn)以下功能從鍵盤輸入一串可帶空格的字符串,按逆序輸出

31、該字符串。注意,程序中不能使用庫函數(shù)strrev或使用同名的變量、函數(shù)、單詞。程序的運行效果應(yīng)類似地如圖1所示,圖1中的abc xyz是從鍵盤輸入的內(nèi)容。#include < stdio.h >#include < string.h >int main( void )char aa100, bb100;int i, j, len;printf("input a string:");gets(aa);len = strlen(aa);bblen='0'for ( i = 0, j = len - 1; i < len;

32、i+, j- )bbj = aai;printf("the result is:");puts(bb);return 0;17. 從鍵盤輸入一個一百分制成績,如果不在0100范圍內(nèi),則要求重新輸入數(shù)據(jù),直到輸入的數(shù)據(jù)在0100范圍內(nèi)。將輸入的數(shù)據(jù)轉(zhuǎn)換成等級a,b,c,d,e。90分以上為a,8089分為b,7079分為c,6069分為d,60分以下為e,要求使用switch case/default語句,結(jié)果賦值給變量grade,并將變量grade的值輸出到屏幕上。注意:變量數(shù)據(jù)類型的選擇應(yīng)適當(dāng),在保證滿足設(shè)計要求精度的情況下,養(yǎng)成不浪費內(nèi)存空間和計算時間的好習(xí)慣

33、。編程可用素材:printf("please input the score(0-100): ").、printf("score=.,grade=.n",.。程序的運行效果應(yīng)類似地如圖1所示,圖1中的103和55是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )float score;char grade;printf("please input the score(0-100):");scanf("%f", &s

34、core);while ( score > 100 | score < 0 )printf("nplease input the score(0-100):");scanf("%f", &score);switch ( ( int ) (score / 10 ) case 10:case 9:grade = 'a'break;case 8:grade = 'b'break;case 7:grade = 'c'break; case 6:grade = 'd'break;d

35、efault:grade = 'e' printf("score=%.1f,grade=%cn", score, grade); return 0; 18. 編寫一程序p7-750.c實現(xiàn)以下功能輸入字符串s(不超過100個字符),將字符串s中所有字符*刪除,并將修改后的字符串顯示出來。程序的運行效果應(yīng)類似地如圖1所示,圖1中的*dgjk* %&* *df78dg 88*是從鍵盤輸入的內(nèi)容。#include <stdio.h>int main( void )int i;char ss101;printf(&q

36、uot;please input a string:");gets(ss); for (i = 0; ssi; i+)if ( ssi != '0' && ssi != '*')printf("%c", ssi); printf("n");return 0;19.鍵盤輸入m,n(不超過1000的正整數(shù)),輸出介于m和n(含m和n)中能被3整除且至少有位數(shù)字是5的所有整數(shù)。程序的運行效果應(yīng)類似地如圖1和圖2所示,圖1中的100,200和圖2中的195,15是從鍵盤輸入的內(nèi)容。#include<

37、stdio.h>int main(void)int mm, nn, i, kk;printf("input m, n:");scanf("%d,%d", &mm, &nn);if (mm > nn)kk = mm;mm = nn;nn = kk;for (i = mm; i <= nn; i+)if (i % 3 = 0 && (i % 10 =5 | i % 100 / 10 = 5 | i / 100 = 5)printf("%d ", i);return 0; 20. 計算x的y

38、次方,其中y為整數(shù)(可以是負(fù)整數(shù)或0),x為實型。注意,程序中不能使用庫函數(shù)pow或使用同名的變量、函數(shù)、單詞。程序的運行效果應(yīng)類似地如圖1和圖2所示,圖1中的3.7,5和圖2中的4,-2是從鍵盤輸入的內(nèi)容。#include<stdio.h>int main(void)int yy, i;double xx, result = 1;printf("input x, y:");scanf("%lf,%d", &xx, &yy);if (yy > 0)for (i = 1; i <= yy; i+)result = r

39、esult * xx;if (yy < 0)for (i = 1; i <= - yy; i+)result = result / xx;printf("%.6lf%d=%.6lfn", xx, yy, result);return 0;分類二考試:21. 求s=1/1!+1/2!+1/3!+1/n!并輸出結(jié)果(顯示時小數(shù)部分占16位,計算時要求從第1項開始往后累加)。n為任意自然數(shù)(只考慮int型),從鍵盤讀入。程序的運行效果應(yīng)類似地如圖1所示,圖1中的18是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )

40、int i, nn;double ss = 0, tt = 1;printf("please input n:");scanf("%d", &nn);for (i = 1; i <= nn; i+)tt = tt * i;ss = ss + 1 / tt;printf("ns=1/1!+1/2!+.+1/%d!=%.16fn", nn, ss);return 0;22. 編寫一程序p2-219.c實現(xiàn)以下功能從鍵盤讀入一行字符(最多127個字符),將其中的數(shù)字字符以及這些數(shù)字字符的數(shù)量在屏幕上顯示,注意:要求先顯示這些數(shù)

41、字字符的數(shù)量。程序的運行效果應(yīng)類似地如圖1所示,圖1中的gfaskl45623cvsac,53dwafl faf32535as3bf0是從鍵盤輸入的內(nèi)容。#include < stdio.h >#include < string.h >int main( void )int i, j = 0, num = 0;char aa128, result128;printf("nplease input string:");gets(aa);for ( i = 0; aai; i+ )if ( aai >= '0' &

42、& aai <= '9' )num+;resultj = aai;j+;resultj = '0'printf("nshu zi ge shu wei:%dnshu zi wei:%sn", num, result);return 0;23. 編寫一程序p2-220.c實現(xiàn)以下功能從鍵盤讀入一行字符(最多127個字符),統(tǒng)計及輸出其中的字母、數(shù)字、空格和其他符號的個數(shù)。程序的運行效果應(yīng)類似地如圖1所示,圖1中的gfaskl45623cvsac,53dwafl faf32535是從鍵盤輸入的內(nèi)容。#include <

43、; stdio.h >#include < string.h >int main(void)int i, zimu = 0, shuzi = 0, kongge = 0, qita = 0;char aa128;printf("nplease input string:");gets(aa);for ( i = 0; aai; i+ )if ( aai >= 'a' && aai <= 'z' | aai >= 'a' && aai <= 'z&

44、#39; )zimu+;else if ( aai >= '0' && aai <= '9' )shuzi+;else if ( aai = ' ' )kongge+;elseqita+;printf("zimu=%d,shuzi=%d,kongge=%d,qita=%d", zimu, shuzi, kongge, qita);return 0;24. 編寫一程序p2-222.c實現(xiàn)以下功能從鍵盤上讀入一行字符(最多127個字符),按以下方法將其加密變換:a->z  &#

45、160;a->zb->y   b->yc->x   c->x   z->a   z->a即字母a變成z、字母b變成y.,非字母字符不變。最后在屏幕上先顯示這一行字符的長度,再顯示生成的密文。程序的運行效果應(yīng)類似地如圖1所示,圖1中的sfasfk,lmw4tywerysfcvasgewr xfasftg是從鍵盤輸入的內(nèi)容。#include < stdio.h >#include < string.h >

46、int main( void )char aa128;int i, len;printf("please input string:");gets(aa);for ( i = 0; aai; i+ )if ( aai >= 'a' && aai <='z' )aai = 'a' + 'z' - aai;if ( aai >= 'a' && aai <='z' )aai = 'a' + 'z'

47、- aai;len = strlen(aa);printf("nzi fu chuan chang du:%dnmi wen:", len);puts(aa);return 0;25. 編寫一程序p2-223.c實現(xiàn)以下功能一個球從10000m高度自由落下,每次落地后反跳回原高度的一半,再落下,再反彈。求它在第n(n從鍵盤輸入)次落地時,共經(jīng)過多少米?第n次反彈多高?注意,計算精度為小數(shù)點后6位,變量數(shù)據(jù)類型的選擇應(yīng)適當(dāng),在保證滿足設(shè)計要求精度的情況下,養(yǎng)成不浪費內(nèi)存空間和計算時間的好習(xí)慣。編程可用素材:printf("please input 

48、;n:").、printf("sn=.,hn=.".。程序的運行效果應(yīng)類似地如圖1所示,圖1中的10是從鍵盤輸入的內(nèi)容。#include<stdio.h>int main(void)int i, nn;float sn = 10000, hn = 5000;printf("please input n:");scanf("%d", &nn);for (i = 2; i <= nn; i+)sn = sn + 2 * hn;hn = hn / 2;printf("sn=%.6f,hn=%.6

49、fn", sn, hn);return 0;26. 編寫一程序p2-224.c實現(xiàn)以下功能猴子吃桃問題。猴子第一天摘下若干個桃子,當(dāng)即吃了一半,還不過癮,又多吃了一個。第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以后每天早上都吃了前一天剩下的一半零一個。到第n(n從鍵盤輸入)天早上想再吃時,就只剩下一個桃子了。求第一天共摘了多少個桃子(不考慮猴子是否真的能吃多少桃子)。程序的運行效果應(yīng)類似地如圖1所示,圖1中的13是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )int sum = 1, nn, i;printf("

50、please input n:");scanf("%d", &nn);for ( i = 1; i < nn; i+ )sum = 2 * ( sum + 1 );printf("total=%d", sum);return 0;27. 編寫一程序p7-716.c實現(xiàn)以下功能求s=a+aa+aaa+aaaa+aa.a的值,其中a是一個數(shù)字(可取19之間的一個值)。例如2+22+222+2222+22222(此時共有5個數(shù)相加),其中a值和有幾個數(shù)相加由鍵盤輸入控制。(注意s的值有可能超出int的范圍。)程序的運行效果應(yīng)類似地如圖1

51、所示,圖1中的2,3是從鍵盤輸入的內(nèi)容。#include<stdio.h>int main(void)int aa, nn, i; double sum = 0, sum1 = 0;printf("please input a,n: ");scanf("%d,%d", &aa, &nn);for (i = 1; i <= nn; i+)sum1 = sum1 * 10 + aa;sum = sum + sum1;printf("a+aa+.=%.0lfn", sum);return 0;28. 編寫一

52、程序p7-717.c實現(xiàn)以下功能輸入10個整型數(shù)存入一維數(shù)組,輸出值和下標(biāo)都為奇數(shù)(數(shù)組第1個元素的下標(biāo)為0)的元素及其個數(shù)。程序的運行效果應(yīng)類似地如圖1所示,圖1中的2 45 34 56 78 12 41 55 86 37是從鍵盤輸入的內(nèi)容。#include <stdio.h>int main( void )int i, count = 0, aa10;printf("input 10 intergers:n");for ( i = 0; i < 10; i+ )s

53、canf("%d", &aai);if ( i % 2 = 1 )if ( aai % 2 = 1 )count+;printf("count=%dn",count);for ( i = 0; i < 10; i+ )if ( i % 2 = 1 )if ( aai % 2 = 1 )printf("a%d=%dn", i, aai);return 0;29. 編寫一程序p7-718.c實現(xiàn)以下功能有一遞推數(shù)列,滿足f(0)=0,f(1)=1,f(2)=2,  f(n+1)=2f(n)+f(n-1)f

54、(n-2) (n>=2), 編寫程序求f(n)的值(n由鍵盤輸入,13>=n>=2)。注意,圖1中的括號不是<>而是(),編程可用素材:printf("input n (20>=n>=2): ").。程序的運行效果應(yīng)類似地如圖1所示,圖1中的10是從鍵盤輸入的內(nèi)容。#include <stdio.h>int main(void)int i, nn;double aa14;printf("input n (13>=n>=2):");scanf

55、("%d", &nn);aa0 = 0;aa1 = 1;aa2 = 2;for ( i = 3; i <= nn; i+ )aai = 2 * aai - 1 + aai - 2 * aai - 3;printf("nf(%d)=%.0lfn", nn, aann);return 0;30. 編寫一程序p7-725.c實現(xiàn)以下功能利用數(shù)組,求斐波拉契數(shù)列的前n(n的范圍為:320)項,并輸出到屏幕上(數(shù)和數(shù)之間用橫向跳隔隔開)。斐波拉契公式:f(1)=1,f(2)=1,f(n)=f(n-1)+f(n-2) (n3)。程序的運行效果

56、應(yīng)類似地如圖1所示,圖1中的11是從鍵盤輸入的內(nèi)容。#include<stdio.h>int main(void)int af20, i, shua;printf("input a data(3-20):");scanf("%d", &shua);af0 = 1;af1 = 1;for (i = 2; i < shua; i+)afi = afi - 1 + afi - 2;for (i = 0; i < shua; i+)if (i = shua - 1)printf("%d", afi);else

57、printf("%dt", afi);printf("n");return 0;31. 編寫一程序p7-745.c實現(xiàn)以下功能輸入兩個正整數(shù)m和n,求其最大公約數(shù)和最小公倍數(shù)。注:最大公約數(shù)也稱最大公因子,指某幾個整數(shù)共有因子中最大的一個;兩個整數(shù)公有的倍數(shù)稱為它們的公倍數(shù),其中最小的一個正整數(shù)稱為它們兩個的最小公倍數(shù)。程序的運行效果應(yīng)類似地如圖1所示,圖1中的35 15是從鍵盤輸入的內(nèi)容。#include < stdio.h >int main( void )int aa, bb, cc, dd, mm;printf("please input two integer numbers:");scanf("%d%d", &aa, &bb);cc = aa;dd = bb;if ( aa < bb )mm = aa;aa = bb;bb = mm;while ( aa % bb != 0 )mm = aa % bb;

溫馨提示

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

最新文檔

評論

0/150

提交評論