版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、C+程序設(shè)計(jì)實(shí)驗(yàn)(上)試卷庫題型 1 基本型 ( 順序、選擇 )1、輸入一個(gè)華氏溫度的值F,要求輸出其攝氏溫度值C,公式為C = |(F-32)【解答】#include<iostream>using namespace std;int main() float C, F cin>>F;C=5. 0/9. 0*(F-32. 0); cout<< , C=z/<<C<<endl; return 0;2、輸入三個(gè)整數(shù)a,b,c求其中的最大值并輸出之【解答 1】#in clude<iostream>using namespace
2、std;int main ()(int a, b, c, max cin>>a?b>>c;max =a;if(b> max ) max =b;if(c> max ) max 二 c; cout« /z max 二。max ?endl;return 0;【解答 2】#include<iostream>using namespace std;int main ()c;int a, b, c, max cin>>a?b>>if (b> a )max 二 b;elsemax 二 a;if(c> max ) m
3、ax =c;cout<< /z max 二。 max ?endl; return 0;【解答 3】#include<iostream>using namespace std;int main ()(int a, b, c, max cin>>a?b>>c;if(b>= a && b>=c)max =b;else if (c>= a )max 二 c;elsemax 二 a;,z= ,cout<< max<< max <<endl;return 0;3、從鍵盤輸入一個(gè)字符,若是大
4、寫字母,則將其轉(zhuǎn)換為小寫字母 其它字符則原樣輸出?!窘獯稹?include<iostream>using namespace std;int main()char chcin>>ch;if(chX'A'&&ch 二 'Z') ch 二 ch+'a'-'A'cout<< ,z ch = , z<< ch <<endl; return 0;4、從鍵盤輸入一個(gè)字符,若是小寫字母,則將其轉(zhuǎn)換為大寫字母其它字符則原樣輸出?!窘獯稹?in clude<iostr
5、eam>using n amespace std;int mai n()char chcin> >ch;if (ch ='a'&&ch ='z') ch =ch-('a'-'A'); cout<<,z ch =,z<< ch <<endl;return 0;5、輸入三個(gè)整數(shù)a,b,c求其中的最小值并輸出之。【解答1】#in clude<iostream>using n amespace std;int mai n()int a, b, c, minc
6、in>>a>b>> c;min =a;if(b< mi n) min =b;if(c< min) max 二 c;cout<<,z min =,<< min <<endl;return 0;)【解答2】#in clude<iostream>using n amespace std;int mai n()int a, b, c, mincin>>a> > b>> c;if (b< a )min =b;elsemin 二 a;if(c< min ) min =c
7、; cout<< , z min =, << min <<endl; return 0;)解答 3】#include<iostream>using namespace std;int main()int a, b, c, min cin>>a?b>>c;if(b 二 a && b<=c) min 二 b;else if(c<= a ) min 二 c;else min 二 a;cout<< /z min 二。 min ?endl; return 0;6、輸入一個(gè)攝氏溫度值C,要求輸出
8、其華氏溫度值F,公式為9F = -C + 325【解答】#include<iostream>using namespace std;int main() float C, F cin>>C;F=9. 0/5. 0*C+32. 0; cout<< , F=z/<<F<<endl; return 0;7、有函數(shù)x x < 1 時(shí) y - < 2x-lICxvlO 時(shí)3x-ll x > lO0t編寫程序輸入X,求對應(yīng)的函數(shù)值y【解答】#include<iostream> using namespace std;
9、int main()float x, y cin>>x; if(x<l)y 二 x ;else if(x<10 )y 二 2*xT;elsey 二 3*x-11;cout? y= <<y< endl;return 0;8、有函數(shù)sin x x < 0 時(shí)y = <2x + l 0 < x < 5 時(shí)x -10 x 2 5 時(shí)編寫程序輸入X,求對應(yīng)的函數(shù)值y?!窘獯稹?include<iostream>#include<math. h>using namespace std;int main()float
10、x, ycin>>x;if(x<0)y 二 sin(x);else if(x<5 )y =2*x+l;elsey =x10;cout y=<y endl;return 0;9、給定平面坐標(biāo)系中的兩個(gè)點(diǎn)尸 (為, 乂),。 ( 圣,乂 ),編程求兩點(diǎn)之間的距離。公式為"。|= 3 廠” +(乂一 y"【解答】#include<iostream>#include<math. h> using namespace std;int main ()float xl, x2, yl, y2, distancecin>>
11、xl>>yl>>x2 >>y2;distance 二 sqrt(xl-x2)* (xl-x2)+(yl-y2)* (yl-y2) cout<<, z distance二 distance ?endl;return 0;10、在平面坐標(biāo)系中的圓 O 是以原點(diǎn)為圓心、半徑為 1 的圓,給定 一個(gè)點(diǎn)尸(為,月,試判別點(diǎn)P與圓0是關(guān)系(是點(diǎn)在圓內(nèi)、圓上、 還是圓外)?!窘獯?1】#include<iostream>using namespace std;int main()float xl, x2=0, yl, y2=0, distancec
12、in>> xl>>yl;distance =sqrt(xlx2)* (xl-x2)+(yl-y2)* (yl-y2)if(distance >1 )z/cout<<點(diǎn)在圓外<<endl;else if(distance <1 )cout<< z/點(diǎn)在圓內(nèi)<<endl;elsecout<< z/點(diǎn)在圓上<<endl;return 0;11、輸入三個(gè)數(shù)a,b,c判斷他們能否作為三角形的三條邊?!窘獯稹?in clude<iostream>using namespace std;i
13、nt mai n()int a, b, ccin>>a>bc;if(b< a+c && a<b+c &&c<a+b)cout?,z a, b, c能作為三角形的三條邊?endl;else if(c<= a )cout?a, b, c不能作為三角形的三條邊?endl;return 0;12、輸入一個(gè)百分制成績score將其轉(zhuǎn)換為五分制成績 A? E,轉(zhuǎn)換規(guī) 貝S是:A ( 90 < SCORE < 100) ) , B ( 80 < SCORE < 90) ) ,C (70 < SCORE &
14、lt; 80) ) ,D ( 60 < SCORE < 70) ) ,E ( SCORE < 60)【解答】#in clude<iostream>using n amespace std;int mai n()(double score; char grade;cout << "score= ;cin >> score;if ( score < 0 | score > 100 ) cout 數(shù)據(jù)輸入錯(cuò)誤! << endl; else(switch ( int( score )/10 )(case10:cas
15、e9: grade ='a' ; break;case8: grade ='b' ; break;case7: grade ='c' ; break;case6: grade ='d' ; break;case5:case4:case3:case2:case1:case0: grade ='e' ; break;cout << grade << en dl;return 0;13、輸入三角形的三條邊,判別它們能否形成三角形,若能,則判斷是等邊、等腰、還是一般三角形?!窘獯稹?include&
16、lt;iostream>using namespace std;int main ()( double a, b, c ;cout << a, b, c 二;cin >> a >> b >> c ;if ( a+b > c && b+c > a && c+a > b ) if ( a二二 b && b 二二 c )cout < 等邊三角形! ? endl;else if ( a 二二 b | a 二二 c | b 二二 c )cout << 等腰三角形! ?
17、 endl;elsecout ? 一般三角形! << endl;elsecout ? 不能形成三角形!" ? endl ;return 0;14、輸入一個(gè)百分制成績score將其轉(zhuǎn)換為四分等級制成績 A? D, 換規(guī)則是:A ( 85 < SCORE < 100) ), B ( 75 < SCORE < 85) ) ,C (60 SCORE < 75) ) ,D ( SCORE < 60)【解答】#include<iostream>using namespace std;int main()( double score;ch
18、ar grade;cout ? "please input score:"cin >> score;if(score>=85)grade= , A, ;else if(score>=75)grade='B'else if(score>=60) grade= , Cr ;else grade='D'cout << "grade 二 << grade<< endl ;return 0;15、給定年份、月份,求該年的該月份有多少天?#include<iostream&
19、gt; using namespace std;bool leapYear (int year) ; /判斷 year 是否閏年 int main() ( int year, month,days;cout << "please input year, month: zz; cin >> year>>month;switch(month) case 1: case 3: case 5: case 7: case 8: case 10: case 12: days=31;case 4: case 6: case 9: case 11: days=30
20、;case 2: if(leapYear(year) days=29; else days=28;cout << "days= << days<< endl ; return 0;bool leapYear(int year) if(year%4=0)&& (year%100!=0)| (year%400=0) return true;return false;16、輸入某學(xué)生成績,若成績在 85分以上輸出 "very good 若”成, 績在60分到 85分之間輸出 "good ”若,成績低于 60分輸出 &q
21、uot;no good"?!窘獯稹?include<iostream> using namespace std;int main()( double score;cout ? "please input score:"cin >> score;if ( score 二 85 )cout ? "Very good!else if ( score =60 )cout ? Good! ; elsecout << No good!;17、輸入三個(gè)整數(shù),按從小到大的順序輸出它們的值?!窘獯稹?include<iostrea
22、m>using namespace std;int main()( int a, b, c, t;cout << a, b, c 二 ;cin >> a >> b >> c;if(a>b) ( t=a; a=b; b=t; if(a>c) ( t=a; a=c; c=t; if (b>c) t=b;b=c; c=t; cout<< a << 't'<t' ? c << endl; return 0 ;題型 2 循環(huán)1、輸入一個(gè)整數(shù),輸出該整數(shù)的所有素?cái)?shù)因子。
23、例如,輸入 120, 輸出為 2、2、2、3 和 5?!窘獯稹?include<iostream>using namespace std;int main()( int m,i = 2;cout << "please input m:;cin >> m;while( i<=m )if( m % i = 0 )( cout << i ? , ; m = m / i;else i+;return 0 ;2、使用迭代公式 1 =(必+。/"/ 2 ( = 0,1,2,? 5=。/ 2)編 程序 求某一正整數(shù) a 的平方根。【解
24、答】#include<iostream> #include<cmath> using namespace std;int main()( const double eps = le-8;double a,x0,x;cout? "please input a:"cin ? a;xO = a / 2;x = ( xO + a/xO )/2;while( fabs( x-xO )>eps )( xO = x; x =( xO + a/xO )/2;cout ? x ? endl; return 0 ;)3、已知 X=0° , 10, 20,
25、 ° 180-,求 sinx,cosx 和 tanx 的值?!窘獯稹?include<iostream>#include<cmath> #include<iomanip> using namespace std;int main ()( const double pi = 3.14159265;int i;double x, yl, y2, y3;cout ? setw(2) ? x << setw(15) << sin(x) << setw(15)<< cos(x) << setw(15
26、) << tg(x) ? endl;for( i=0; i<=18; i+ )( x = i*10*pi/180; yl 二 sin( x ); y2 二 cos (x); y3 = yl/y2; cout << setw( 2) << i << setw(15) ? yl << setw(15)<< y2 ? setw(15) ? y3 << endl; return 0 ;4、在 100到 200中找出同時(shí)滿足用 3除余 2,用 5除余 3和用 7除余 2 的所有整數(shù)?!窘獯稹?include<
27、iostream> using namespace std;int main()inti;for( i=100; iv=200; i+ ) if (i % 3 = 2) && (i % 5 = 3 ) && (i % 7 = 2 ) cout ? i ? endl; return 0 ;5、求 100到 999中的水仙花數(shù)。所謂水仙花數(shù)是指一個(gè)三位數(shù),它的每位數(shù)字的立方 之和等于該數(shù)。例如,因?yàn)?53=1 3+5 3+33,所以 153為水仙花數(shù)?!窘獯稹?include<iostream>using namespace std;int mai
28、n()( int i,a,b,c;for( i=100; i<=999; i+ ) a = i/100;b = (i-a*100)/10;c = i - a*100 - b*10;if (i = a*a*a + b*b*b + c*c*c ) cout? i ? endl; return 0 ;6、求 1000 之內(nèi)的所有完數(shù)。所謂完數(shù)是指一個(gè)數(shù)恰好等于它的 所有真因子之和。例如,因?yàn)?6=1+2+3,所以 6 為完數(shù)?!窘獯稹?include<iostream>using namespace std;int main() int i,j,s;for(i=l;iv=1000;
29、 i+) s = 0;for(j=l;jvi ; j+)if(i%j = O)s = s+j;if (i = s ) cout? i ? endl; return 0 ;7、編一程序顯示由符號組成的三角形圖案。例如,程序運(yùn)行后,屏幕顯示:How many lines ?用戶輸入:5屏幕顯示:What character ?用戶輸入:*則輸出如下圖案。解答】#include<iostream> using namespace std;int mai n ()(int i, j, k, n; char ch;cout How many lines ?n; cin»n;cout
30、«,zWhat character ?n ;cin> >ch;for ( i 二 1; i<=n; i+ )(for( k 二 1; k<=n-i; k+ )cout << ;for( j=l; j 二 2*i-1; j+ ) cout << ch ;cout << en dl;return 0 ;& 已知XYZ+YZZ=532,其中X, Y和Z為數(shù)字,X, Y和Z的值。【解答】#in clude<iostream>using n amespace std;int mai n()(int x, y, z,
31、 i ;for ( x=l; x<=9; x+ )for ( y=l; y<=9; y+ )for ( z=0; z<=9; z+ )(i = 100*x + 10*y + z + 100*y + 10*z + z;if ( i 二二 532 )cout<< /,X=, vvxvv,t' <<, y=z/vvyvv,t' <<return 0 ;9、統(tǒng)計(jì)輸入的一行字符(直到#號為止)中字母、符各多少個(gè)。10、打印九九乘法口訣表。編一程序求出/zz= ' ?z<<endl;數(shù)字及其它字1*1=11*2=2
32、2*2=41*3=3 2*3=6 3*3=91*4=42*4=83*4=124*4=161*5=52*5=103*5=154*5=205*5=251*6=62*6=123*6=184*6=245*6=306*6=361*7=72*7=123*7=214*7=285*7=356*7=427*7=491*8=82*8=163*8=244*8=325*8=406*8=487*8=568*8=641*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81答案:# in elude <iostream.h># in elude <ioma
33、 nip.h>void mai n()eout?e ndl;for( i=l;i<=9;i+)for(j=l;j<=i;j+)cout?j?,* ?i?J?setw(2)? i*j? " cout? endl;11、利用公式-=1-+- +求JI的近似值。直到最后一43 5 7項(xiàng)的絕對值不大于108為止。答案:# in elude <iostream.h># in elude <ioma nip.h># in elude <math.h>void mai n()(double sum,p n;const double eps=1.
34、0e-8;int n;sum=0.0;變量賦初值n=l;if(n%2) pn= l/double(2*n-1);else pn=- l/double(2*n-1);sum+= pn;n+; while(fabs(pn)>=eps); sum*=4;cout?"sum= n?setprecision(9)? sum?endl; 輸 出結(jié)果 12、編一程序顯示由符號組成的圖案。例如,程序運(yùn)行后屏幕顯示: How many lines用戶輸入:13屏幕顯示:What character用戶輸入:*則輸出如下圖案。*答案:#include<iostream>using na
35、mespace std;int main()int i, j, k, n;char ch;cout How many lines ?n ; cin>>n;/cin>>ch; for( i=l; i=(n+l)/2; i+ )cout What character ?nfor ( k=l; k<=n-i; k+ ) cout << ;for ( j=l: j =2*iT; j+ ) cout << ch ;cout << endl;for( i=1; i<(n+1)/2; i+ )for ( k 二 1; k 二 n/2+i
36、; k+ ) cout << ;for( j=l: j =n-2*i; j+ ) cout << ch ;cout ? endl;return 0 ;13、編一程序顯示由符號組成的倒三角形圖案。例如,程序運(yùn)行后屏幕顯示:How many lines ?用戶輸入:7屏幕顯示:What character ?用戶輸入:*則輸出如下圖案*答案:#include<iostream>using namespace std;int main()int i, j, k, n;char ch;cout How many lines ?n ; cin>>n;cou
37、t What character ?n ; cin>>ch;for ( i=l; i<=n; i+ )for ( k=l; k<=i; k+ )cout << ; for ( j=l: j<=n-i+l: j+ ) cout << ch ; cout << endl; return 0 ;14、輸入兩個(gè)正整數(shù)m和n,對輸入數(shù)據(jù)的合法性進(jìn)行檢查,求其最大公約數(shù)和最小公倍數(shù)。15、日期問題:輸入一個(gè)日期 (年、月、日 ) ,判斷日期的合法性,若合法,則求該日期是該年中的第幾天。題型3函數(shù)模塊化1、已知y= sha + shx),其中
38、sh為雙曲正弦函數(shù),即sh(t) = e - 廠。sh2x + sh3x2編一程序,輸入X的值,求y的值?!窘獯稹?in clude<iostream>#in clude<cmath>using n amespace std;double sh( double t);int mai n()(double x,y;cout? ” x= ”cin ? x;y = sh( l+sh(x)/( sh( 2*x )+sh( 3*x );cout? "y= n ? y ? en dl;double sh( double t)(return ( exp( t )-exp(
39、-t) )/2; 1 + 2 + ? + m + P+23 +?各 h32、輸入m、n和p的值,求、=i5+25 +?+p5的值。注意判斷運(yùn)算中的溢出?!窘獯稹縰sing n amespace std;double f (long k, l ong num );int mai n()(long m, n, p; double s, fl, f2, f3; cout << m, n, p 二;cin»m»n> >p;fl=f( l,m ); f2=f( 3,n ); f3=f( 5, p ); if (fl && f2 &&am
40、p; f3 ) s 二 (fl + f2) /f3;cout << s= << s << endl;else cout< 溢出! n ;double f( long k, long num ) long i;double sum=0;for ( i=1; i<=num; i+ )( sum = sum + pow(i, k );if (i 二 num)return 0;/ 溢出時(shí)返回return sum;double pow( long k, long num )( long i;double sum=1;for( i=1; i二 num; i+
41、 ) sum * 二 k ;return sum;3、輸入兩個(gè)整數(shù),分別用函數(shù)模塊求該兩個(gè)數(shù)的最大公約數(shù)和最 小公倍數(shù),并在 main 函數(shù)中調(diào)用,完成相應(yīng)功能。4、輸入a,b和c的值,編寫一個(gè)程序求這三個(gè)數(shù)的最大值和最小 值。要求把求最大值和最小值編寫成一個(gè)函數(shù),并使用指針或引用 作為形式參數(shù)把結(jié)果返回 main 函數(shù)?!窘獯稹?1)使用指針參數(shù)#include<iostream> using namespace std;void fmaxmin( double,double ,double ,double *,double * ); int main()( double a,b
42、,c,max,min;cout? "a,b,c =cin ? a ? b ? c;fmaxm in( a,b,c,&max,&min);cout ? *'max=" ? max ? endl;cout ? "min=" ? min ? endl;void fmaxm in( double x,double y,double z,double *pl,double *p2 ) (double u,v;if ( x>y ) u = x; v = y; else u = y; v = x; ;if ( z>u ) u = z
43、;if ( z<v ) v = z;*pl = u;*p2 = v;#in clude<iostream>(2)®用引用參數(shù)using n amespace std;void fmaxm in( double, double ,double , doublefe , doublefe );int mai n()(double a, b, c, max, min;cout ? a, b, c 二;cin >> a >> b >> c;fmaxm in( a, b, c, max, min );cout ? "max 二 ?
44、 max << endl;cout ? min 二 ? min << endl;void fmaxm in( double x, double y, double z, double &pl, double &p2 ) ( double u, v;if(x>y ) u= x;v= y; else (u = y;v=x; ;if(z>u )u = z;if(z<v )v = z;pl二 u;p2二 v;5、用線性同余法生成隨機(jī)數(shù)序列的公式為rk = ( multiplier * r k.i + increment) % modulus序列
45、中的每一個(gè)數(shù) rk,可以由它的前一個(gè)數(shù)rk 一 I計(jì)算岀來。例如,如果有:R = ( 25173 * rk.i + 13849 ) % 65536位或兩則可以產(chǎn)生 65536 個(gè)各不相同的整型隨機(jī)數(shù)。設(shè)計(jì)一個(gè)函數(shù)作隨機(jī)數(shù)生成器,生成一 位數(shù)的隨機(jī)數(shù)。利用這個(gè)隨機(jī)數(shù)生成器,編寫一個(gè)小學(xué)生四則運(yùn)算的練習(xí)程序: ?可以進(jìn)行難度選擇。一級難度只用一位數(shù),二級難度用兩位數(shù); ?可以選擇運(yùn)算類型,包括加、減、乘、除等; ?給岀錯(cuò)誤提示; ?可以統(tǒng)計(jì)成績?!窘獯稹?include<iostream>using namespace std;int Rand(int, int) ;/ 生成指定范圍的
46、隨機(jī)數(shù)int main()( int w, i, r, t = 0;char op, answer;int a, b, d;while(l) 練習(xí)開始 cout " 現(xiàn)在開始? ( Y 或n”;cin>>answer;if (answer 二二 'N' |answer 二二 'n') break;while (1)( cout ? 請輸入難度 (1 或 2 ): ;cin >> w;if ( w != 1 && w ! 二 2 )cout ? 輸入難度錯(cuò)誤,重新輸入! " ? endl;else bre
47、ak ;while(1)( cout ? 請輸入運(yùn)算類型 (+,-,*,/): ;cin >> op;if ( op !='+' && op !='&& op !='*' && op !='/')cout < 輸入運(yùn)算符錯(cuò)誤,重新輸入! ? endl; else break;)岀 10 道題,每題 10 分t=0;for( i=1; i<=10; i+ )( while(1) if( w 二二 1 )(a = Ran d(O, 10) ; b二 Rand (0, 10
48、);elseif( w = 2 )(a = Ra nd(10, 100); b二 Ran d(10, 100);if (op二二-')if ( a<b ) continue ;/使被減數(shù)大于減數(shù)if ( op二二' /')if ( int( a/b ) != (a / b) ) con ti nue;/只做結(jié)果為整數(shù)的除法break;cout << a << op << b < '二'; cin >> d;switch ( op )(case ': r = a + b; break;ca
49、se ' : r = a - b; break;case ': r 二 a * b; break;case ': r = a / b; break;if ( r = d )(cout <<你算對了,加 10 分! ? endl;t = t + 10;)else cout ?你算錯(cuò)了! << endl;cout <<你的成績是:? t <<分 << endl;)int Ran d(i nt m, int n)(static int r;/靜態(tài)變量保留上一個(gè)隨機(jī)數(shù)do(r = ( 25173*r + 13849 )
50、 % 65536 ; while (r<m|r>=n);return r;6、已知勒讓德多項(xiàng)式為P (x) =(2" (x) - l)p _2 (x) / nn>l編一程序,從鍵盤上輸入X和n的值,使用遞歸函數(shù)求 p(X)的值?!窘獯稹?include<iostream>using namespace std;double p ( double x, int n );int main()( int n;double x;cout << "please input x and n:; cin >> x >> n
51、;cout < p( << x <<, " ? n << ) 二” << p( x, n ) <<endl;double p( double x, int n )( double tl,t2;if( n = 0 ) return 1;else if( n 二二 1 ) return x;else( tl = ( 2*n-1 )*p( x, n-1 ); t2 = ( nl )*p( x, n-2 ); return ( tlt2 )/n;)7、把以下程序中的 print 。函數(shù)改寫為等價(jià)的遞歸函數(shù)。"n el
52、ude <iostream> using n amespace std;void print( int w )( for( int i = 1 ; i v= w ; i + ) for( intj = 1 ;j v=i ;j + )cout? i ?” "cout? endl;int main()( print( 5 ) ;運(yùn)行顯示:4 4445 5555【解答】#in clude<iostream>using n amespace std;void prin t(i nt w)in ti;if( w)(print( w-1 );for( i=l; iv=w;
53、 i+ )cout? wcout? en dl;void main() print( 5 );&已知用梯形法求積分的公式為:"一 2 +悟f(E氣其中h = (ba)/n, n為積分區(qū)間的等分?jǐn)?shù),編程序求如下積分的值。要求把求積分公式編寫成一個(gè)函數(shù),并使用函數(shù)指針作為形式 參 數(shù)。調(diào)用該函數(shù)時(shí),給定不同的被積函數(shù)作為實(shí)際參數(shù)求不 同的積分?!窘獯稹?in clude<iostream>#in clude<cmath> using n amespace std;double fl( double x ) return 4/(1+ x*x );double
54、 f2( double x )( return sqrt ( 1 + x*x );double f3( double x ) return sin( x );double trap( double( *fun )( double x ), double a, double b, long n )( double t,h; int i;t 二(*fun )(a) + ( *fun )( b ) ) / 2. 0;h=(b-a)/n;for( i=l; i<-nl; i+ ) t += ( *fun )(a+i*h); t *二 h;return t;int main ()( double
55、tl,t2, t3;tl = trap( fl, 0, 1, 10000 );cout <<tl 二 ? tl << endl;t2 二 trap ( f2, 1, 2, 10000 );cout <<t2=”? t2 << endl;t3 = trap( sin, 0, 3. 14159265/2, 10000 );cout <<t3 二 << t3 << endl;9、編寫一個(gè)程序,包含三個(gè)重載的 display 函數(shù)和一個(gè)主函數(shù)。要求第一個(gè)函數(shù)輸出double值,前面用字符串"a double:
56、"引導(dǎo), 第二個(gè)函數(shù)輸出一個(gè) int 值,前面用字符串 "a int: ”引導(dǎo),第三 個(gè)函數(shù)輸出一個(gè)char字符值,前面用字符串"achar:引導(dǎo),在 主函數(shù)中分別用doubleint和char型變量作為實(shí)參調(diào)用display 函數(shù)。解答】#include<iostream>using namespace std;void display( double d )( cout << a double: << d << endl;void display( int i )(cout << a int: <
57、;< i ? endl;void display( char c ) cout ? char:<< c << en dl;int mai n ()(double d = 1. 5; int i = 100; char c = display( d );display( i );display( c );10、使用重載函數(shù)編程序分別把兩個(gè)數(shù)和三個(gè)數(shù)從大到小排列【解答】#in clude<iostream>using n amespace std;void sort ( double x, double y );void sort ( double x,
58、double y, double z );int mai n()(sort ( 5. 6, 79 );sort ( 0. 5, 30. 8, 5. 9 );void sort (double x, double y)(if ( x>y ) cout << x << ' t' << y << en dl;t' << x ? en dl;void sort ( double x, double y,double z )(double t;if(y<z ) t = y; y 二 乙z = t; if(x&
59、lt;z ) t = x; x 二 z;z = t; if(x<y ) t = x; x 二 y ;y=t; cout <<x<< 't'<< y <<'t'<< z << ' t' << en dl;ml11、給定求組合數(shù)公式為:"'一泌頑,編一程序,輸入 m和n的值,求勇白勺值。注意優(yōu)化算法,降低溢岀可能。要求主函數(shù)調(diào)用以下函數(shù)求組合數(shù):int Fabricate( int m, int n ); 返回駕的值Fabricate函數(shù)內(nèi)又須調(diào)用Multi函數(shù):int Multi( int m, int n );main、程序由4個(gè)文件組成。頭文件存放函數(shù)原型作為調(diào)用接口;其他3個(gè)cpp文件分別是Fabricate 和 Multi 函數(shù)的定義?!窘獯稹?Fabricate.h#ifndef FABRICATE.H#define FABRICATE.Hint Fabricate( int m,int n );int Multi( int m, int n );#endi
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國錫青管套數(shù)據(jù)監(jiān)測研究報(bào)告
- 集裝箱酒店裝修貸款協(xié)議
- 2025至2030年中國直線式齒輪減速電機(jī)數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025至2030年中國數(shù)碼相機(jī)模具數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025至2030年中國室內(nèi)活動軟體蹦床數(shù)據(jù)監(jiān)測研究報(bào)告
- 甜品店裝修安全協(xié)議
- 液態(tài)牛奶罐車?yán)滏溑渌蛥f(xié)議
- 2025至2031年中國肥鴨飼料行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2030年中國背門鎖芯數(shù)據(jù)監(jiān)測研究報(bào)告
- 金屬材料海運(yùn)合同風(fēng)險(xiǎn)控制
- 黑色素的合成與美白產(chǎn)品的研究進(jìn)展
- 建筑史智慧樹知到期末考試答案2024年
- 金蓉顆粒-臨床用藥解讀
- 社區(qū)健康服務(wù)與管理教案
- 2023-2024年家政服務(wù)員職業(yè)技能培訓(xùn)考試題庫(含答案)
- 2023年(中級)電工職業(yè)技能鑒定考試題庫(必刷500題)
- 藏歷新年文化活動的工作方案
- 果酒釀造完整
- 第4章-理想氣體的熱力過程
- 生涯發(fā)展展示
- 手術(shù)室應(yīng)對突發(fā)事件、批量傷員應(yīng)急預(yù)案及處理流程
評論
0/150
提交評論