




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
電大C語言程序設計形成性考核冊答案?一、選擇題
1.以下關于C語言的敘述中正確的是()A.C語言中的注釋不可以夾在變量名或關鍵字的中間B.C語言中的變量可以在使用之前的任何位置進行定義C.在C語言算術表達式的書寫中,運算符兩側的運算數(shù)類型必須一致D.C語言的數(shù)值常量中夾帶空格不影響常量值的正確表示
答案:B解析:C語言中的注釋可以夾在變量名或關鍵字中間,A錯誤;C語言算術表達式中運算符兩側運算數(shù)類型不一定要一致,會進行自動類型轉換,C錯誤;C語言數(shù)值常量中夾帶空格會影響常量值的正確表示,D錯誤。變量定義可以在使用之前的任何位置,B正確。
2.若有定義:inta=8,b=5,c;執(zhí)行語句c=a/b+0.4;后,c的值為()A.1.4B.1C.2.0D.2
答案:B解析:a/b是整數(shù)除法,8/5結果為1,再加上0.4,由于是整數(shù)運算,小數(shù)部分舍去,所以c的值為1。
3.以下選項中合法的常量是()A.999B.2.7eC.0XabD.123E0.2
答案:C解析:999是整型常量;2.7e不完整,e后面缺少指數(shù);123E0.2中E后面必須是整數(shù);0Xab是十六進制常量,合法。
4.若有定義:intx=3,y=2;floata=2.5,b=3.5;則表達式(x+y)%2+(int)a/(int)b的值是()A.0B.2C.1D.1.5
答案:C解析:(x+y)%2=(3+2)%2=1,(int)a/(int)b=(int)2.5/(int)3.5=2/3=0,所以表達式的值為1+0=1。
5.若有定義:inta=1,b=2,c=3;則執(zhí)行以下語句后,a、b、c的值分別為()if(a>b)c=a;a=b;b=c;A.1,2,3B.2,3,1C.2,1,3D.2,3,2
答案:B解析:if條件a>b不成立,所以不執(zhí)行c=a,直接執(zhí)行a=b;b=c;執(zhí)行后a=2,b=3,c=1。
6.以下敘述中正確的是()A.break語句只能用于switch語句體中B.continue語句的作用是使程序的執(zhí)行流程跳出包含它的所有循環(huán)C.break語句只能用在循環(huán)體內(nèi)和switch語句體內(nèi)D.在循環(huán)體內(nèi)使用break語句和continue語句的作用相同
答案:C解析:break語句不僅能用于switch語句體中,還能用于循環(huán)體內(nèi),A錯誤;continue語句的作用是結束本次循環(huán),進入下一次循環(huán),B錯誤;break語句和continue語句作用不同,D錯誤;break語句只能用在循環(huán)體內(nèi)和switch語句體內(nèi),C正確。
7.若有定義:intx=1,y=2,z=3;則執(zhí)行以下語句后,x、y、z的值分別為()if(x>y)z=x;x=y;y=z;A.1,2,3B.2,3,1C.2,1,3D.2,3,2
答案:B解析:if條件x>y不成立,不執(zhí)行z=x,直接執(zhí)行x=y;y=z;執(zhí)行后x=2,y=3,z=1。
8.以下程序段的輸出結果是()intx=10,y=10;printf("%d%d\n",x,y);A.1010B.99C.910D.109
答案:D解析:printf函數(shù)中參數(shù)是從右向左計算,先計算y,y變?yōu)?,再計算x,x先使用值10,然后變?yōu)?,所以輸出109。
9.若有定義:inta=1,b=2,c=3;則執(zhí)行以下語句后,a、b、c的值分別為()if(a>b)c=a;a=b;b=c;A.1,2,3B.2,3,1C.2,1,3D.2,3,2
答案:B解析:同第5題,if條件不成立,執(zhí)行a=b;b=c;后a=2,b=3,c=1。
10.以下程序段的輸出結果是()inta=1,b=2,c=3;if(a>b)c=a;a=b;b=c;printf("%d%d%d\n",a,b,c);A.1,2,3B.2,3,1C.2,1,3D.2,3,2
答案:B解析:同第5題,輸出2,3,1。
二、填空題
1.C語言中的標識符只能由字母、數(shù)字和____組成。答案:下劃線解析:C語言標識符命名規(guī)則規(guī)定只能由字母、數(shù)字和下劃線組成。
2.若有定義:inta=5,b=3;則表達式a%=(b%=2)的值為____。答案:0解析:先計算b%=2,b變?yōu)?,再計算a%=1,a變?yōu)?,所以表達式值為0。
3.若有定義:floatx=3.5,y=2.5;則表達式(int)x+(int)y的值為____。答案:5解析:(int)x=3,(int)y=2,3+2=5。
4.若有定義:inta=1,b=2,c=3;則執(zhí)行語句if(a>b)c=a;a=b;b=c;后,變量c的值為____。答案:3解析:if條件不成立,不執(zhí)行c=a,c的值不變?nèi)詾?。
5.若有定義:intx=10,y=20;則執(zhí)行語句if(x>y)x=y;y=x;后,變量x的值為____,變量y的值為____。答案:10,10解析:if條件不成立,執(zhí)行x=y;y=x;先把y的值20賦給x,此時x=20,再把x的值20賦給y,最終x=10,y=10。
6.若有定義:inta=1,b=2,c=3;則執(zhí)行語句if(a>b)c=a;a=b;b=c;后,變量a的值為____,變量b的值為____。答案:2,3解析:同第5題,執(zhí)行x=y;y=x;先把y的值20賦給x,此時x=20,再把x的值20賦給y,最終a=2,b=3。
7.若有定義:inta=1,b=2,c=3;則執(zhí)行語句if(a>b)c=a;a=b;b=c;后,變量a、b、c的值分別為____、____、____。答案:2,3,3解析:同第5題,執(zhí)行x=y;y=x;先把y的值20賦給x,此時x=20,再把x的值20賦給y,最終a=2,b=3,c=3。
8.若有定義:intx=10,y=20;則執(zhí)行語句if(x>y)x=y;y=x;后,變量x、y的值分別為____、____。答案:10,10解析:同第5題,執(zhí)行x=y;y=x;先把y的值20賦給x,此時x=20,再把x的值20賦給y,最終x=10,y=10。
9.若有定義:inta=1,b=2,c=3;則執(zhí)行語句if(a>b)c=a;a=b;b=c;后,變量a、b、c的值分別為____、____、____。答案:2,3,3解析:同第5題,執(zhí)行x=y;y=x;先把y的值20賦給x,此時x=20,再把x的值20賦給y,最終a=2,b=3,c=3。
10.若有定義:intx=10,y=20;則執(zhí)行語句if(x>y)x=y;y=x;后,變量x、y的值分別為____、____。答案:10,10解析:同第5題,執(zhí)行x=y;y=x;先把y的值20賦給x,此時x=20,再把x的值20賦給y,最終x=10,y=10。
三、程序分析題
1.以下程序的功能是:輸入一個整數(shù),判斷它能否被3和5整除,若能被3和5整除,輸出"能同時被3和5整除";若能被3整除但不能被5整除,輸出"能被3整除但不能被5整除";若能被5整除但不能被3整除,輸出"能被5整除但不能被3整除";若不能被3和5整除,輸出"不能被3和5整除"。請分析程序并填空。
```cinclude<stdio.h>intmain(){intnum;printf("請輸入一個整數(shù):");scanf("%d",&num);if(____)printf("能同時被3和5整除\n");elseif(____)printf("能被3整除但不能被5整除\n");elseif(____)printf("能被5整除但不能被3整除\n");elseprintf("不能被3和5整除\n");return0;}```
答案:```cinclude<stdio.h>intmain(){intnum;printf("請輸入一個整數(shù):");scanf("%d",&num);if(num%3==0&&num%5==0)printf("能同時被3和5整除\n");elseif(num%3==0&&num%5!=0)printf("能被3整除但不能被5整除\n");elseif(num%5==0&&num%3!=0)printf("能被5整除但不能被3整除\n");elseprintf("不能被3和5整除\n");return0;}```解析:第一個if判斷是否同時能被3和5整除,即num%3==0&&num%5==0;第二個if判斷能被3整除但不能被5整除,即num%3==0&&num%5!=0;第三個if判斷能被5整除但不能被3整除,即num%5==0&&num%3!=0。
2.以下程序的功能是:計算1到100之間所有奇數(shù)的和。請分析程序并填空。
```cinclude<stdio.h>intmain(){intsum=0,i;for(i=1;i<=100;i=i+2){sum=sum+____;}printf("1到100之間所有奇數(shù)的和為:%d\n",sum);return0;}```
答案:i解析:循環(huán)中i每次增加2,i就是奇數(shù),所以sum每次加上i,即sum=sum+i。
3.以下程序的功能是:輸出九九乘法表。請分析程序并填空。
```cinclude<stdio.h>intmain(){inti,j;for(i=1;i<=9;i++){for(j=1;j<=____;j++){printf("%d*%d=%d\t",i,j,i*j);}printf("\n");}return0;}```
答案:i解析:內(nèi)層循環(huán)j要從1到i,這樣才能構成九九乘法表的每一行。
4.以下程序的功能是:輸入一個字符串,統(tǒng)計其中數(shù)字字符的個數(shù)。請分析程序并填空。
```cinclude<stdio.h>include<string.h>intmain(){charstr[100];intcount=0,i;printf("請輸入一個字符串:");gets(str);for(i=0;i<strlen(str);i++){if(____)count++;}printf("數(shù)字字符的個數(shù)為:%d\n",count);return0;}```
答案:str[i]>='0'&&str[i]<='9'解析:判斷字符是否為數(shù)字字符,數(shù)字字符的ASCII碼值在'0'到'9'之間,所以條件為str[i]>='0'&&str[i]<='9'。
5.以下程序的功能是:輸入三個整數(shù),輸出其中最大的數(shù)。請分析程序并填空。
```cinclude<stdio.h>intmain(){inta,b,c,max;printf("請輸入三個整數(shù):");scanf("%d%d%d",&a,&b,&c);max=a;if(____)max=b;if(____)max=c;printf("最大的數(shù)是:%d\n",max);return0;}```
答案:b>max、c>max解析:先假設max為a,然后依次判斷b和c是否大于max,如果b大于max,則將max更新為b;如果c大于max,則將max更新為c。
四、程序設計題
1.編寫一個程序,輸入兩個整數(shù),輸出它們的和、差、積、商和余數(shù)。
```cinclude<stdio.h>intmain(){inta,b;printf("請輸入兩個整數(shù):");scanf("%d%d",&a,&b);printf("和:%d\n",a+b);printf("差:%d\n",ab);printf("積:%d\n",a*b);if(b!=0){printf("商:%d\n",a/b);printf("余數(shù):%d\n",a%b);}else{printf("除數(shù)不能為0\n");}return0;}```
解析:首先輸入兩個整數(shù)a和b,然后分別計算并輸出它們的和、差、積。接著判斷b是否為0,如果不為0,則計算并輸出商和余數(shù);如果為0,則輸出提示信息"除數(shù)不能為0"。
2.編寫一個程序,輸入一個年份,判斷它是否為閏年。閏年的判斷條件是:能被4整除但不能被100整除,或者能被400整除。
```cinclude<stdio.h>intmain(){intyear;printf("請輸入一個年份:");scanf("%d",&year);if((year%4==0&&year%100!=0)||year%400==0){printf("%d年是閏年\n",year);}else{printf("%d年不是閏年\n",year);}return0;}```
解析:根據(jù)閏年的判斷條件,使用邏輯或運算符連接兩個條件表達式。如果滿足其中一個條件,則該年份是閏年,否則不是閏年。
3.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 影視編導專業(yè)畢業(yè)實習心得
- 醫(yī)藥行業(yè)售后服務承諾書范文
- DB62T 4109-2020 荒漠生態(tài)氣象觀測方法
- 服裝制造交貨時間管理措施
- 人工智能輔助智能旅游行程規(guī)劃服務協(xié)議
- 胃管與導尿管的護理
- 醫(yī)療行業(yè)半年工作匯報及下半年策略安排
- 視膜脫離術后護理常規(guī)
- 2025年護理行業(yè)標準化推進計劃
- 中藥煎藥室衛(wèi)生管理職責
- 中國傳統(tǒng)音樂精講知到課后答案智慧樹章節(jié)測試答案2025年春四川音樂學院
- 2025年中國航天日知識競賽考試題庫300題(含答案)
- 《大客戶管理研究的國內(nèi)外文獻綜述1800字》
- 預防航空人為差錯
- 傷寒傳染病護考題及答案
- 通信行業(yè)防洪防汛安全知識
- 平安iq測試題及答案184
- 基坑工程安全技術培訓
- HSE管理體系管理手冊
- 2023版煤礦安全管理人員考試題庫及解析
- 2025年標準育兒嫂合同樣本
評論
0/150
提交評論