版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2022年重慶第二師范學(xué)院公共課《C語(yǔ)言》科目期末試卷A(有答案)一、填空題1、測(cè)試char型變量a第6位是否為1的表達(dá)式是_______(設(shè)最右位是第1位)。2、在C語(yǔ)言中,輸入操作是由庫(kù)函數(shù)________完成的,輸出操作是由庫(kù)函數(shù)________完成的。3、結(jié)構(gòu)化程序由________、________、________3種基本結(jié)構(gòu)組成。4、若有定義語(yǔ)句:intm=5,y=2;則執(zhí)行表達(dá)式y(tǒng)+=y-=m*=y后的y值是_______5、若有定義語(yǔ)句:ints=6;則表達(dá)式s%2+(s+1)%2的值為_(kāi)______6、以下程序段通過(guò)指針變量q,給如圖所示連續(xù)動(dòng)態(tài)存儲(chǔ)單元賦值(在此過(guò)程中不能移動(dòng)q)。請(qǐng)?zhí)羁?。(假設(shè)程序段中的所有變量均已正確說(shuō)明。)_______scanf("%d",q+k);7、下面add函數(shù)的功能是求兩個(gè)參數(shù)的和,并將和值返回調(diào)用函數(shù)。函數(shù)中錯(cuò)誤的部分是_______,改正后為_(kāi)______。voidadd(floata,floatb){floatc;c=a+b;returnc;}8、執(zhí)行以下程序時(shí),若從第一列開(kāi)始輸入數(shù)據(jù),為使變量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正確的數(shù)據(jù)輸入形式是_______。#include<stdio.h>intmain(){inta,b;floatx,y;charcl,c2;scanf("a=%db=%d",&.a,&.b);scanf("x=%fy=%",8.x,8.y);scanf("c1=%cc2=%c”,8.cl,8.c2);printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2);return0;}9、為建立如圖10-5所示的存儲(chǔ)結(jié)構(gòu)(即每個(gè)結(jié)點(diǎn)兩個(gè)域,data是數(shù)據(jù)域,next是指向結(jié)點(diǎn)的指針域),請(qǐng)將定義補(bǔ)充完整。structs{chardata;_______}node;10、下面程序段的運(yùn)行結(jié)果是_______。inti=5;charc[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);二、選擇題11、下面4個(gè)選項(xiàng)中,是合法整型常量的選項(xiàng)是()。A.160B.-0xcdfC.-01D.-0x48a-0xffff01a9860122e50110xe06680x12、設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+'a'+i*f值的數(shù)據(jù)類型為()。A.intB.floatC.doubleD.不確定13、已有如下定義和輸入語(yǔ)句,若要求al,a2,c1,c2的值分別為10、20、A和B,當(dāng)從第一列開(kāi)始輸入數(shù)據(jù)時(shí),正確的數(shù)據(jù)輸入方式是。(注:口表示空格)inta1,a2;charc1,c2;scanf("%d%c%d%c”,&a1,&c1,&a2,&c2);A.10A□20B<回車>B.10□A□20□B<回車>C.10A□20B<回車>D.10A20□B<回車>14、設(shè)有以下程序:#include<stdio.h>intmain(){charcl,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2,&c3,&c4);c5=getchar();c6=getchar();putchar(c1);。putchar(c2);printf("%c%c\n",c5,c6);return0;}若運(yùn)行時(shí)從鍵盤(pán)輸入數(shù)據(jù):abc<回車>defg<回車>,則輸出結(jié)果是()。A.abcdB.abdeC.abefD.abfg15、以下不正確的定義語(yǔ)句是()。A.doublex[5]={2.0,4.0,6.0,8.0,10.0};B.inty[5]={0,1,3,5,7,9};C.charcl[]={'1','2','3','4','5'};D.charc2[]={'\x10','\xa','\x8'};16、以下敘述正確的是A.在C程序中,main函數(shù)必須位于程序的最前面B.C程序的每行中只能寫(xiě)一條語(yǔ)句C.C語(yǔ)言本身沒(méi)有輸入輸出語(yǔ)句D.在對(duì)一個(gè)C程序進(jìn)行編譯的過(guò)程中,可以發(fā)現(xiàn)注釋中的拼寫(xiě)錯(cuò)誤17、以下不是無(wú)限循環(huán)的語(yǔ)句為()。A.for(y=0,x=1;x>++y;x=i++)i=x;B.for(;;x++=i):C.while(1){x++;}D.for(i=10;;i-一)sum+=i;18、以下程序有語(yǔ)法性錯(cuò)誤,有關(guān)錯(cuò)誤原因的正確說(shuō)法是()。#include<stdio.h>intmain(){intG=5,k;voidprt_char();-----k=prt_char(G);---}A.語(yǔ)句voidprt_char();有錯(cuò),它是函數(shù)調(diào)用語(yǔ)句,不能用void說(shuō)明B.變量名不能使用大寫(xiě)字母C.函數(shù)說(shuō)明和函數(shù)調(diào)用語(yǔ)句之間有矛盾D.函數(shù)名不能使用下劃線19、下面程序段的運(yùn)行結(jié)果是()。char*format="%s,a=%d,b=%d\n";inta=1,b=10;a+=b;printf(format,"a+=b",a,B.;A.for,"a+=b",abB..format,"a+=b"C.a+=b,a=11,b=10D.以上結(jié)果都不對(duì)20、main函數(shù)的正確說(shuō)明形式是()。A.intmain(intargc,char*argv)B.intmain(intabc,char*xabv)C.intmain(intargc,charargv)D.intmain(intc,charv[])21、折半查找法的思路是:先確定待查元素的范圍,將其分成兩半,然后測(cè)試位于中間點(diǎn)元素的值。如果該待查元素的值大于中間點(diǎn)元素,就縮小待查范圍,只測(cè)試中點(diǎn)之后的元素;反之,測(cè)試中點(diǎn)之前的元素,測(cè)試方法同前。函數(shù)binary的作用是應(yīng)用折半查找法從存有10個(gè)有序整數(shù)的a數(shù)組中對(duì)關(guān)鍵字m進(jìn)行查找,若找到,返回其下標(biāo)值;反之,返回-1。請(qǐng)選擇填空。intbinary(inta[10],intm){intlow=0,high=9,mid;while(low<=high){mid=(low+high)/2;if(m<a[mid])high=mid-1;elseif(m>a[mid])【】;elsereturn(miD.;return(一1);}A.high=mid-1B.low=mid+1C.high=mid+1D.low=mid-122、下面程序的運(yùn)行結(jié)果是()。#include<stdio.h>intmain(){chara[]="morming",t;inti,j=0;for(i=1;i<7;i++)if(a[j]<a[])j=i;t=a[j];a[j]=a[7];a[7]=a[j];puts(a);return0;}A)mogninrB)moC)morningD)mornin23、當(dāng)運(yùn)行以下程序時(shí),從鍵盤(pán)輸入:aabb<回車>ccdd<回車>則下面程序的運(yùn)行結(jié)果是()。#include<stdio.h>intmain(){charal[5],a2[5],a3[5],a4[5];scanf("%s%s",al,a2);gets(a3);gets(a4);puts(a1);puts(a2);puts(a3);puts(a4);return0;}A)aaB)aaC)aaD)aabbbbbbbbccccccddddccddddee24、以下程序的輸出是()。#include<stdio.h>intmain(){inta=5,b=8,c=3,max;max=a;if(c>B.if(c>A.max=c;elseif(b>A.max=b;printf("max=%d\n",max);return0;}A.max=8B.max=5C.max=3D.無(wú)輸出結(jié)果25、下面程序的運(yùn)行結(jié)果是()。#include<stdio.h>intmain(){intk=0;charc='A';do{switch(c++){case'A':k++;break;case'B':k--;case'C':k+=2;break;case'D':k=k%2;continue;case'E':k=k*10;break;default:k=k/3;}k++;}while(c<'G');printf("k=%d\n",k);return0;}A.k()=3B.k=4C.k=2D.k=0三、讀程序填空26、已知字母A的ASCII碼值為65。以下程序的輸出結(jié)果是_______。#include<stdio.h>intmain(){chara,b;a='A'+'4'-'3';b='A'+'6'-2';printf("a=%d,b=%c\n",a,b);return0;}27、以下程序的運(yùn)行結(jié)果是_______。#include<stdio.h>intmain(){intn=0;n+=(n=10);printf("%d\n",n);return0;}28、以下程序的功能是:輸入一個(gè)小寫(xiě)字母,將字母循環(huán)后移5個(gè)位置后輸出。例如’a’變成’f’,w’變成b’。請(qǐng)?zhí)羁铡?include<stdio.h>intmain(){charc;c=getchar();if(c>='a'8&&.c<='u')【l】:elseif(c>='v√8&8.c<='z)_______;putchar(c);return0;}29、以下程序的運(yùn)行結(jié)果是_______。#include<stdio.h>intmain(){intal,a2,bl,b2;Inti=5,j=7,k=0;al=!k;a2=i!=j;printf("a1=%d\ta2=%d\n",al,a2);b1=k&&j;b2=k||j;printf("b1=%d\tb2=%d\n",bl,b2);returnO;}30、下面程序的功能是從鍵盤(pán)輸入的10個(gè)整數(shù)中,找出第一個(gè)能被7整除的數(shù)。若找到,打印此數(shù);若未找到,打印notexist。請(qǐng)?zhí)羁铡?include<stdio.h>intmain(){inti,a;for(i=1;i<=10;i++){scanf("%d",&a);if(a%7==0)_______;}if(_______)printf("%d\n",a);elseprintf("notexist\n");return0;}31、以下程序的運(yùn)行結(jié)果是_______。#include<stdio.h>voidadd(intx,inty,intz);intmain(){intx=2,y=3,z=0;printf("(1)x=%dy=%dz=%d\n",x,y,z);add(x,y,z);printf("(3)x=%dy=%dz=%d\n",x,y,z);return(0);voidadd(intx,inty,intz)}{z=x+y;x=x*x;y=y*y;printf("(2)x=%dy=%dz=%d\n",x,y,z);}32、當(dāng)從鍵盤(pán)輸入18時(shí),下面程序的運(yùn)行結(jié)果是_______。#include<stdio.h>intmain(){intx,y,i,a[8],j,u;scanf("%d”,8.x);y=x;i=0;do{u=y/2;a[i]=y%2;i++;y=u;}while(y>=1);for(j=i-1;j>=0;j--)printf("%d".a[j]):return0;}33、運(yùn)行以下程序時(shí),從鍵盤(pán)輸入ASDFGHJ<回車>AFH<回車>則下面程序的運(yùn)行結(jié)果是_______。#include<stdio.h>voidfun(char*s1,char*s2);intmain(){charal[80],a2[80];gets(al);gets(a2);fun(al,a2);puts(a1);return(0);}voidfun(char*s1,char*s2){intj;char*s=s1;for(;*s2!=\0';s2++){for(j=0,s1=s;*sl!='\0';s1++)if(*s1!=*s2){s[j]=*s1;j++;}s[j]='\o';}}四、編程題34、試?yán)媒Y(jié)構(gòu)體類型編制一個(gè)程序,實(shí)現(xiàn)輸入一個(gè)學(xué)生的數(shù)學(xué)期中和期末成績(jī),然后計(jì)算并輸出其平均成績(jī)。35、定義一個(gè)帶參數(shù)的宏,用來(lái)判斷一個(gè)字符是否為字母。編寫(xiě)主函數(shù),從鍵盤(pán)輸入一個(gè)字符,調(diào)用上述宏輸出判斷結(jié)果。
參考答案一、填空題1、a&040或a&0×20或a&322、【1】scanf【2】printf3、【1】順序結(jié)構(gòu)【2】選擇結(jié)構(gòu)【3】循環(huán)結(jié)構(gòu)4、-165、16、for(k=0;k<10;k++)7、【1】voidadd(floata,floatb)【2】floatadd(floata,floatb)8、a=3囗b=7x=8.5囗y=71.82c1=ADc2=a<回車>(注:答案中的囗代表空格)9、structs*next;10
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【七年級(jí)下冊(cè)地理中圖版】7.2.1 祖國(guó)的寶島 與祖國(guó)大陸一脈相承的中華文化 同步練習(xí)
- 酒店行業(yè)人事工作總結(jié)
- 家校合作在辦公環(huán)境下的創(chuàng)新實(shí)踐與思考
- 蘇教版六年級(jí)語(yǔ)文下冊(cè)教案集1
- 安保服務(wù)宣傳協(xié)議書(shū)(2篇)
- 2025年朔州道路運(yùn)輸貨運(yùn)考試題庫(kù)
- 小學(xué)數(shù)學(xué)中AI技術(shù)輔助的教學(xué)策略
- 小學(xué)語(yǔ)文作業(yè)創(chuàng)新設(shè)計(jì)方法與實(shí)踐
- 小微企業(yè)貸款審批流程中的風(fēng)險(xiǎn)管理
- 提升學(xué)生環(huán)保意識(shí)的課堂活動(dòng)設(shè)計(jì)
- 小學(xué)二年級(jí)100以內(nèi)進(jìn)退位加減法800道題
- 2025年1月普通高等學(xué)校招生全國(guó)統(tǒng)一考試適應(yīng)性測(cè)試(八省聯(lián)考)語(yǔ)文試題
- 《立式輥磨機(jī)用陶瓷金屬?gòu)?fù)合磨輥輥套及磨盤(pán)襯板》編制說(shuō)明
- 保險(xiǎn)公司2025年工作總結(jié)與2025年工作計(jì)劃
- 育肥牛購(gòu)銷合同范例
- 暨南大學(xué)珠海校區(qū)財(cái)務(wù)辦招考財(cái)務(wù)工作人員管理單位遴選500模擬題附帶答案詳解
- DB51-T 2944-2022 四川省社會(huì)組織建設(shè)治理規(guī)范
- 2024北京初三(上)期末英語(yǔ)匯編:材料作文
- 市委組織部副部長(zhǎng)任職表態(tài)發(fā)言
- HXD1D客運(yùn)電力機(jī)車轉(zhuǎn)向架培訓(xùn)教材
- 超星爾雅學(xué)習(xí)通【西方文論原典導(dǎo)讀(吉林大學(xué))】章節(jié)測(cè)試附答案
評(píng)論
0/150
提交評(píng)論