




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
?C程序設計根底及實驗?期中考試試卷,2023年11月23日PAGE1/10?C程序設計根底及實驗?課程期中考試試卷參考答案試題一、單項選擇題〔每題2分,共20分〕以下正確的字符常量是______。A.’\412’B.255C.’\08’D.’\’【解答】八進制412超出了8位二進制所能表示的范圍03ff;255是一個合法的整數(shù),可以表示一個字節(jié)的值;8不是一個合法的八進制數(shù)字;\是轉義字符,\’表示單個單引號字符本身,所以。字符常量缺少右單引號。假設有定義:floatx=16/5/2.0,y=16/5.0/2;那么x和y的值分別為______。A.1.51.6B.1.61.6C.1.51.5D.1.61.5【解答】16/5/2.0(16/5)/2.03/2.01.516/5.0/2(16/5.0)/23.2/21.6以下語句中,_____將輸出%d。A.printf(“%d〞);B.printf(“%%d〞);C.printf(“\%d〞);D.printf(“%%%d〞)【解答】A.%d表示輸出十進制整型量,但缺少相應的輸出表達式,故輸出結果是隨機值;B.%%表示輸出一個%符號本身,d是普通字符,原樣輸出,所以輸出%d;C.\%表示符號%,%d表示輸出十進制整型值,故輸出結果是隨機值;D.%%表示輸出符號%本身,%d表示輸出十進制整型值。以下程序段輸出結果為_____。intx=1,y=012; printf(“%d〞,y*x++);A.12B.10 C.20D.24【解答】x++表達式的值是1,y*x++y*1y01210以下程序段輸出結果為_____。inta=1,b=2,c=2,t;while(a<b<c){ t=a;a=b;b=t;c--; }printf(“%d,%d,%d〞,a,b,c);A.1,2,0B.2,1,0C.1,2,1D.2,1,1【解答】a=1,b=2,c=2表達式a<b<c1<2<21<21條件成立,那么執(zhí)行循環(huán)體,結果為:a=2,b=1,c=1表達式a<b<c2<1<10<11條件成立,那么執(zhí)行循環(huán)體,結果為:a=1,b=2,c=0表達式a<b<c1<2<01<00條件不成立,循環(huán)結束。在以下圖中,陰影局部區(qū)域可用表達式_______來表示。 //// //// //// ////X a b cA.(x<=a)&&(x>=b)&&(x<=c)B.(x<=a)||(b<=x<=c)C.(x<=a)||(x>=b)&&(x<=c) D.(x<=a)&&(b<=x<=c)【解答】〔x<=a〕||((x>=b)&&(x<=c))〔x<=a〕||(x>=b)&&(x<=c)以下程序段輸出結果為_____。intx=-3,y=2;if(x>y);x=-x;if(x<y)y=-y;printf("x=%d,y=%d\n",x,y);A.x=3,y=-2B.x=3,y=2C.x=-3,y=2D.x=-3,y=-2【解答】x=3,y=2;請注意:if(x>y);對于循環(huán)while(!e)語句,!e等價于_____。A.e==0B.e!=0C.e==1;D.e!=1【解答】!ee==0e!=0e==1e!=1e為011001e為非00010/10/1循環(huán)for(i=0,j=5;++i!=--j;)printf(“%d%d〞,i,j);將執(zhí)行_____。A.6次B.3次C.0次D.無限次【解答】i=0,j=5:++i1,--j4,i=1,j=4,1!=4成立;打印;i=1,j=4;i=1,j=4:++I2,--j3,i=2,j=3,2!=3成立;打印;i=2,j=3;i=2,j=3:++I3,--j2,I=3,j=2,3!=2成立;打??;i=3,j=2;……以下程序段執(zhí)行后s值為_____。 inti=5,s=0; doif(i%2)continue;elses+=i;while(--i);A.15B.9C.6D.以上均不是【解答】I=5,s=0:i%25%21成立:continue;--i4,i=4;I=4,s=0:i%24%20不成立:s=0+4=4;--i3,i=3I=3,s=4:i%23%21成立:continue;--i2,i=2I=2,s=4:i%22%20不成立:s=4+2=6;--i1,i=1I=1,s=6:i%21%21成立:continue;--i0試題二、填空題〔每題2分,共20分〕表達式1+4/5+15<7+4%5+(8,10)的值為_____?!窘獯稹?+(4/5)+15<7+4%5+(8,10)1+0+15<7+4%5+(8,10)1+15<7+4%5+(8,10)16<7+4%5+(8,10)16<7+4+(8,10)16<11+(8,10)16<11+1016<211表達式!!5的值為_____?!窘獯稹?!5!(!5)!01表達式~(10<<1)&4的值為______?!窘獯稹?0:0000101010<<1:00010100~(10<<1):111010114:00000100&00000000即0假設有定義:intx=10;那么表達式0<=x<=9的值為_____。【解答】0<=x<=9(0<=x)<=9(0<=10)<=91<=91以下for循環(huán)語句將輸出:012012012.for(i=1;i<=9;i++)printf("%2d",_______);【解答】(i-1)%3對于定義:intm=5,y=2;當計算表達式y(tǒng)+=y-=m*=y后,y的值為_____?!窘獯稹縴+=y-=m*=yy+=(y-=(m*=y))先計算m*=y:由于m=5,y=2,所以:m=m*y=5*210再計算y-=10:由于y=2,所以:y=y-10=2-10-8最后計算y+=-8:由于y=-8,所以:y=y+(-8)=(-8)+(-8)-16對于charc;假設其值為小寫字母,那么將其轉換為相應大寫字母的表達式為_____。【解答】c-‘a’+’A’以下語句的輸出結果為_____。printf("%d#%x#",027,27);【解答】23#1b#字符’a’的ASCII碼為97,那么以下語句的輸出結果為_____。printf("%c#%d#",98,’c’);【解答】b#99#以下程序段將輸出_____。unsignedcharx=255,y=’\1’;switch(!!x){case0:printf("*0*#");break;case1:switch(y) { case0:printf("*1*#");break; case1:printf("*2*#");break; } default:printf("*3*#");} 【解答】*2*#*3*#試題三、程序閱讀題〔每題6分,共30分〕以下程序將輸出_____。#include<stdio.h>voidswap(intx,inty){intt;t=x;x=y;y=t;return;}voidmain(void){inta=3,b=2;swap(a,b);printf("%d#%d#",a,b);return;}【解答】3#2#注:盡管在函數(shù)swap()里,形參x和y的值發(fā)生了交換,但根據(jù)函數(shù)參數(shù)的傳遞原那么——“實參向形參單向傳值〔即x向a賦值,y向b賦值〕,形參的改變不影響實參〞,實參變量a和b的值未發(fā)生交換!以下程序將輸出_____。#include<stdio.h>ints;intf(intm){staticintk=0;for(;k<=m;k++)s++;returns;}voidmain(void){ints=1;s=f(2)+f(2);printf("%d#%d#",s,f(20)); return;}【解答】輸出結果為:6#21#注:〔1〕全局變量s的初始值為0;〔2〕在f函數(shù)中,s是全局變量有效,而在main函數(shù)中,s是局部變量有效;〔3〕在f函數(shù)中,k是靜態(tài)變量,每次函數(shù)f調用結束后,其內存單元和值仍然保存。假設輸入:1273<回車>,以下程序的輸出結果是_______。#include<stdio.h>voidmain(void){ intn,m;scanf(“%d〞,&n);m=0;while(n>0){m=m*10+n%10;n/=10;}printf(“%d〞,m);return;}【解答】輸出結果是:3721假設輸入-6+15*3/5=<回車>,以下程序的輸出結果是_______。#include<stdio.h>voidmain(){intm=0,sum=0;charc,oldc='+';do{c=getchar(); if(c<='9'&&c>='0')m=10*m+c-'0'; else{if(oldc=='+')sum+=m; elsesum-=m; m=0; oldc=c;printf("%d#",sum);}}while(c!='='); return;}【解答】0#-6#9#6#1#程序的意思:對輸入的字符串掃描,假設碰到數(shù)字字符序列,求出相應的整數(shù)值m;假設碰到其它字符——假設字符是+號,那么將m值參加到sum中去;假設字符不是+號,那么將從sum中減去m值。假設輸入:howareyou?<回車>,以下程序的輸出結果是_______。#include<stdio.h>voidmain(void){intword; charch;word=0; while((ch=getchar())!='?'){ if(ch=='')word=0; elseif(word==0){ word=1; if(ch<='z'&&ch>='a')ch=ch-'a'+'A'; } putchar(ch); } return;}【解答】HowAreYou該程序思路:碰到一個新單詞,那么將該單詞首字母從小寫改為大寫,其它字符原樣輸出。提示:可借鑒統(tǒng)計單詞個數(shù)程序的算法。試題四、程序填空題〔每空2分,共30分〕輸入正整數(shù)n,計算s=1/1!+1/2!+1/3!+……+1/n!的值。#include<stdio.h>voidmain(void){intj,k,n;doublef,s;scanf("%d",&n);(1);s=0.0for(k=1;k<=n;k++){(2);f=1.0for(j=1;(3);j++)j<=k(4);f=f*j s=s+1.0/f;}printf("sum=%f\n",(5));sreturn;}輸入一個整數(shù),統(tǒng)計該數(shù)的位數(shù)。如:輸入12534,輸出5;輸入-99,輸出2;輸入0,輸出1。#include<stdio.h>voidmain(void){ intcount=0,number; scanf(“%d〞,(6));&number if(number<0)number=(7);-numberdo{ number=(8);number/10 count++;}while((9));n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 代買產品合同范例
- 代理權轉讓合同范例
- 全款采購合同范例
- 分期付款欠款合同范例
- 上海家政服務合同范例
- 借貸居間合同范例
- 出租合同不能轉租合同范例
- 企業(yè)服務合同范例復制
- 中空設備出售合同范例
- 農業(yè)委托經營合同范例
- 2025體育單招英語備考100個高頻名詞精講(精校打印版)
- 2024-2025學年人教版數(shù)學七下 第七章 相交線與平行線(含答案)
- GB/T 44994-2024聲學助聽器驗配管理
- 《護理文書書寫》課件
- 工程建設項目招投標投訴書(僅供參考)
- 城市規(guī)劃設計編制與收收費標準
- 酒店部門經理經營管理目標責任書
- 柔性電子皮膚項目商業(yè)計劃書寫作范文
- 輸電線路故障電壓行波特性研究
- 超市商品分類配置表
- (完整版)項目管理體系
評論
0/150
提交評論