今天幫別人做的,有些題目比較有代表性,在此連答案全部貼出來,給需要的朋友做參考。全部程式在VISUAL C++ 6.0環境下均調試通過。如果您對其中某個程式有更好的解答方法,歡迎跟貼交流。因為時間有限,沒有寫注釋,如果您哪段程式不理解,也可以跟貼交流。 一、 選擇題: 1、C++來源程式檔案的副檔名是:A A) .CPP B) .C C) .DLL D) .EXE 2、將小寫字母n賦值給字元變數one_char,正確的操作是:C A) one_char = ‘/n’; B) one_char = “n”; C) one_char = 110; D) one_char = ‘N’; 3、整型變數i定義後賦初值的結果是:B int i=2.8*6; A) 12 B) 16 C) 17 D) 18 4、下列運算式的值為false的是:C A) 1<3 && 5<7 B) !(2>4) C) 3&0&&1 D) !(5<8)||(2<8) 5、設int a=10, b=11, c=12;運算式(a+b)<c&&b==c的值是:B A) 2 B) 0 C) –2 D) 1 6、下列程式執行完後,x的值是:C int x=0; for (int k=0;k<90; k++) if (k) x++; A) 0 B) 30 C) 89 D) 90 7、下列程式段迴圈次數是:A int x = -10; while (++x) cout<<x<<endl; A) 9 B) 10 C) 11 D) 無限 8、表示“大於10而小於20的數“,正確的是:D A) 10<x<20 B) x>10||x<20 C) x>10&x<20 D) !(x<=10||x>=20) 9、若整型變數x=2,則運算式x<<2的結果是:D A) 2 B) 4 C) 6 D) 8 10、設a=1, b=2,則(a++)+b與a+++b這兩個運算式的值分別為:A A) 3, 3 B) 3, 4 C) 4, 3 D) 4,4 二、程式填空題。 1、下列程式計算1000以內能被3整除的自然數之和。 #include <iostream.h> void main( ) { int x=1, sum; sum=0_______; while (true) { if (x>1000) break; if (x%3==0) sum+=x; x++; } cout<<sum<<endl; } 三、假定輸入10個整數:32,64,53,87,54,32,98,56,98,83。下列程式的輸出結果是? #include <iostream.h> void main( ) { int a,b,c,x; a=b=c=0; for (int k=0; k<10; k++) { cin>>x; switch(x%3) { case 0: a+=x; break; case 1: b+=x; break; case 2: c+=x; break; } } cout<<a<<”,”<<b<<”,”<<c<<endl; } 結果: 141,64,452 四、寫出下列程式運行結果。 #include <iostream.h> void main( ) { int j,k; for (j=5; j>0; j--) { for (k=j; k>0; k--) cout<<”*”; cout<<endl; } } 結果: ***** **** *** ** * 五、寫出下列程式的運行結果。 #include <iostream.h> #include <iomanip.h> void main() { cout<<”x_width=”<<cout.width()<<endl; cout<<”x_fill=”<<cout.fill()<<endl; cout<<”x_precision=”<<cout.precision()<<endl; cout<<123<<” ”<<123.45678<<endl; cout<<”***x_width=10,x_fill=&,x_precision=8***”<<endl; cout.width(10); cout.fill(‘&’); cout.precision(8); cout<<123<<” “<<123.45678<<endl; cout.setf(ios::left); cout<<123<<” “<<123.45678<<endl; cout.width(10); cout<<123<<” “<<123.45678<<endl; cout<<”x_width=”<<cout.width()<<endl; cout<<”x_fill=”<<cout.fill()<<endl; cout<<”x_precision=”<<cout.precision()<<endl; } 結果: x_width=0 x_fill= x_precision=6 123 123.457 ***x_width=10,x_fill=&,x_pre &&&&&&&123 123.45678 123 123.45678 123&&&&&&& 123.45678 x_width=0 x_fill=& x_precision=8 六、程式題。 1、 編寫程式,求解方程ax2+bx+c=0的根。 #include <iostream> #include <cmath> using namespace std; void main() { int a,b,c; float x1,x2,z; cin>>a>>b>>c; z=b*b-4*a*c; if(z>0) { x1=((-b)+sqrt(z))/(2*a); x2=((-b)-sqrt(z))/(2*a); cout<<"The result: x1="<<x1<<" x2="<<x2<<endl; } else if(z==0) { x1=-b/(2*a); cout<<"The result: x1="<<x1<<endl; } else cout<<"no result"; } 2、 編寫程式輸出所有的水仙花數。所謂水仙花數是指一個三位元,其各位元的立方和等於該數。例如:153=13+53+33。 #include <iostream> using namespace std; void main() { int a,b,c; for(int i=100;i<=999;i++) { a=i/100; b=i%100/10; c=i%10; if(a*a*a+b*b*b+c*c*c==i) cout<<i<<endl; } } 3、 編寫程式,計算s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。 #include <iostream> using namespace std; void main() { int n,s,sum=0; cin>>n; for(int i=1;i<=n;i++) { s=0; for(int j=1;j<=i;j++) s+=j; sum+=s; } cout<<sum<<endl; } 4、某百貨公司為了促銷,採用購物打折的辦法。 (1) 在1000元以上者,按九五折優惠; (2) 在2000元以上者,按九折優惠; (3) 在3000元以上者,按八五折優惠; (4) 在5000元以上者,按八折優惠。 編寫程式,輸入購物款數,計算並輸出優惠價。(要求用switch語句編寫) #include <iostream> using namespace std; void main() { int cost; double price,d; cin>>cost; if(cost>5000) d=0.8; switch(cost/1000) { case 0:d=1.0;break; case 1:d=0.95;break; case 2:d=0.9;break; case 3:case 4:d=0.85;break; } price=cost*d; cout<<price<<endl; } 4、 將一張一元紙幣兌換成一分、二分和五分的硬幣,假定每種至少一枚,計算共有多少種兌換法並列印出各種兌換法。 #include <iostream> using namespace std; void main() { int a,b,c,count=0; for(a=1;a<100;a++) for(b=1;b<100;b++) for(c=1;c<100;c++) if(c*5+b*2+a==100) { count++; cout<<"1分:"<<a<<",2分:"<<b<<",5分:"<<c<<endl; } cout<<"Counts:"<<count<<endl; } 6、“同構數”是指這樣的整數:它恰好出現在其平方數的右端。如:376*376=141376。請找出10000以內的全部“同構數”。 #include <iostream> using namespace std; void main() { for(int i=1;i<10000;i++) { if(i<10&&i==i*i%10) cout<<i<<endl; else if(i<100&&i==i*i%100) cout<<i<<endl; else if(i<1000&&i==i*i%1000) cout<<i<<endl; else if(i==i*i%10000) cout<<i<<endl; } } 本人擇偶標準: select top 100 ppmm from girl where age between 20 and 24 AND height between 155 and 165 AND area = 'shanghai' AND wedlock = null AND program in hobby order by beautiful desc
|