




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2022年武漢東湖學院公共課《C語言》科目期末試卷A(有答案)一、填空題1、設x的二進制數(shù)是11001101,若想通過x&y運算使x中的低4位不變,高4位清零,則y的二進制數(shù)是_______。2、結構化程序由________、________、________3種基本結構組成。3、一個C語言源程序由若干函數(shù)組成,其中至少應含有一個________4、若x和n均是int型變量,且x和n的初值均為5,則執(zhí)行表達式x+=n++后x的值為_______,n的值為_______。5、若有定義語句:ints=6;則表達式s%2+(s+1)%2的值為_______6、函數(shù)process是一個可對兩個整型數(shù)a和b進行計算的通用函數(shù);函數(shù)max()可求這兩個數(shù)中的較大者,函數(shù)min()可求它們中的較小者。已有調用語句process(a,b,max);和process(a,b,min);。請?zhí)羁铡oidprocess(_______){intresult;result=(*fun)(x,y);printf("%d\n",result);}7、函數(shù)swap(arr,n)可對arr數(shù)組從第1個元素到第n個元素分別進行兩兩元素交換。在運行調用函數(shù)中的如下語句后,a[o]和a[1]的值分別為_______,原因是_______。a[0]=1;a[1]=2;swap(a,2);8、設有以下定義和語句,請在printf語句的_______中填上能夠正確輸出的變量及相應的格式說明。union{intn;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);9、執(zhí)行以下程序時,若從第一列開始輸入數(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;}10、在C語言中,二維數(shù)組元素在內存中的存放順序是_______。二、選擇題11、若x、i、j和k都是int型變量,則執(zhí)行表達式x=(i=4,j=16,k=32)后x的值為()。A.4B.16C.32D.5212、下面4個選項中,是正確的數(shù)值常量或字符常量的選項是()13、以下程序的運行結果是()。#include<stdio.h>intmain(){intm=5,n=10;printf("%d,%d\n",m++,--n):return0;}A.5,9B.6,9C.5,10D.6,1014、有輸入語句:scanf("a=%d,b=%d,c=%d",&a,&b,&C.;為使變量a的值為1,b的值為3,c的值為2;從鍵盤輸入數(shù)據(jù)的正確形式應當是()。(注:囗表示空格)A.132<回車>B.1,3,2<回車>C.a=1囗b=3囗c=2<回車>D.a=1,b=3,c=2<回車>15、判斷字符串s1是否大于字符串s2,應當使用()。A.if(s1>s2)B.if(strcmp(s1,s2))C.if(strcmp(s2,s1)>0)D.if(strcmp(s1,s2)>0)16、一個C程序的執(zhí)行是從()A.本程序的main函數(shù)開始,到main函數(shù)結束B.本程序的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結束C.本程序的main函數(shù)開始,到本程序文件的最后一個函數(shù)結束D.本程序的第一個函數(shù)開始,到本程序main函數(shù)結束17、以下不是無限循環(huán)的語句為()。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、若用數(shù)組名作為函數(shù)調用的實參,則傳遞給形參的是()A.數(shù)組的首地址B.數(shù)組第一個元素的值C.數(shù)組中全部元素的值D.數(shù)組元素的個數(shù)19、若要對a進行++運算,則a應具有下面說明()A.inta[3][2];B.char*a[]={"12","ab"};C.char(*A.[3];D.intb[10],*a=b;20、若需要建立如圖9-3所示的存儲結構,且已有說明float*p,m=3.14;則正確的賦值語句是()A)p=m;B)p=&m;C)*p=m;D)*p=&m;21、以下程序的運行結果是()。#include<stdio.h>intf(intx,inty){return(y-x)*x;}intmain(){inta=3,b=4,c=5,d;d=f(f(a,C.,f(a,B.+f(c,B.);printf("%d\n",D.;return(0);}A.-48B.58C.-58D.4722、下面程序的運行結果是()。#include<stdio.h>intmain(){charstr[]="SSSWLIA",c;intk;for(k=2;(c=str[k])!=\o';k++){switch(C.{case'I':++k;break;case'L':continue;default:putchar(C.;continue;putchar('*’);}return0;}A.SSW*B.SW*C.SW*AD.SW23、下面程序的功能是從鍵盤輸入一行字符,統(tǒng)計其中有多少個單詞,單詞之間用空格分隔。請選擇填空。()#include<stdio.h>intmain(){chars[80],c1,c2='';inti=0,num=0;gets(s);while(s[i]!='\o'){c1=s[i];if(i==0)c2='';elsec2=s[i-1];if(【】)num++;i++;printf("Thereare%dwords.\n",num);return0;}A.c1==′′&&c2==''B.cl!=''&&c2==''C.c1==''&&c2!=''D.cl!=''&&c2!=''24、以下程序()。#include<stdio.h>intmain(){inta=5,b=0,c=0;if(a=b+C.printf("***\n");elseprintf("$$$\n");return0;}A.有語法錯不能通過編譯B.可以通過編譯但不能通過連接C.輸出***D.輸出$$$25、有一堆零件(100~200之間),如果分成4個零件一組的若干組,則多2個零件;若分成7個零件一組,則多3個零件;若分成9個零件一組,則多5個零件。下面程序是求這堆零件的總數(shù),請選擇填空()。#include<stdio.h>intmain(){inti;for(i=100;i<200;i++)if((i-2)%4==0)if(!((i-3)%7))if([])printf("%d",i);return0;}A)i%9=5B)i%9!=5C)(i-5)%9!=0D)i%9==5三、讀程序填空26、以下printf語句中*號的作用是_______,輸出結果是_______。#include<stdio.h>intmain(){inti=1;printf("##%*d\n",i,i);i++;printf("##%*d\n",i,i);i++;printf("##%*d\n",i,i);return0;}27、以下程序的輸出結果是_______。#include<stdio.h>intmain(){intx=1,y=2;printf("x=%dy=%d*sum*=%d\n",x,y,x+y);printf("10Squaredis:%d\n",10*10);return0;}28、以下程序的運行結果是_______。#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;}29、以下程序的功能是:輸入一個小寫字母,將字母循環(huán)后移5個位置后輸出。例如’a’變成’f’,w’變成b’。請?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;}30、下面程序的運行結果是_______。#include<stdio.h>intmain(){inti,t,sum=0;for(t=i=1;i<=10;){sum+=t;++i;if(i%3==0)t=-i;elset=i;}printf("sum=%d,sum);return0;}31、以下程序的運行結果是_______,其算法是_______。#include<stdio.h>voidsort(inta[]);intmain(){inta[5]={5,10,一7,3,7},i,t,j;sort(a);for(i=0;i<=4;i++)printf("%d",a[i]);return(0);voidsort(inta[]){inti,j,t;for(i=0;i<4;i++)for(j=0;j<4一i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}32、以下程序的功能是求1000以內的水仙花數(shù)。(提示:所謂水仙花數(shù)是指一個3位正整數(shù),其各位數(shù)字的立方之和等于該正整數(shù)。例如:407=4×4×4+0×0×0+7×7×7,故407是一個水仙花數(shù)。)請?zhí)羁铡?include<stdio.h>intmain(){intx,y,z,a[8],m,i=0;printf("Thespecialnumbersare:\n");for(_______;m++){x=m/100;y=_______:z=m%10;if(x*100+y*10+z==x*x*x+y*y*y+z*z*z){_______:i++;}}for(x=0;x<i;x++)printf("%6d",a[x]);return0;}33、設有5個學生,每個學生考4門課,以下程序能檢查這些學生有無考試不及格的課程。若某一學生有一門或一門以上課程不及格,就輸出該學生的序號(序號從0開始)和其全部課程成績。請?zhí)羁铡?include<stdio.h>intmain(){intscore[5][4]={{62,87,67,95},{95,85,98,73},{66,92,81,69},{78,56,90,99},{60,79,82,89}};int(*p)[4],j,k,flag;p=score;for(j=0;j<5;j++){flag=0;for(k=0;k<4;k++)if(_______)flag=1;if(flag==1){printf("No.%disfail,scoresare:\n",j);for(k=0;k<4;k++)printf("%5d",_______);printf(\n");}return(0);}四、編程題34、編寫程序,將字符串computer賦給一個字符數(shù)組,然后從第一個字母開始間隔地輸出該串,請用指針完成。35、已有變量定義和函數(shù)調用語句intx=57;isprime(x);函數(shù)isprime()用來判斷一個整型數(shù)a是否為素數(shù);若是素數(shù),則函數(shù)返回1,否則返回0。請編寫isprime函數(shù)。intisprime(inta){}
參考答案一、填空題1、000011112、【1】順序結構【2】選擇結構【3】循環(huán)結構3、主函數(shù)(或main函數(shù))4、【1】10【2】65、16、intx,inty,int(*fun)(int,int)7、【1】a[0]=2
溫馨提示
- 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ī)院影像科合同范本
- 與商城簽約合同范本
- 第九屆鵬程杯五年級數(shù)學競賽初試真題
- 實驗一 外科常用手術器械課件
- 電梯結構與原理-第2版-全套課件
- 《現(xiàn)代漢語》語音教學上課用課件
- 采購流程各部門關系圖
- 《遙感導論》全套課件
- 力士樂工程機械液壓培訓資料(共7篇)課件
- 村光伏發(fā)電申請書
- 降低混凝土路面裂縫發(fā)生率QC小組資料
- 【教師必備】部編版四年級語文上冊第二單元【集體備課】
- 支氣管擴張的護理PPT
評論
0/150
提交評論