專升本C語言歷年試題及答案_第1頁
專升本C語言歷年試題及答案_第2頁
專升本C語言歷年試題及答案_第3頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

專升本C一、單項選擇題1。 D 是合法的用戶自定義標識符。A、b-bB、float C〈fr> D、_isw2。 若變量已正確定義并賦表達B 不符合C語言語A、a*b/c; B、。14%2 C、2,b D、a/b/c3。 C 是不正確的字符常.A’n’ B、'1’ 、"a" D’101'4。 在C程序中,B 表示邏輯值“。A1 B、非0的數 C、非1的數 、大于0的數 C 把xyfloat,3.14。A、floaty=3.14; B、floaty=2*3。C、floatx=3.14,y=x=3.14; D、float。14;若變量已正確定義,表達C 的值不是。A2&3 B、〈1 Ca==2 D、若變量已正確定義,語句〉b)k=0;elsek=1;”C 等價Ak=(a>b)?1:0; B、k=a>b;C、〈=b; D、a=b?0:1;8。 設變量定義為inta,,執(zhí)行下列語句時,輸_D ,則a和b的值都是10。scanf("a=%d,b=%,a,&;A1010 B、10,10 C、a=10 b=10 D、a=10,b=109。 下列程序的輸出結果D 。fun(inta,intb,intc){c=a*b;}voidmain(){ intc;print(”%d,;}A0 B、1 C、6 D、無法確定10。 在C程序中,若對函數類型未加說明,則函數的隱含類型A 。A、intB、double C、void D、char1。 表達式strlen("hell)的值 B 。A、4 B、5 、6 D、712. 設變量定義為inta[4,則表達 D 不符合C語言語法。A、*a B、a[0] Ca D、a++13。 設變量定義為x,*p=&x;”,則&*p相當A Ap B、*p Cx D、*&x14。 若變量已正確定,_A 不能使指針p成為空指針Ap=EOF B、p=0 C、、p=NULL15。 對于以下的變量定義,表達D 不符合C語言語structnode{intlen;char*pk;}x={2,”rigt"*p=&x;Ap—pk B、*p。pk C、〉pk D、*x。pk16.有如下程序intrunc(inta,intb){main0{intx=2,y=5,z=8,r;r=func(func(x,,);printf“%\d\”,;}該程序的輸出的結果是(D)A)12B)13C)14D)1517。對于基類型相同的兩個指針變量之間,不能進行的運算是A)<B)=C)+D)-有如下程序longfib(intn){i(〉2)elsereturn(2);}main0{print%d\fi(3)該程序的輸出結果是(B)A}2B}4C}68有如下定義structperson{charname[9];intstrictpersonclas1]Johu",1,“Paul",19“Mary",18,“Adam16,};根據上述定義,能輸出字母M的語句是(D)A)prinft(“%c\n",class[3].mane);B)pfint“%c\class[3].nam[1);prinf“c\”,class[2].name[]);print“%^c\class[nam[0]);以下所列的C語言常量中,錯誤的是A)0xFFB)1.2e0.5C)2LD)‘\72'有以下程序段

(C)intk=0while(k=1)k++;while(A)無限次B)不能執(zhí)行C)一次也不執(zhí)行D)執(zhí)行1次22。以下程序的輸出結果是(C)A)0B)29C)31D)無定值fun(intx,inty,intz){z=x*x+y*y;}main(){inta=31;fun(5,2,a);print“%d,); 23。下列程序段的輸出結果是(A)A)2143B)121212342112voidfun(int*x,int*y){print“d%d,*,*y);*x=3;*y=4}main(){intx=1,y=2;fun(&,&;printf“d%d,y); }24。當調用函數時,實參是一個數組名,則向函數傳送的是(B)A)數組的長度B)數組的首地址C)數組每一個元素的地址D)數組每個元素中的值25.以下程序的輸出結果是(A)A)1B)2C)3D)4longfun(intn){longs;if(n==1||n==2)s=2;elses=n-fun(n-1);returns; }main(){printf(“%ld\n",fun(3));}26。以下程序的輸出結果是(B)A)16B)2C)9D)1#defineSQR(X)X*Xmain(){inta=16,k=2,m=1;a/=SQ(k+)/SQR(k+;printf“d\n,;}以下函數返回afun(intintn){inti,j=0,p;p=j;for(i=j;i<N;I++)i([<P) return(p); }在下劃線處應填入的是(D)i=pB)a[p]=a[i]C)p=jp=i二、填空題1。 表示的C表達式是 =y&&〉=z 。2。 下列程序段的輸出1 。print(%on,010〈1^;3。下列程序段的輸出6,90 。intk;floats;for(k=0,s=0;k〈7;k++)s+=k/2;printf(”%d,%fn",k,s);下列程序段的輸出5,25 。#definef(a,b,x)a*x+bprintf(”%d,%dn",f(3,2,1),f(6,5,f(3,2,1));下列程序段的輸出。main(){intk;for(k=1;k<5;k++){if(k%2) elsecontinue;print(;}}下列程序段的輸出58 。#include〈stdio。h>intf(intx){ staticy++;x+=y;returnx;}voidmain(){ intk;printf(”%d %dn”,k,f(k);}下列程序段的輸出5 .int *p,*q, k=5,j=6;q=&k; p=q; q=&jprintf("%d",函數void(chars[,chart[){ intk=0;while(s[k]=t[k])k++;}等價于voidf(char*s,char*t){ while(_*s++=*t++ }9。下列程序段的輸出_ne,s .char*a[2]={”one",”two"},**p=a;printf(”%s,”,*(p++)+1);print(%cn,*p-;下列程序編譯后生成t。exe,運行t input output zoo oil的輸出結果zoo 。voidmain(intargc,char*argv[]){ intk;char*p=argv[;for(k=2;〈argc;if(strcmp(arg[k,p〉0) printf("%sn",p);}下列程序調用swap函數交換ab的值,并輸出交換后的ab果是:Afterswap5,。voidmain(){ inta=3,swap( &a,&b );printf("Afterswap%d,%d",a,b);}swap(int*p,int*q){ intt;t=*p; ;*p=*q ;*q=t ;CC一、單項選擇題1.C語言源程序文件經過C編譯程序編譯連接之后生成一個后綴C 的文件。A、”.c”B、“.obj"C、“。exe”D、“。bas”2.以下選項中不正確的整型常量_C .A、12L B、-10C、1,900D、123U3.A、3%5表達C 的值是0.B、3/5.0C、3/5D、3〈54.表達式?。▁0||y>0)等價于 D 。A、!x>0||!y〉0 B、!(x>0)||?。▂>0) C、!x〉0&&!y>0 D、!(x&&!(y>0)5。 若變量已正確定義并賦值,表達D 不符合C語言語法。A、4&&3 B+a C、a=b=5 D、int(3.14) 若變量已正確定,執(zhí)行語句scanf(”%d%d%d”,&k1,&k2,&k3);時B 是正確的輸入A、2030,40 B、203040 C、20,3040 D、20,30,40執(zhí)行語句printf(” D ”, 2);將得到出錯信息A、%d B%o C、%x D、%f設變量定義為“ints[]=”hello\nworld\n”;”,則數組s中有 B 個元素A、12 B13 C、14 D、159。 設變量定義為“inta[2]={1,3},*p=&a[0]+1;”,則*p的值B 。A、2 、3 C4 D、&a[0]+1若變量已正確定義并賦值,表達式-k++等價于 A 。A、—(k++) B、(-k)++ C-(k+1) D、-(++k)在C語言程序,在函數內部定義的變量稱D A、全局變量B、全程變量 C、外部變量 D、內部變量12。 若x是整型變量,表達式(x=100/4.0)的值D A、2。5 B、2.0 C、3 D、213. 對于以下的變量定義,表達A 是正確的structnode{chars[10];intk;}p[4];Ap—k=2 Bs=“abc” Cp[0]->k=2Dp->s=‘a'14. 下列運算符中,優(yōu)先級從高到低依次D 。A、&&,!,|| B、||,&&,! C、&&,||,!D、!,&&,||15. 下列程序段的輸出結果B 。int *p, *q, k=1,j=10;p=&j;q=&k;p=q;(*p)++;printf("%d",*q);A、1 B、2 C、10 A)typedefv1int;B)typedefv2=int;C)typedefv1intv3;D)typedefv4:int;C)A)‘\t’B)‘\17’C)“n"D)‘\xaa'18。以下程序的輸出結果是(C)main(){inti,a[10];for(i=9;i〉=0;i--)a[i]=10-i;printf(“%d%d%d",a[2],a[5],a[8]);}A)258B)741C)852D)36919.以下程序的輸出結果是(B)main(){charst[20]=“hello\0\t\\\”;printf(%d%d\n”,strlen(st),sizeof(st));}A)99B)520C)1320D)202020。以下程序的輸出結果是(D)main(){inta,b;for(a=1,b=1;a〈=100;a++){if(b>=10)break;if(b%3==1){b+=3;continue;}

(C)

D、11}printf(“%d\n",a);}A)101B)6C)5D)4以下程序的輸出結果是unionmyun{struct{intx,y,z;}intk;}a;main(){a。u。x=4;a.u.y=5;a。u.z=6;a。k=0;printf(%d\n”,a.u.x);}A)4B)5C)6D)0以下程序段的輸出結果是(A)chars[]=”\\141\141abc\t”;printf(”%d\n”,strlen(s));A)9B)12C)13D)1423。以下程序的輸出結果是(B)main(){charch[3][5]={"AAAA”,”BBB",”CC”};printf(”\"%s\”\n",ch[1]);}"AAAA”B)"BBB”C)”BBBCC"D)24。不合法的main(C)A)main(inta,char*c[])B)main(intarc,char**arv)C)main(intargc,char*argv)D)main(intargv,char*argc[])有以下程序main(){char*s[]={”one",”two”,”three"},*p;p=s[1];printf(”%c,%s\n",*(p+1),s[0]);}執(zhí)行后輸出結果是(C)n,twoB)t,oneC)w,oneD)o,two設有如下說明typedef{intn;charc;doublex;}STD;則以下選項中,能正確定義結構體數組并賦初值的語句是(A)A)STDtt[2]={{1,’A',62},{2,’B',75}};B)STDtt[2]={1,”A",62},2,"B",75};C)structtt[2]={{1,'A’},{2,’B'}};D)structtt[2]={{1,”A",62.5},{2,”B",75。0}};若變量c為char類型,則能正確判斷出c為小寫字母的表達式是( D )A)'a’〈=c<=’z' B)(c>=’a’)||(c<=’z’)C)('a'<=c)and(’z'〉=c) D)(c>='a’)&&(c<=’z’)二、填空題1。設ch是字符型變量,判斷ch為英文字母的表達式是:(ch>=’A’&&ch,=’Z’)||(ch>='a'&&ch〈=’z’) 。2。 計算下列分段函數的if語句是_if(x>0)y=1;elseif(x=0)y=0;elsey=-1; 1 x>0y= 0 x=0-1 x<0表達式??!5的值是 1 。下列程序段的輸出結果12 。printf("%xn”,(0x19<1)&下列程序段的輸出結果k=4s=6 intk,s;for(k=0,s=0;k〈10;k++)if(s>k)break;elses+=k;printf("k=%ds=%d”,k,s);6。 下列程序段的輸出結果15 。#defineMIN(x,y) (x)<(y)?(x):(y)printf(”%d”,10*MIN(10,15));7。 下列程序在運行時可能會出,原因是 指針變量s未賦初值 。#voidmain(){ char*s;gets(s);puts(s);}8。 下列程序段的輸出6 0 #includeintf(intm){ staticintints=0;for(;k<=m;k++)s++;returns;}voidmain(){ ints1,s2;s1=f(5);s2=f(3);printf(”%d%d\n”,s1,s2);}下列程序段的輸出結果fgh 。char *st[]={"abcd","efgh","ijkl",”mnop"};printf("%s",*(st+1)+1);用typedef10ARR。typedef int ARR[10];11.以下程序調用findmaxfindmax(int*a,intn){int*p,*s;for(p=a,s=a;p-aif( *p〉*s )return(*s);}main(){intx[5]={12,21,13,6,18};printf(”%d\n",findmax(x,5));}三、程序(段)填空題1.設變量xy,z序段A和程序段B有相同的功能。Ax=x+y;y=x-y;x=x-y;z=x+y;z=x x=y ;y=z;z=x+y;z=x+y;f1,然后在函數f2f1f2char*f1(chars[],chart[]){intk;for(k=0;t[k]!=’’;k++)s[k]=t[k];s[k]='’;returns;}專升本C語言歷年考試題及答案C語言描述下列命題(8324分1.。yint3,5整除的表達式.2。把下列數學表達式轉換為C語言表達式.1R1R21(wL)23。表示CH不是小寫英文字母的表達式。4。條件10〈|a—b|<20的C語言表達式。5。x,y和z均為int型,x和y中僅有一個小于z。6。定義一個數組a[10],其數組元素為指向float的指針.7。定義一個交通信號燈(Transportation_light)的枚舉類型及其變量light。其中列舉的常量有紅,黃,綠(red,yellow,green)三色控制燈。8.f1()intNS圖或流程圖(1小題6分,6分)1。有一分數序列:2 35813,,,,...1 235 8試求前10項之和。三、程序閱讀題(共4小題,每小題5分,計20分)1。#include〈stdio.h〉voidmain(){intx,y;for(x=1;x〈{for(y=1;y〈3;y++)print(x*;print("\n;}}程序運行后的輸出結果為:2。#include<stdio。h>inta[]={0,1,2,3,4,5,6,7,8,9};intf(intn){if(n==1)returnelseretur((*(n-1)+a[n])(n+1;}voidmain(){intn=6;printf("(%d)=%d”,n,f(n;}程序運行后的輸出結果為:3。#include<stdio.h〉structtype{intnum;intage;floatwage;;voidmain(){structtypeteac。num=105;teac。age=28;teac。wage=342.5;pr(teac);}voidpr(structtypeparm){printf(”%d,%d,%6.2f\n”,parm.num,parm。age,parm。wage);}程序運行后的輸出結果為:4.#include〈stdio。h>charprn_str(char*str,intm,intn){inti;for(i=1;i〈=m—n;i++)printf(”;for(i=1;i〈=n;i++)printf("\n;}voidmain(){charprn_st(p,6,4;}程序運行后的輸出結果為:四、程序填空(共3小題,每小題6分,計18分)1.#include<st

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論