2023年C語言程序設(shè)計期末考試復(fù)習(xí)題及答案_第1頁
2023年C語言程序設(shè)計期末考試復(fù)習(xí)題及答案_第2頁
2023年C語言程序設(shè)計期末考試復(fù)習(xí)題及答案_第3頁
2023年C語言程序設(shè)計期末考試復(fù)習(xí)題及答案_第4頁
2023年C語言程序設(shè)計期末考試復(fù)習(xí)題及答案_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

C語言考試期末考試復(fù)習(xí)題及答案一、選擇題(1)一個C語言程序總是從(C)開始執(zhí)行A)書寫順序的第一個函數(shù)B)書寫順序的第一條執(zhí)行語句C)主函數(shù)main()D)不擬定(2)設(shè)intx=3,y=4,z=5,則下列表達(dá)式中的值為0的是(D) A)‘x’&&’y’ B)x||y+z&&y-zC)x<=y D)!((x<y)&&!z||1)(3)執(zhí)行以下程序段后,i的值是(C) inti=10; switch(i+1){case10:i++;break; case11:++i; case12:++i;break; default:i=i+1;} A)11 B)13 C)12 D)14 (4)語句while(!e);中的條件!e等價于(A) A)e==0 B)e!=1 C)e!=0 D)運營時犯錯(5)用inta[4]={1,2};對數(shù)組進(jìn)行初始化后,數(shù)組元素a[3]的值是(B) A)隨機值 B)0 C)1 D)F(6)在執(zhí)行charstr[10]=“china\0”;strlen(str)的結(jié)果是(A) A)5 B)6 D)7 D9(7)若有定義,char*p=”computer”;則語句printf(“%c”,*(p+2))運營結(jié)果是(B) A)隨機值 B)m C)o D)omputer(8)在以下函數(shù)調(diào)用語句中 fun1(x,10,(x,10),fun2(y,10,(y,10))); 函數(shù)fun1參數(shù)的個數(shù)為(B) A)8 B)4C)5 D)編譯犯錯(9)在說明一個結(jié)構(gòu)體變量時系統(tǒng)分派給它的存儲空間是(D) A)該結(jié)構(gòu)體中第一個成員變量所需存儲空間B)該結(jié)構(gòu)體中最后一個成員變量所需存儲空間C)該結(jié)構(gòu)體中占用最大存儲空間的成員變量所需存儲空間D)該結(jié)構(gòu)體中所有成員變量所需存儲空間的總和1.用C語言編寫的代碼程序(B)A)可立即執(zhí)行B)是一個源程序C)通過編譯即可執(zhí)行D)通過編譯解釋才干執(zhí)行2.C語言中用于結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是(A)A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)B)if、switch、breakC)for、while、do-whileD)if、for、continue3.以下定義語句中對的的是(C)A)chara='A'b='B';floata=b=10.0;C)inta=10,*b=&a;D)float*a,b=&a;4.下列選項中,不能用作標(biāo)記符的是(D)A)_1234_B)_1_2C)int_2_D)2_int_5.在函數(shù)調(diào)用過程中,假如函數(shù)funA調(diào)用了函數(shù)funB,函數(shù)funB又調(diào)用了函數(shù)funA,則(B)A)稱為函數(shù)的直接遞歸調(diào)用B)稱為函數(shù)的間接遞歸調(diào)用C)稱為函數(shù)的循環(huán)調(diào)用D)C語言中不允許這樣的遞歸調(diào)用6.以下敘述中對的的是(A)A)局部變量說明為static存儲類,其生存期將得到延長B)全局變量說明為static存儲類,其作用域?qū)⒈粩U大C)任何存儲類的變量在未賦初值時,其值都是不擬定的D)形參可以使用的存儲類說明符與局部變量完全相同7.若變量已對的定義,規(guī)定程序段完畢求5!的計算,不能完畢此操作的程序段是(B)A)for(i=1,p=1;i<=5;i++)p*=i;B)for(i=1;i<=5;i++){p=1;p*=i;}C)i=1;p=1;while(i<=5){p*=i;i++;}D)i=1;p=1;do{p*=i;i++;}while(i<=5);8.有以下程序(a)main(){chara='a',b;printf("%c,",++a);printf("%c\n",b=a++);}程序運營后的輸出結(jié)果是a)b,bB)b,cC)a,bD)a,c9.有以下函數(shù)定義:(c)voidfun(intn,doublex){……}若以下選項中的變量都已對的定義并賦值,則對函數(shù)fun的對的調(diào)用語句是A)fun(inty,doublem);B)k=fun(10,12.5)C)fun(x,n);D)voidfun(n,x)10.已定義c為字符型變量,則下列語句中對的的是(c)A)c='97';B)c="97";C)c=97;D)c="a";11.以下能對的定義一維數(shù)組的選項是(b)A)intnum[];B)#defineN100C)intnum[0..100];D)intN=100;intnum[N];intnum[N];12.以下能對的定義數(shù)組并對的賦初值的語句是(d)A)intN=5,b[N][N];B)inta[1][2]={{1},{3}};C)intc[2][]={{1,2},{3,4}};D)intd[3][2]={{1,2},{34}};13.有以下程序(a)main(){inti;for(i=0;i<3;i++)switch(i){case1:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}執(zhí)行后輸出結(jié)果是A)011122B)012C)012023D)12014.有以下程序(d)main(){intp[7]={11,13,14,15,16,17,18},i=0,k=0;while(i<7&&p[i]%2){k=k+p[i];i++;}printf("%d\n",k);}執(zhí)行后輸出結(jié)果是A)58B)56C)45D)2415.以下敘述中對的的是(c)A)C語言比其他語言高級B)C語言可以不用編譯就能被計算機辨認(rèn)執(zhí)行C)C語言以接近英語國家的自然語言和數(shù)學(xué)語言作為語言的表達(dá)形式D)C語言出現(xiàn)的最晚,具有其他語言的一切優(yōu)點16.下列敘述中對的的是(d)A)C語言中既有邏輯類型也有集合類型B)C語言中沒有邏輯類型但有集合類型C)C語言中有邏輯類型但沒有集合類型D)C語言中既沒有邏輯類型也沒有集合類型17.以下敘述中對的的是(a)A)C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方B)花括號"{"和"}"只能作為函數(shù)體的定界符C)構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名D)分號是C語句之間的分隔符,不是語句的一部分二)閱讀程序,寫出程序運營結(jié)果(1)#include<stdio.h>main(){charch=’A’;ch=(ch>=’A’&&ch<=’Z’)?(ch+32):ch;printf(“%c”,ch);}程序的運營結(jié)果是:(2)#include<stdio.h>main(){intsum=0,i=11;while(i<=10){sum=sum+i;i++;}printf(“%d”,sum);}程序的運營結(jié)果是:(3)#include<stdio.h>main(){charstr[]=”1a2b3c”;inti;for(i=0;str[i]!=’\0’;i++)if(str[i]>=’0’&&str[i]<=’9’)printf(“%c”,str[i]);}程序的運營結(jié)果是:(4)main(){inta,b;a=5;b=8;p(a,b);p(a+b,a);}p(intx,inty){y=x+y;printf(“%d%d”,x,y);}程序的運營結(jié)果是:(5)#include<stdio.h>voidmain(){inta[3][3]={{1,2,3},{4,5,6},{7,8,9}};intj,s=1;for(j=0;j<=2;j++)s=s*a[j][j];printf("%d",s);}程序的運營結(jié)果是:Key:(1)a(2)0(3)123(4)5131318(5)45三)改錯題(每個程序只有一個錯誤,填入錯誤語句所在的行號以及修改后的語句)(1)下段程序的功能是先輸入一個整數(shù),然后將輸入的整數(shù)輸出。1main()2{intx;3scanf(“%d”,x);4printf(“x=%d\n”,x);}行號:改為:(2)下段程序的功能是求1+2+3+4+……+99+100的和。1main()2{intj=1,sum=0;3while(j<=100)4sum=sum+j;j++;5printf(“%d”,sum);}行號:改為:(3)下段程序的功能是當(dāng)輸入x的值為90時,輸出“right”,否則輸出“error”。1main()2{intx;3if(x=90)printf(“right”);4elseprintf(“error”);}行號:改為:(4)下面程序的功能是輸出字符串S1main()2{chars[]=”china”;3printf(“s=%s\n”,s[]);}行號:改為:(5)下面程序的功能是按照下面的格式輸入a和b的值,計算y=a2+b2并輸出。輸入:32?輸出:y=131main()2{inta,b;3inty;4scanf(“a=%d,b=%d”,&a,&b);5y=a*a+b*b;6printf(“y=%d\n”,y);7}行號:改為:Key:(1)行號:3改為:scanf(“%d”,&x);(2)行號:4改為:{sum=sum+j;j++;};(3)行號:3改為:if(x==90)printf(“right”);(4)行號:3改為:printf(“s=%s\n”,s);(5)行號:4改為:scanf(“%d%d”,&a,&b);二、填空題1.以下程序輸入3個整數(shù)值給a,b,c,變量b中的值給a,變量c中的值給b,變量a中的值給c,互換后輸出a,b,c的值。#include<stdio.h>main(){inta,b,c,__①____;printf("entera,b,c");scanf("%d%d%d",&a,&b,&c);____②____;___③_____;____④_____;___⑤_____;printf("%d,%d,%d",a,b,c);}2.求出200以內(nèi)的整數(shù)中,最大的可以被17整除的數(shù)是哪個數(shù)。#include<stdio.h>___①____{inti;for(____②____;___③_______;i--){if(________④________)break;}printf("%d\n",__⑤_____);}3.以下程序從終端讀入數(shù)據(jù)到數(shù)組中,記錄其中正數(shù)的個數(shù),并計算它們之和。main(){inti,a[20],sun,count;sum=count=0;for(i=0;i<20;i++)scanf("%d",__①___);for(i=0;__②__;i++){if(a>0){count++;sum+=___③___;}}printf("sum=%d,count=%d\n",__④___,__⑤_____);}4.以下程序的功能是調(diào)用函數(shù)fun計算:m=1+2+3+4+…+9+10,并輸出結(jié)果。請?zhí)羁?。intfun(intn){intm=0,i;for(i=___①___;i<=n;__②____){m=___③____;}return_④____;}main(){printf("m=%d\n",__⑤____);}5.以下程序?qū)?shù)組中的數(shù)據(jù)按逆序存放。#include<stdio.h>#defineSIZE12main(){inta[SIZE],i,j,t;for(i=0;i<SIZE;i++)scanf("%d",___①_______);i=0;j=__②____;while(i<j){t=a[i];______③______;_____④________;i++;j___⑤_____}for(i=0;i<SIZE;i++)printf("%3d",a[i]);printf("\n");key:1①__d__②__d=a_____③_a=b__④b=c______⑤__c=d____①main()__②_i=200____③_i__>0____④_i%17==0_⑤__i__①a[i]_②i<20__③__i__④__sum__⑤count_①_1__②_i++_③_m_+i_④_m__⑤_fun(10)_①_a[i]②_SIZE_③a[i]=a[j]④a[j]=t⑤j_--三、程序設(shè)計題目1.編寫程序,打印下列圖案***************2.某數(shù)列前兩項分別為1和2,其后每項為前兩項之和,求此數(shù)列的第10個數(shù)。3.一個8層的燈塔,每一層的燈數(shù)是上一層的2倍,一共有765盞燈,求燈塔底層的燈數(shù)。(1)從鍵盤輸入一個華氏溫度,規(guī)定輸出攝氏溫度,公式為C=5*(F-32)/9(2)編寫一個函數(shù)求y=(a-b)×(a+b),主函數(shù)用以輸入a,b的值和輸出y值。(3)編一程序:從鍵盤輸入10個整數(shù),計算并輸出這10個數(shù)的平均數(shù)。(4)通過鍵盤輸入3*4矩陣,編寫一個函數(shù)求所有元素中的最大值,其中主函數(shù)完畢3*4矩陣的輸入和最大元素的輸出。Key:3.(1)main(){floatc,f;scanf(

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論