版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、C語言程序設(shè)計復(fù)習(xí)題循環(huán)結(jié)構(gòu)一、選擇1、以下程序段(C)。x=-1;dox=x*x; while (!x);A)是死循環(huán)B)循環(huán)執(zhí)行兩次C)循環(huán)執(zhí)行一次D)有語法錯誤2、對下面程序段描述正確的是( B)。int x=0,s=0;while (!x != 0)s+=+x;printf("%d",s);A)運行程序段后輸出0B)運行程序段后輸出1C)程序段中的控制表達(dá)式是非法的D)程序段循環(huán)無數(shù)次3、下面程序的運行結(jié)果是(B)。#include<stdio.h>int main() int s=0,i=1;while (s<=10) s=s+i*i;i+;pr
2、intf("%d",-i);return 0;A) 4B) 3C) 5D) 64、函數(shù)pi的功能是根據(jù)以下近似公式求兀值:(C)。(兀 * 兀)/6=1+1/(2*2)+1/(3*3)+.+1/(n*n)請?zhí)羁?,完成求兀的功能?include <math.h>int main() double s=0.0; int i,n;scanf("%ld",&n);for(i=1;i<=n;i+) s=s+; s=(sqrt(6*s); printf("s=%e",s);return 0;A) 1/i*i B) 1.
3、0/i*i C) 1.0/(i*i) D) 1.0/(n*n)5、下面程序段的運行結(jié)果是(B)。for(x=10;x>3;x-) if(x%3) x-;-x; -x; printf("%d ",x);A) 6 3B) 7 4C) 6 2D) 7 36、有如下程序#include<stdio.h>int main() int x=23; do printf("%d”,x-);while(!x);return 0;該程序的執(zhí)行結(jié)果是(B)。A) 321B) 23C)不輸出任何內(nèi)容D)陷入死循環(huán)7、以下程序段的執(zhí)行結(jié)果是( C)。int i,j,m=0
4、;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m+;printf("%dn",m);A) 12 B)15C)20D) 258、下面程序的輸出結(jié)果是(A)。#include<stdio.h>int main() int i;for(i=1;i<6;i+) if (i%2!=0) printf("#");continue; printf("*"); printf("n"); return 0; A) #*#*#B) # C) * D) *#*#*9、有如下程
5、序#include<stdio.h> int main() int i,sum=0;for(i=1;i<=3;sum+) sum+=i;printf("%dn",sum);return 0; 該程序的執(zhí)行結(jié)果是(C)。A) 6 B) 3 C)死循環(huán)D) 010、在執(zhí)行以下程序時,如果從鍵盤上輸入:ABCdef<回車>,則輸出為(B)。#include <stdio.h> int main() char ch;while (ch=getchar( )!='n') if (ch>='A' &
6、& ch<='Z') ch=ch+32;else if (ch>='a' && ch<'z') ch=ch-32;printf("%c",ch); printf("n"); return 0; A) ABCdef B) abcDEF C) abc D) DEF11、下面程序是計算n個數(shù)的平均值,請?zhí)羁?B)。#include<stdio.h> int main() int i,n; float x,avg=0.0; scanf("%d"
7、;,&n); for(i=0;i<n;i+) scanf("%f",&x); avg=avg+; avg=;printf("avg=%fn",avg);return 0; A) i avg/iB) xC) xD) iavg/navg/xavg/n12、以下程序的功能是:從鍵盤上輸入若干個學(xué)生的成績,統(tǒng)計并輸出最高成績和最低成績 當(dāng)輸入負(fù)數(shù)時結(jié)束輸入。請?zhí)羁? D)。#include<stdio.h>int main() float x,amax,amin;scanf("%f",&x);amax
8、=x;amin=x;while () if (x>amax) amax=x;if () amin=x;scanf("%f",&x);printf("namax=%fnamin=%fn",amax,amin);return 0;A)x<=0 B)x>0C)x>0D)x>=0x>amin x<=amin x>amin x<amin13、在下列選項中,沒有構(gòu)成死循環(huán)的程序段是( D)。A) int i=100;B) for(;);while (1) i=i%100+1;if (i>100) b
9、reak;C) int k=1000;D) int s=36;do +k; while (k>=1000);while (s) -s;14、下面程序段中,循環(huán)體的執(zhí)行次數(shù)是(C)。int a=10,b=0;do b+=2;a-=2+b; while(a>=0);A) 4B) 5C) 3D) 215、對于for(表達(dá)式1;表達(dá)式3)可理解為(B)。A) for(表達(dá)式1;0;表達(dá)式3)B) for(表達(dá)式1;1;表達(dá)式3)C) for(表達(dá)式1;表達(dá)式1;表達(dá)式3)D) for(表達(dá)式1;表達(dá)式3;表達(dá)式3)16、以下程序段的輸出結(jié)果是(C)。int k,n,m;n=10;m=1;k
10、=1;while (k<=n) m*=2;k+=4; printf("%dn",m);A) 4B) 16C) 8D) 3217、下面程序的輸出結(jié)果是(D)。#include<stdio.h>int main() int x=10,y=10,i;for(i=0;x>8;y=+i) printf("%d %d ",x-,y);return 0;A) 10 1 9 2B) 9 8 7 6C) 10 9 9 0D) 10 10 9 118、有如下程序#include<stdio.h>int main() int n=9;whi
11、le(n>6) n-;printf("%d",n); return 0;該程序段的輸出結(jié)果是(B7A)987B)876C)8765 D)987619、以下程序運行后的輸出結(jié)果是( D)。#include<stdio.h> int main() int i=10,j=0; do j=j+1;i-;while(i>2); printf("%dn",j);return 0;A) 50B) 52C) 51D) 820、下面程序的輸出結(jié)果是(D)。int main()int i,k=0, a=0, b=0;for(i=1;i<=4;i
12、+) k+;if (k%2=0) a=a+k; continue;b=b+k;a=a+k;printf("k=%d a=%d b=%dn",k,a,b);return 0;A) k=5 a=10 b=4B) k=3 a=6 b=4C) k=4 a=10 b=3D) k=4 a=10 b=421、關(guān)于break語句的正確說法是(A)。A) switch-case中可根據(jù)需要使用或不使用break語句B) while循環(huán)中的break語句可結(jié)束本次循環(huán),繼續(xù)下一次循環(huán)C) do-while循環(huán)中不允許使用break語句D) for循環(huán)中必須使用 break語句來結(jié)束循環(huán)22、與
13、以下程序段功能等價的賦值語句是( B)s=a;for(b=1;b<=c;b+)s=s+1;A) s=a+b; B) s=a+c;C) s=s+c; D) s=b+c;23、以下循環(huán)體的執(zhí)行次數(shù)是( A )int main()int i,j;for(i=0,j=1;i<=j+1;i+=2,j-) printf("%d ,i);return 0;A) 1 B) 3 C) 2 D) 024、語句while (!e);中的條件!e等價于(A)A) e=0B)e!=1C) e!=0 D) e25、下面有關(guān)for循環(huán)的正確描述是( D)A) for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況B
14、) for循環(huán)是先執(zhí)行循環(huán)體語句,后判定表達(dá)式C)在for循環(huán)中,不能用 break語句跳出循環(huán)體D) for循環(huán)體語句中,可以包含多條語句,但要用花括號括起來26、C語言中(D)A)不能使用do-while語句構(gòu)成循環(huán)B) do-while語句構(gòu)成的循環(huán)必須用break語句才能退出C) do-while語句構(gòu)成的循環(huán),當(dāng) while語句中的表達(dá)式值為非零時結(jié)束循環(huán)D) do-while語句構(gòu)成的循環(huán),當(dāng) while語句中的表達(dá)式值為零時結(jié)束循環(huán) 27、C語言中while和do-while循環(huán)的主要區(qū)別是( A)A) do-while的循環(huán)體至少無條件執(zhí)行一次B) while的循環(huán)控制條件比d
15、o-while的循環(huán)控制條件嚴(yán)格C) do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)D) do-while的循環(huán)體不能是復(fù)合語句28、以下程序段(C)int x=-1;do x=x*x;while (!x);A)是死循環(huán)B)循環(huán)執(zhí)行二次C)循環(huán)執(zhí)行一次D)有語法錯誤二、填空1、C語言中用于實現(xiàn)循環(huán)的三種語句是for, while, do-while2、以下程序的運行結(jié)果是S=7O#include <stdio.h>int main()int s=0,k;for (k=7;k>=0;k-)switch(k)case 1:case 4:case 7: s+; break;case 2:c
16、ase 3:case 6: break;case 0:case 5: s+=2; break;printf( %d ”,s);return 0;3、以下程序的運行結(jié)果是 #include <stdio.h>int main()int i,j;for (i=4;i>=1;i-)printf("*");for (j=1;j<=4-i;j+) printf("*");printf("n");return 0;輸出結(jié)果:*三、判斷1、while語句的循環(huán)體至少執(zhí)行一次。F2、do-while語句的循環(huán)體至少執(zhí)行一次。T
17、3、只用三種基本結(jié)構(gòu)就可以表示任何復(fù)雜的算法。T四、程序填空1、下面程序的功能是輸出1到100之間數(shù)位上數(shù)字的乘積大于數(shù)位上數(shù)字之和的數(shù)。例如數(shù)字26,數(shù)位上數(shù)字的乘積 12大于數(shù)字之和8。請在空白處填寫適當(dāng)內(nèi)容,完成程序。#include <stdio.h>int main() int n, k=1, s=0,m;for (n=1;n+)k=1;s=0;while () k*=m%10;s+=m%10;if ()printf("n=%d'n",n);return 0;(10) k>s參考解答:(6) n<=100 (7) m=n (8) m
18、 或 m!=0(9) m/=1012n請在空白處填寫適當(dāng)內(nèi)容1112、下面函數(shù)的功能是用于計算:f(n)2 4 8完成程序。#include <math.h>double f(int n)double y, p;int k, s;y = 0.0;p =;k = 1;while ( )y = ;k+;p = ;)return ;(6) 0.5 或 2 (7) k<=n (8) y+p 或 y+1.0/p(9) p/2 或 2*p (10) y3、下面程序的功能是輸入多個實數(shù),求這些實數(shù)的最大值和最小值。當(dāng)輸入為0時結(jié)束輸入。請在空白處填寫適當(dāng)內(nèi)容,完成程序。#include &
19、lt;stdio.h> int main() (float x,amax,amin;scanf("%f",&x);(1);while( (3) (if(4)amax=x;if(5)amin=x;scanf("%f",&x);printf("amax=%f,amin=%fn",amax,amin);參考解答: (1) amax=x (2) amin=x (3) x (4) x>amax (5) x<amin五、寫出以下程序的運行結(jié)果1、#include <stdio.h>while(1)#i
20、nclude <math.h>int main()if(fabs(z)>1.0)float x,y,z;x=y;scanf("%f,%f",&x,&y);y=z;z=x/y;z=x/y;else break;printf("%f",y);return 0;若輸入的數(shù)據(jù)是3.6,2.4 ,則輸出結(jié)果是1 . 6000002、#include <stdio.h>for(k=0;k<=2*i;k+)int main()printf("*");printf("n");in
21、t i,j,k;for(i=0;i<=4;i+)for(j=0;j<=10-i;j+)printf(" ");/*輸出一個空格*/return 0; 輸出結(jié)果為:*六、程序設(shè)計1、編寫程序,輸入整數(shù)n,輸出n行由星號組成的直角三角形。 例如:(虛線部分為用戶輸入的內(nèi)容)n = ? 5 *參考代碼:#include <stdio.h>int main()int n,i, j;printf("n = ?");scanf("%d", &n);for (i = 1; i <= n; i +)for (j = n - i; j >= 1
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 馬戲團(tuán)合作協(xié)議書
- 2025年個人別墅測繪項目合同范本
- 2025版房地產(chǎn)開發(fā)項目施工合同交底書范本2篇
- 2025-2030全球三氟化銪行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球高折射率光纖行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球滑動軸承襯套行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球落地護(hù)眼燈行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國微膠囊熱致變色顏料行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 石料破碎加工合同范本
- 2025版?zhèn)€人股權(quán)交易保密協(xié)議書4篇
- 中國末端執(zhí)行器(靈巧手)行業(yè)市場發(fā)展態(tài)勢及前景戰(zhàn)略研判報告
- 北京離婚協(xié)議書(2篇)(2篇)
- 2025中國聯(lián)通北京市分公司春季校園招聘高頻重點提升(共500題)附帶答案詳解
- 康復(fù)醫(yī)學(xué)科患者隱私保護(hù)制度
- Samsung三星SMARTCAMERANX2000(20-50mm)中文說明書200
- 2024年藥品質(zhì)量信息管理制度(2篇)
- 2024年安徽省高考地理試卷真題(含答案逐題解析)
- 廣東省廣州市2024年中考數(shù)學(xué)真題試卷(含答案)
- 高中學(xué)校開學(xué)典禮方案
- 內(nèi)審檢查表完整版本
- 3級人工智能訓(xùn)練師(高級)國家職業(yè)技能鑒定考試題及答案
評論
0/150
提交評論