韓山專插本C語言真題卷_第1頁
韓山專插本C語言真題卷_第2頁
韓山專插本C語言真題卷_第3頁
韓山專插本C語言真題卷_第4頁
韓山專插本C語言真題卷_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

韓山專插本C語言真題卷韓山專插本C語言真題卷韓山專插本C語言真題卷韓山專插本C語言真題卷編制僅供參考審核批準生效日期地址:電話:傳真:郵編:韓山師范學院2011年專升本插班生考試試題教育技術學專業(yè)C語言程序設計試卷(A卷)題號一二三四五六七八九十總分評卷人得分一、填空題(每空1分,共10分)1.C程序的基本單位是________。2.C語言源程序文件的后綴是________。3.標識符的第一個字符必須是_______或________。4.表達式10%3的結果是_________。5.當打開的文件被成功關閉后,函數fclose()返回。6.在每個C語句和數據定義的最后必須有一個____________。7.若有定義:doubleA[3][5];則A數組中行下標的下限為_____________,列下標的上限為_____________。8.若x=2,y=3,則x|y<<2的結果是___________。二、單項選擇題(每小題1.5分,共30分)題號12345678910答案題號11121314151617181920答案1.算法是指為解決某個特定問題而采取的正確且有限的步驟,下面不屬于算法的5個特性的是()。A.高效性B.有窮性C.有零個輸入或多個輸入D.確定性2.C語言程序的三種基本結構是()。A.順序結構、選擇結構、循環(huán)結構B.遞歸結構、循環(huán)結構、轉移結構C.嵌套結構、遞歸結構、順序結構D.循環(huán)結構、轉移結構、順序結構3.有下面的程序段chara[3],b[]=“China”;a=b;printf(“%s”,a);A.運行后將輸出ChinaB.運行后將輸出ChC.運行后將輸出ChiD.編譯出錯4.若變量均已正確定義并賦值,以下合法的C語言賦值語句是()。A.x=n%2.5B.x=y==5C.x+n=iD.x=5=4+15.若執(zhí)行以下程序時從鍵盤上輸入9,則輸出結果是()。A.11B.10C.9D.8main(){intn;scanf("%d",&n);if(n++<10)printf("%d\n",n);elseprintf("%d\n",n--);}6.設x、y、t均為int型變量,則執(zhí)行語句:x=y=3;t=++x||++y;后,y的值為()。A.不定值B.4C.3D.17.有以下程序段intk=0;while(k=1)k++;while循環(huán)執(zhí)行的次數是()。A.無限次B.有語法錯,不能執(zhí)行C.一次也不執(zhí)行D.執(zhí)行1次8.若變量c為char類型,能正確判斷出c為小寫字母的表達式是()。A.‘a'<=c<=‘z'B.(c>=‘a')||(c<=‘z')C.(‘a'<=c)and(‘z'>=c)D.(c>=‘a')&&(c<=‘z')9.以下所列的各函數首部中,正確的是()。A.voidplay(var:Integer,varb:Integer)B.voidplay(a,b)C.voidplay(inta,intb)D.Subplay(aasinteger,basinteger)10.以下程序的輸出結果是()。A.0B.29C.31D.無定值fun(intx,inty,intz){z=x*x+y*y;}main(){inta=31;fun(5,2,a);printf("%d",a);}11.下列程序的輸出結果是()。A.非法B.a[4]的地址C.5D.3main(){chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;printf("%d",*--p);}12.當調用函數時,實參是一個數組名,則向函數傳送的是()。A.數組的長度B.數組的首地址C.數組每一個元素的地址D.數組每個元素中的值13.若fp是指向某文件的指針,且已讀到文件末尾,則庫函數feof(fp)的返回值是()。A.EOFB.0C14.以下程序的輸出結果是()。A.1,5,9,B.1,4,7,C.3,5,7,D.3,6,9,main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d,",x[i][2-i]);}15.以下敘述正確的是()。A.在進行宏定義時,可以引用已定義過的宏B.編譯預處理命令必須位于程序的開頭C.宏展開將占用程序運行時間D.從宏被定義的位置起,所有與宏名相同的字符串都將被替換16.在說明一個共用體變量時,系統(tǒng)分配給它的存儲空間是()。A.該共用體中第一個成員所需存儲空間B.該共用體中最后一個成員所需存儲空間C.該共用體中占用最大存儲空間的成員所需存儲空間D.該共用體中所有成員所需存儲空間的總和17.下列程序段的輸出結果()。intb=10;printf("%d",~b);A.02B.-20C.-21D.-1118.在C語言中,對文件進行操作的一般步驟是()。A.打開文件——操作文件——關閉文件B.操作文件——修改文件——關閉文件C.讀寫文件——打開文件——關閉文件D.讀文件——寫文件——關閉文件19.若執(zhí)行fopen()函數發(fā)生錯誤,則函數的返回值是()。A.地址值B.NULLC.1D.EOF20.以下程序運行后結果是()。#defineA3#defineB(a)((A+1)*a)main(){intx;x=3*(A+B(7));printf("%d\n",x);}A.93B.31C.12D.不確定三、閱讀程序,將運行結果寫到各題右側的空白處(每小題4分,共20分)1.main(){inta=0;a+=(a=8);printf("%d\n",a);}2.main(){inta[3][3]={{1,2},{3,4},{5,6}};inti,j,s=0;for(i=1;i<3;i++)for(j=0;j<=1;j++)s+=a[i][j];printf("%d",s);}3.main(){charstring1[64]="abc\t";char*string2="def\t";charstring3[]="123\n";strcat(string1,string2);strcat(string1,string3);printf("%d\n",strlen(string1));}4.structdate{inta;chars[5];}arg={27,"abcd"};main(){ arg.a-=5; strcpy(arg.s,"ABCD"); printf("%d,%s",arg.a,arg.s);}5.main(){charfood[]="Bread";char*p;p=food+strlen(food);while(--p>=food)puts(p);}四、閱讀程序或程序段,填空(每小題4分,共20分)1.以下程序中,select函數的功能是:在N行M列的二維數組中,選出一個最大值作為函數值返回,并通過形參傳回此最大值所在的行下標,請?zhí)羁铡?defineN3#defineM3select(inta[N][M],int*n){inti,j,row=1,colum=1;for(i=0;i<N;i++)for(j=0;j<M;j++)if(a[i][j]>a[row][colum]){row=i;colum=j;}*n=;return;}main(){inta[N][M]={9,11,23,6,1,15,9,17,20},max,n;max=select(a,&n);printf("max=%d,line=%d\n",max,n);}2.以下程序的功能是:輸出a,b,c三個變量中的最小值,請?zhí)羁铡?include<stdio.h>voidmain(){inta,b,c,t1,t2;scanf("%d%d%d",&a,&b,&c);t1=a<b;t2=c<t1?;printf("%d\n",t2);}3.下面程序采用函數遞歸調用的方法計算sum=1+2+3+4+...+n,請?zhí)羁铡?include"stdio.h"main(){intsum(int);inti;scanf("%d",&i);if(i<=0)printf("Inputerror!");elseprintf("sum=%d",sum(i));}intsum(intn){if(n==1)return;elsereturn;}4.編寫一個程序判定一個字符在一個字符串中出現的次數,如果字符不出現,則返回0,請?zhí)羁铡?include<stdio.h>intchar_count(char*s,charletter){intcount=0;while(*s){if()count++;}return;}main(){charc,string[50],*str=string;printf("Inputstring:");gets(str);printf("Inputachar:");scanf("%c",&c);printf("Thenumberis:%d",char_count(str,c));}5.編寫一個程序將用戶輸入的由數字字符和非數字字符組成的字符串中的數字提取出來,請?zhí)羁?。main(){charstr[20],*p;p=str;gets(str);for(;;p++){if()printf("%c",*p);}}五、編程題(每小題10分,共20分)1.編一程序,輸入一個百分制成績,輸出用‘A’,‘B’,‘C’,‘D’,‘E’表示的等級。設:90分以上的為‘A’,80~89分為‘B’,70~79分為‘C’,60~69分為‘D’,60分以下為‘E’。若輸入的成績大于100分或小于0分,輸出“輸入錯誤!”的提示信息。(要求用switch語句編程)。2.在歌星大獎賽中,有10個評委為參賽的選手打分,分數為1到100分,選手最后得分為去掉一個最高分和一個最低分后其余8個分數的平均值,請編寫程序實現。韓山師范學院2011年本科插班生考試樣卷教育技術學專業(yè)C語言程序設計題號一二三四五六七八九十總分評卷人得分一、填空題(每空1分,共10分)C語言的數據類型中,構造類型包括:數組、和。在C程序中,指針變量能夠賦值或值。C目標程序經后生成擴展名為exe的可執(zhí)行程序文件。設有定義語句staticchars[5」;則s[4]的值是。設x為int型變量。與邏輯表達式!x等價的關系表達式是。若一全局變量只允許本程序文件中的函數使用,則該變量需要使用的存儲類別是。磁盤文件按文件讀寫方式分類可以為順序存取文件和。設有下列結構體變量xx的定義,則表達式sizeof(xx)的值是_________。struct{longnum;charname[20];union{floaty;shortz;}yz;}xx;二、單項選擇題(每小題1.5分,共30分)題號12345678910答案題號11121314151617181920答案設有定義intx=8,y,z;則執(zhí)行y=z=x++,x=y==z;語句后,變量x值是()A、0B、1C、8D、9有以下程序main(){inti=1,j=1,k=2;if((j++‖k++)&&i++)printf("%d,%d,%d\n",i,j,k);}執(zhí)行后輸出結果是()A、1,1,2B、2,2,1C、2,2,2D、2,2,3已知i、j、k為int型變量,若從鍵盤輸入:1,2,3<回車>,使i的值為1、j的值為2、k的值為3,以下選項中正確的輸入語句是()A、 scanf(“%2d%2d%2d”,&i,&j,&k);B、 scanf(“%d%d%d”,&i,&j,&k);C、 scanf(“%d,%d,%d”,&i,&j,&k);D、 scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);有以下程序main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);elseif((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}執(zhí)行后輸出結果是()A、2B、3C、4D、編譯時有錯,無結果以下程序段()x=1;do{x=x*x;}while(!x);A、 是死循環(huán) B、 循環(huán)執(zhí)行二次C、 循環(huán)執(zhí)行一次 D、 有語法錯誤以下不能正確定義二維數組的選項是()A、 inta[2][2]={{1},{2}}; B、 inta[][2]={1,2,3,4};C、 inta[2][2]={{1},2,3}; D、 inta[2][]={{1,2},{3,4}};有以下程序main(){intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0;for(i=0;i<4;i++)s+=aa[i][1];printf(“%d\n”,s);}程序運行后的輸出結果是()A、11B、19C、13D、20以下程序的輸出結果是()main(){charch[3][5]={"AAAA","BBB","CC"};printf("\"%s\"\n",ch[1]);}A、"AAAA"B、"BBB"C、"BBBCC"D、"CC"有以下程序#definef(x)x*xmain(){inti;i=f(4+4)/f(2+2);printf(“%d\n”,i);}執(zhí)行后輸出結果是()A、28B、22C、16決定C語言中函數返回值類型的是()。A、return語句中的表達式類型B、調用該函數的主調函數類型C、調用函數時臨時指定的類型D、定義函數時在函數首部中所指定的類型(若缺省,則隱含為int型)。系統(tǒng)對預處理命令(如宏替換、文件包含、條件編譯)的處理時機是()。A、編譯源程序 B、編譯源程序之前C、連接目標文件時 D、運行程序時在位運算中,操作數每左移一位,其結果相當于()A、操作數乘以2C、操作數除以2B、操作數除以4D、操作數乘以4下述描述中不正確的是()。A、字符型數組中可以存放字符串B、可以對字符型數組進行整體輸入、輸出C、可以對整型數組進行整體進行輸入、輸出D、不能在賦值語句中通過賦值運算符“=”對字符型數組進行整體賦值若有以下定義inta[2][3],則對a數組第i行第j列元素的正確引用是()A、 *(*(a+i)+j) B、 (a+i)[j]C、 *(a+i+j) D、 *(a+i)+j有以下程序voidfun(char*a,char*b){a=b;(*a)++;}main(){charc1='A',c2='a',*p1,*p2;p1=&c1;p2=&c2;fun(p1,p2);printf("%c%c\n",c1,c2);}程序運行后的輸出結果是()A、 AbB、 aaC、 AaD、 Bb已定義以下函數Fun(char*p2,char*p1){while((*p2=*p1)!='\0'){p1++;p2++;}}函數Fun的功能是()A、將p1所指字符串復制到p2所指內存空間B、將p1所指字符串的地址賦給指針p2C、對p1和p2兩個指針所指字符串進行比較D、檢查p1和p2兩個指針所指字符串中是否有'\0'設有以下結構體類型:structst{charname[8];intnum;floats[4];}student[50];并且結構體數組student中的元素都已有值,若要將這些元素寫到硬盤文件fp中,以下不正確的形式是()fwrite(student,sizeof(structst),50,fp);fwrite(student,50*sizeof(structst),1,fp);fwrite(student,25*sizeof(structst),25,fp);for(i=0;i<50;i++)fwrite(student+i,sizeof(structst),1,fp);若有說明語句chara[]="Itismine";char*p="Itismine";則以下不正確的敘述是()a+1表示的是字符t的地址p指向另外的字符串時,字符串的長度不受限制p變量中存放的地址值可以改變a中只能存放10個字符當調用函數時,實參是一個數組名,則向函數傳送的是()數組的長度數組的首地址數組每一個元素的地址數組每一個元素中的值設有變量說明inta=3,b=6;charc;若執(zhí)行賦值語句c=(a^b)<<2;則c的二進制值是()。A、00011100B、00000111C、00000001D、00010100三、閱讀程序,將運行結果寫到各題右側的空白處(每小題4分,共20分)1.#include<stdio.h>main(){charstr[]="1234567";inti;for(i=0;i<7;i+=3)printf("%s\n",str+i);}2.#include<stdio.h>main(){inti;for(i=0;i<3;i++)switch(i){case0:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}3.#include<stdio.h>main(){inti;for(i=1;i<6;i++){if(i%2){printf("#");continue;}printf("*");}printf("\n");}4.#include<stdio.h>intb=1;func(intp){staticintd=5;d+=p;printf("%d,",d);return(d);}main(){inta=3;printf("%d\n",func(a+func(b)));}5.#include<stdio.h>structstu{intnum;charname[10];intage;};voidpy(structstu*p){printf("%s\n",(*p).name);}main(){structstustudent[3]={{1001,"Sun",25},{1002,"Ling",23},{1003,"Shen",22}};py(student+2);}四、閱讀程序或程序段,填空(每小題4分,共20分)1.下面程序的功能是調用fun函數以刪除字符串中指定的字符,請?zhí)羁?。voidfun(chars[],intc){inti,j;for(i=0,j=0;s[i]!='\0';i++) if()s[j]='\0';}main(){charstr[]="abcdefgAbcd",ch;scanf("%c",&ch);fun(str,ch);printf("%s\n",str);}2.下面程序是按學生姓名查詢其排名和平均成績,查詢可連續(xù)進行直到鍵入0時結束,請?zhí)羁铡?include<string.h>#defineNUM4structstudent{intrank;char*name;floatscore;};stu[]={3,”Tom”,89.3,4,”Mary”,78.2,1,”Jack”,95.1,2,”Jim”,90.6};main(){charstr[10];inti;do{printf("Enteraname:");scanf("%s",str);for(i=0;i<NUM;i++)if(){printf("%s,%d,%f\n",stu[i].name,stu[i].rank,stu[i].score);break;}if(i>=NUM)printf("Notfound\n");}while(strcmp(str,”0”}3.下面程序是用“順序查找法”查找數組中的元素,請?zhí)羁铡ain(){inta[8]={25,57,48,37,12,92,86,33};inti,x;scanf("%d",&x);for(i=0;i<8;i++) if() {printf("Found!Theindexis:%d\n",i);break;}if()printf(“Can’tfound!");}4.下面程序由鍵盤輸入一些字符,逐個把它們送到磁盤文件中,直到輸入一個“!”為止,請?zhí)羁铡?include<stdio.h>main(){FILE*fp;charch,fname[10];printf("Inputnameoffile:\n");gets(fname);if((fp=fopen(fname,"w"))==NULL) {printf("cannotopen\n");exit(0);}printf("Enterdata:\n");while()fputc();fclose(fp);5.下面函數fun的功能是:將在字符串s中下標為奇數位置上的字符,緊隨其后重復出現一次,放在一個新串t中,例如:當s中的字符串為:"ABCDEF"時,則t中的字符串應為:"BBDDFF"。#include<string.h>voidfun(char*s,char*t){inti,j; for(i=0;i<=strlen(s);i++){ ; ;}}main(){chars[100],t[100];scanf("%s",s);fun(s,t);printf("Theresultis:%s\n",t);}五、編程題(每小題10分,共20分)1.編一個程序,將輸入的一個字符串按反序存放,要求在主函數中輸入字符串并輸出反序后的字符串,在被調用函數中完成反序存放。例如:輸入字符串“abcdefg”,輸出“gfedcba”。2.有一個班5位學生,各學4門課程,查找出有一門以上課程不及格的學生,打印出其全部課程的成績。韓山師范學院2012年專升本插班生考試教育技術學專業(yè)C語言程序設計試卷(A卷)題號一二三四五總分評卷人得分得分評卷人一、填空題(每空1分,共10分)1.每個C程序都必須包括一個________函數。2.C語言源程序編輯完成后,需要經過________、________兩個環(huán)節(jié),才能執(zhí)行。3.若變量a,b已經定義為int類型并賦值為4和5,要求用printf函數以a=4,b=5的形式輸出,請寫出完整的輸出語句。4.表達式10/3的結果是。5.算法的復雜度主要包括時間復雜度和。6.C語言語句的結束符是____________。7.數組intA[10];中有個元素,下標上限為_____________。8.若x=2,y=12,則x&y>>2的結果是___________。得分評卷人二、單項選擇題(每題1.5分,共30分)題號12345678910答案題號11121314151617181920答案1.算法是指為解決某個特定問題而采取的正確且有限的步驟,下面不屬于算法的5個特性的是()。A.高效性B.有窮性C.有零個輸入或多個輸入D.確定性2.以下哪個不是C語言程序的三種基本結構()。A.順序結構B.遞歸結構C.循環(huán)結構D.選擇結構3.有以下程序:main(){intm,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d",m,n,p);}若想從鍵盤上輸入數據,使變量m的值為123,n的值為456,p的值為789,則正確的輸入是()。A.m=123n=456p=789B.m=123n=456p=789C.m=123,n=456,p=789D.1234567894.下面四個選項中,哪個選項是合法變量()。A.4asB.a#3C._3a5.若執(zhí)行以下程序時從鍵盤上輸入9,則輸出結果是()。A.11B.10C.9D.8mainn(){intn;scanf("%d",&n);if(n<10)printf("%d\n",n+1);elseprintf("%d\n",n-1);}6.設x、y、t均為int型變量,則執(zhí)行語句:x=y=3;t=x+y++;后,y的值為()。A.不定值B.4C.3D.17.有以下程序段intk=0;while(k<1)k++;while循環(huán)執(zhí)行的次數是()。A.無限次B.有語法錯,不能執(zhí)行C.一次也不執(zhí)行D.執(zhí)行1次8.若變量c為int類型,能正確判斷出c為數字的表達式是()。A.('0'<=c)and('9'>=c)B.(c>='0')&&(c<='9')C.'0'<=c<='9'D.(c>='0')||(c<='9')9.以下正確的函數聲明形式是()。A.doublefun(intx,inty)B.doublefun(intx;inty)C.doublefun(intx,inty);D.doublefun(intx;inty);10.以下程序的輸出結果是()。A.0B.29C.31Dintfun(intx,inty){intz;z=x*x+y*y;returnz;}main(){inta=31;a=fun(5,2);printf("%d",a);}11.下列程序的輸出結果是()。A.非法B.a[1]的地址C.9D.8main(){chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+1;printf("%d",*p);}12.下列能正確定義一維數組的選項是()。A.inta[5]={0,1,2,3,4,5};B.inta[]={0,1,2,3,4,5};C.chara={'A','B','C'};D.inta[5]="0123";13.有下列程序:#include<stdio.h>voidWriteStr(char*fn,char*str){FILE*fp;fp=fopen(fn,"w");fputs(str,fp);fclose(fp);}main(){WriteStr("t1.dat","start");WriteStr("t1.dat","end");}程序運行后,文件t1.dat中的內容是()。A.startB.endC.startendD.endrt14.以下程序的輸出結果是()。main(){inta[]={1,2,3,4,5,6,7,8,9,0},*p;for(p=a;p<a+10;p++)printf("%d,",*p);}A.1,2,3,4,5,6,7,8,9,0,B.2,3,4,5,6,7,8,9,10,1,C.0,1,2,3,4,5,6,7,8,9,D.1,1,1,1,1,1,1,1,1,1,15.有定義語句:intb;charc[10];,則正確的輸入語句是()。A.scanf("%d%s",&b,&c);B.scanf("%d%s",&b,c);C.scanf("%d%s",b,c);D.scanf("%d%s",b,&c);16.下列程序的功能是:給r輸入數據后計算半徑為r的圓面積s。程序在編譯時出錯。main()/*Beginning*/{intr;floats;scanf("%d",&r);s=π*r*r;printf("s=%f\n",s);}出錯的原因是()。A.注釋語句書寫位置錯誤B.存放圓半徑的變量r不應該定義為整型C.輸出語句中格式描述符非法D.計算圓面積的賦值語句中使用了非法變量17.下列程序段的輸出結果()。intb=10;printf("%d",b<<1);A.01B.20C.21D.1118.在C語言中,對文件進行操作的一般步驟是()。A.操作文件——修改文件——關閉文件B.打開文件——操作文件——關閉文件C.讀文件——寫文件——關閉文件D.讀寫文件——打開文件——關閉文件19.使用fopen()函數打開文件時,向文本文件尾增加數據,文件的使用方式應為()。A.rB.aC.w+D.ab+20.以下程序運行后結果是()。#defineA5main(){intx=0;x=3*(A+7);printf("%d\n",x);}A.36B.0C.21D.不確定得分評卷人三、閱讀程序,將運行結果寫到各題右側的空白處(每題4分,共20分)1.main(){inta=0;a='a';printf("%c",a);}2.#include<string.h>main(){charp[]={'a','b','c','\0'};charq[10]={'a','b','c'};printf("%d,",strlen(q));printf("%d",strlen(p));}3.longfunc(intx){longp;if(x==0||x==1)return(2);p=x*func(x-1);return(p);}main(){printf("%d\n",func(2));}4.structdate{inta;chars[5];}arg={27,"abcd"};main(){arg.a=5;strcpy(arg.s,"AB");printf("%d,%s",arg.a,arg.s);}5.#include<stdio.h>main(){ if(100) printf("Great!\n"); elseif(60) printf("Pass\n"); else printf("Fail\n");}得分評卷人四、閱讀程序或程序段,填空(每題4分,共20分)1.以下程序打印左下三角的九九乘法表,請?zhí)羁铡?include<stdio.h>main(){inti,j;for(i=1;i<10;i++){for(j=1;;j++)printf("%d*%d=%2d",);printf("\n");}}2.以下程序的功能是:輸出a,b,c三個變量中的最大值,請?zhí)羁铡?include<stdio.h>voidmain(){inta,b,c,t1,t2;scanf("%d%d%d",&a,&b,&c);t1=a:b;

t2=c:t1;

printf("%d\n",t2);}3.以下程序中,select函數的功能是:在一維數組中,選出一個最大值作為函數值返回,并通過形參傳回此最大值的下標。請?zhí)羁铡?defineN10select(inta[N],int*n){inti,k=0;for(i=1;i<N;i++)if(a[i]>a[k])k=i;;;}main(){inta[N]={9,11,23,6,1,15,9,17,20},max,n;max=select(a,&n);printf("max=%d,n=%d\n",max,n);}4.以下程序的功能是:輸入a和b兩整數,按由大到小順序輸出,請?zhí)羁铡ain(){int*p1,*p2,*p,a,b;scanf("%d,%d",&a,&b);;;if(a<b){p=p1;p1=p2;p2=p;}printf(“*p1=%d,*p2=%d",*p1,*p2);}5.以下函數的功能是:將from指針所指向的內容復制到to指針所指向空間,請?zhí)羁?。voidcopy_string(char*from,char*to){for(;;from++,to++);*to='\0';}得分評卷人五、編程題(每題10分,共20分)1.編寫程序,把從鍵盤輸入的數字按下列對應關系顯示。輸入數字顯示1One2Two3Three其他Other2.求1+2+3+4+……+n的值,并輸出結果,其中n由用戶輸入。韓山師范學院2013年專升本插班生考試試卷教育技術學專業(yè)C語言程序設計試卷(A卷)題號一二三四五總分評卷人得分得分評卷人一、填空題(每空1分,共10分)1.結構化程序設計方法規(guī)定程序或程序段的結構有三種:、選擇結構和循環(huán)結構。2.在內存中存儲"A"要占用個字節(jié),存儲'A'要占用字節(jié)。3.有語句:charA[]={"Iamastudent"};該字符串的長度是,A[3]=。4.能表述"20<x<30"的C語言表達式是。5.C語言的預處理語句以__________開頭。6.數組名代表數組的。7.C語言中字符串的結束符是。8.定義fp為文件型指針變量的定義方法為_________。得分評卷人二、單項選擇題(每題1.5分,共30分)題號12345678910答案題號11121314151617181920答案1、 下面標識符中,不合法的用戶標識符為________。A.hot_do B.cat1 C._pri D.2ab2、 下列敘述中正確的是________。A.每個C源文件中都必須有一個main()函數B.在C程序中main()函數的位置是固定的C.一個C程序只能由一個源文件組成D.在C程序的函數中不能定義另一個函數3.以下變量x.、y、z均為double類型且已正確賦值,不能正確表示數學式子x/yz的C語言表達式是________。A.x/y*z B.x*(1/(y*z)) C.x/y*1/z D.x/y/z4.printf函數中用到格式符%5s,其中數字5表示輸出的字符串占用5列,如果字符串長度大于5,則輸出按________方式。A.從左起輸出該字符串,右補空格B.按原字符長從左向右全部輸出C.右對齊輸出該字串,左補空格D.輸出錯誤信息5、以下程序段的輸出結果是________。charstr[15]=”hello!”;printf(“%d\n”,strlen(str));A.15B.14C.7D.66.巳知字母A的ASCII碼是65,以下程序的執(zhí)行結果是________。#include<stdio.h>voidmain(){charc1='A',C2='Y';printf("%d,%d\n",c1,c2);}A.A,Y B.65,65 C.65,90 D.65,897.以下選項中,值為1的表達式________。A.1-'0' B.1-'\0' C.'1'-0 D.'\0'-'0'8.以下合法的if語句(設intx,a,b,c;)是________。A.if(a=b)x++; B.if(a=<b)x++;C.if(a<>b)x++; D.if(a=>b)x++;9.若k為整型變量,則以下循環(huán)體執(zhí)行的次數為__________。for(k=2;k<0;k--)printf("%d",k);A.0 B.1 C.2 D.無限次10.C語言中while和do-while循環(huán)的主要區(qū)別是__________。A. do-while的循環(huán)體至少無條件執(zhí)行一次B. while的循環(huán)控制條件比do-while的循環(huán)控制條件嚴格C. do-while允許從外部轉到循環(huán)體內D. do-while的循環(huán)體不能是復合語句11.若有說明,intb[3][4];則對數組元素的正確引用是_________。A.b[3][4] B.b[3][0] C.b(1)(2) D.b[3-3][2-0]12.以下正確的定義語句是_________。A. inta[1][4]={1,2,3,4,5};B. floatx[3][]={{1},{2},{3}};C. longb[2][3]={{1},{1,2},{1,2,3}};D. doubley[][3]={0};13.以下所列的各函數首部中,正確的是__________。A.voidplay(vara:Integer,varb:Integer) B.voidplay(inta,b)C.voidplay(inta,intb)D.Subplay(aasinteger,basinteger)14.以下程序的運行結果是________。#definef(x)x*xvoidmain(){inti;i=f(2+1);printf("%d\n",i);}A.4 B.9 C.6 D.15.不能把字符串"Hello!"賦給數組b的語句是。A.charb[10]={'H','e','l','l','o','!'}; B.charb[10];b="Hello!";C.charb[10];strcpy(b,"Hello!"); D.charb[10]="Hello!";16.若有說明語句"inta[10],*p=a;",對數組元素的正確引用是。A.*(a+10) B.*(p-1) C.p[2] D.p+217.在C語言中,當定義一個共用體類型,并用其定義某變量后,系統(tǒng)分配給該變量的內存大小是________。A.各成員所需要內存空間的總和B.第一個成員所占內存空間C.成員中所有成員空間最大者D.成員中所有成員空間最小者18.若inta=4,b;b=a^a;則b=。A.1 B.4 C.64 D.19.若fp是指向某文件的指針,且已讀到此文件末尾,則庫函數feof(fp)的返回值是A.EO B.0 C.非零值 D.20.若要用fopen函數打開一個新的二進制文件,該文件要既能讀也能寫,則打開文件的方式字符串應是________。A."ab+" B."wb+" C."rb" D."ab"得分評卷人三、閱讀程序,將運行結果寫到各題右側的空白處(每題4分,共20分)1.#include<stdio.h>voidmain(){inti,sum;i=1;sum=0;do{sum=sum+i;i=i+1;}while(i<=10);printf(“sum=%d\n”,sum);printf(“i=%d\n”,i);}2.#include<stdio.h>voidmain(){inta,b,c;a=10;b=20;c=max(a,b);printf("max=%d\n",c);}intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}3.#include<stdio.h>voidmain(){inta[8]={4,8,12,16,20,24,28,32};int*p=a;do{printf(“%d\t”,*p);p++;}while(p<a+8);}4.#include<stdio.h>voidmain(){

chars[]="abcdef";s[3]='\0';printf("%s\n",s);}5.#include<stdio.h>voidmain(){ enumtype{a,b=-5,c,d=6,f,g=9}; printf("%d,%d,%d\n",a,c,f);}得分評卷人四、閱讀程序或程序段,填空(每題4分,共20分)1.已知能被4整除而不能被100整除的或者能被400整除的年份是潤年,則判斷某一年是否是潤年的程序如下:#include<stdio.h>voidmain(){intyear,leap;scanf(“%d”,&year);if(_________________________________)leap=1;elseleap=0;if(_____________)printf("是潤年.\n");elseprintf("不是潤年.\n");}2.韓信點兵。韓信有一隊兵,他想知道有多少人,便讓士兵排隊報數:按從1至5報數,最末一個士兵報的數為1;按從1至6報數,最末一個士兵報的數為5;按從1至7報數,最末一個士兵報的數為4;最后再按從1至11報數,最末一個士兵報的數為10。下面程序的主要功能是計算韓信至少有多少兵。#include<stdio.h>voidmain(){ intx=1; intfind=0; for(x=1;____;x++) { if(x%5==1&&x%6==5&&x%7==4&&x%11==10) { printf("x=%d\n",x); ____________; } } }3.求矩陣主次對角線之和。#include<stdio.h>voidmain(){inta[3][3]={9,7,5,1,2,4,6,8,0};inti,j,s1=0,s2=0;for(i=0;i<3;i++)for(j=0;j<3;j++){if(____)s1=s1+a[i][j];if(____)s2=s2+a[i][j];}printf(“%d\n%d\n”,s1,s2);}4.輸入兩個數,按從小到大的順序輸出#include<stdio.h>voidswap(int*p1,int*p2){inttemp;temp=*p1;*p1=*p2;*p2=;}voidmain(){inta,b;scanf(“%d,%d”,&a,&b);if(a>b)swap();printf(“%d,%d\n”,a,b);}5.以下程序是建立一個名為myfile的文件,并把從鍵盤輸入的字符存入該文件,當鍵盤上輸入結束時關閉該文件。#include<stdio.h>voidmain(){FILE*fp;charc;fp=;do{c=getchar();fputc(c,fp);}while(c!=EOF);;}得分評卷人五、編程題(每題10分,共20分)1.從鍵盤輸入的10個整數中,找出第一個能被7整除的數。若找到,打印此數后退出循環(huán);若未找到,打印“notexist”。2.從鍵盤上輸入10個數存入一維數組中,求這10數中的最大值與最小值并輸出。韓山師范學院2014年本科插班生考試試卷教育技術學專業(yè)C語言程序設計試卷(A卷)題號一二三四五總分評卷人得分得分評卷人一、填空題(每空1分,共10分)1.C語言的標識符必須以________或________開頭。2.C語言程序的執(zhí)行是從________函數開始。3.fgets函數的作用是從指定文件讀入一個________。4.表達式13%10的結果是________。5.若有定義:inta[3][5];則數組a中共有________個元素。行下標的下界是________,行下標的上界是________。6.若x=3,y=2,則x|y<<2的結果是___________。7.數據的輸入輸出是針對________而言的。得分評卷人二、單項選擇題(每小題1.5分,共30分)題號12345678910答案題號11121314151617181920答案1.一個C程序的執(zhí)行是從__________A.main()函數開始,直到main()函數結束B.第一個函數開始,直到最后一個函數結束C.第一個語句開始,直到最后一個語句結束D.main()函數開始,到最后一個函數結束2.一個C程序是由__________。A.一個主程序和若干子程序組成B.一個或多個函數組成C.若干過程組成D.若干子程序組成3.下面不正確的字符串常量是_________。A.'abc' B."12'12" C."0"D.""4.以下結果為整數的表達式(設有inti;charc;floatf;)_________A.i+f B.i*c C.c+f D.i+c+f5.設charch;以下正確的賦值語句是_________A.ch='123’; B.ch='\xff’C.ch='\08’; D.ch=”\”6.設intm=1,n=2,則m=n的值是_________A.0 B.1 7.如下程序的執(zhí)行結果是_________main(){ intn=1,m=2; printf("%d%d",++n,m++);}A.21 B.12 C.22 D.118.設inta=1,b=2,c=3;則表達式a==c||a+b>=c的值是__________A.FB.0C9.C語言對嵌套if語句的規(guī)定是:else總是與__________配對。

A.其之前最近的ifB.第一個if

C.縮進位置相同的ifD.其之前最近且不帶else的if10.下面表達式中__________的值等于0。(設:inta=1;b='0';)A.!a==!bB.!a||bC.!(a==b)D.a&&!b11.執(zhí)行下列程序,輸入為1的輸出結果是____ #include<stdio.h> main() { intk; scanf(“%d”,&k); switch(k) { case1:printf(“%d\n”,k++); case2:printf(“%d\n”,k++); case3:printf(“%d\n”,k++); case4:printf(“%d\n”,k++);break; default:printf(“FULL!\n”); }}A.1 B.2 C.2 D.1 3 2 4 3 5 412.以下正確的函數聲明形式是__________A.doublefun(intx,inty)B.doublefun(intx;inty)C.doublefun(intx,inty);D.doublefun(intx;inty);13.以下程序段__________ x=-1; do{x=x*x;}While(!x);A.是死循環(huán) B.循環(huán)執(zhí)行二次C.循環(huán)執(zhí)行一次D.語法錯誤14.算法是指為解決某個特定問題而采取的正確且有限的步驟,下面不屬于算法的5個特性的是()。A.高效性B.有窮性C.有零個輸入或多個輸入D.確定性15.C語言程序的三種基本結構是()。A.順序結構、選擇結構、循環(huán)結構B.遞歸結構、循環(huán)結構、轉移結構C.嵌套結構、遞歸結構、順序結構D.循環(huán)結構、轉移結構、順序結構16.設有以下結構類型說明和變量定義,則變量a在內存所占字節(jié)數是__________structstud

{charnum[6];

doubleave;

}a;A.14B.18 17.設i和x都是整型,則以下for循環(huán)______for(i=1,x=876;i<=6&&x!=876;i++)scanf("%d",&x);A.最多執(zhí)行6次B.最多執(zhí)行5次C.是無限循環(huán)D.循環(huán)體一次也不執(zhí)行18.若有說明:inta[3][4];則對數組元素的正確引用是__________A.a[2][4]B.a[1,3]C.a[1+1][0]D.a(2)(1)19.若有以下說明,請選出哪個是對a數組元素地址的正確引用________inta[5],*p=a;A.&a[5]B.p+2C20.以下不正確的說法為_________A.在不同函數中可以使用相同名字的變量B.形式參數是局部變量C.在函數內定義的變量只在本函數范圍內有效D.在函數內的復合語句中定義的變量在本函數范圍內有效得分評卷人三、閱讀程序,將運行結果寫到各題右側的空白處(每小題4分,共20分)1.main(){inta=0;a+=(a=8);printf("%d\n",a);}2.main(){inta[3]={1,2,3};inti,s=0;for(i=1;i<3;i++)s+=a[i];printf("%d",s);}3.main(){charstring1[64]="abc";char*string2="def";charstring3[]="123";strcat(string1,string2);strcat(string1,string3);printf("%d\n",strlen(string1));}4.structdate{inta;chars[5];}arg={27,"abcd"};main(){ arg.a=5; strcpy(arg.s,"ABCD"); printf("%d,%s",arg.a,arg.s);}5.main(){charfood[]="Bread";char*p;p=food;puts(p);}得分評卷人四、閱讀程序或程序段,填空(每小題4分,共20分)1.以下程序的功能是:在N行M列的二維數組中,找出最小值,以及最小值所在的行下標,請?zhí)羁铡?defineN3#defineM3main(){inta[N][M]={21,11,23,6,1,15,9,17,20};inti,j,row=0,min=a[0][0];for(i=0;i<N;i++)for(j=0;j<M;j++)if(a[i][j]<min){①②}printf("min=%d,line=%d\n",min,row);}2.以下程序的功能是:輸出a,b,c三個變量中的最大值,請?zhí)羁铡?include<stdio.h>voidmain(){inta,b,c,t1,t2;scanf("%d%d%d",&a,&b,&c);t1=a<b?①;t2=c<t1?②;printf("%d\n",t2);}3.下面程序用于計算sum=1+2+3+4+...+n,請?zhí)羁铡?include"stdio.h"main(){intn,i,s=0;scanf("%d",&n);for(i=1;①;i++)②;printf("sum=%d",s);}4.以下程序完成對一維數組Array進行冒泡排序(從大到?。?zhí)羁?。main(){intArray[11];intj,k,temp;for(j=1;j<11;j++) scanf(“%d”,&Array[i]);for(j=1;j<10;j++)for(k=1;①;

k++)if(②){temp=Array[k];array[k]=Array[k+1];array[k+1]=temp;}}5.某同學把郵箱密碼忘記了,他只記得密碼是一個5位數,67□□8,其中百位和十位上的數字不記得了,他喜歡用39和14的倍數做密碼。請幫他設計一個算法破解該密碼。main(){longm;for(m=67008;m<=67998;①){if(②)printf("%ld",m);}}得分評卷人五、編程題(每小題10分,共20分)1.有一個函數:-1(x<0)y=0(x=0)1(x>0)編一程序,輸入一個x值,輸出y值。2.輸出所有的水仙花數,所謂“水仙花數”是指一個3位數,其各位數字立方和等于該數本身。例如:153=13+53+33。 韓山師范學院2015年本科插班生考試試卷教育技術學專業(yè)C語言程序設計試卷(A卷)題號一二三四五六總分評卷人得分得分評卷人一、填空題(每空1分,共10分)1.定義一個宏EOF,使其與-1等價,定義為(#defineEOF-1)。2.在一個函數內部直接或間接調用該函數本身,稱為函數的(遞歸)

調用。3.C語言變量按其作用域分為局部變量和(全局變量)。4.判斷一個字符變量c是數字字符的表達式是((c>=’0’)&&(c<=’9’))。5.在C語言中,二維數組元素在內存中的存放順序是(按行存放)。6.請把數學式寫成C語言的表達式(sqrt(b*b-4*a*c)/2*a)。7.表達式12345==12345/3*3的值為(1)。8.以下定義的結構體類型擬包含兩個成員,其中成員變量info用來存入整形數據;成員變量link是指向自身結構體的指針.請將定義補充完整。structnode{intinfo;structnode*link;}9.在C語言的文件系統(tǒng)中,最重要的概念是“文件指針”,定義文件指針fp的方法為(FILE*fp)。10.在C程序中,根據數據的組織形式可以可分為文ASCII件和(二進制)文件。得分評卷人二、選擇題(每小題2分,共32分)1.若希望當A的值為奇數時,表達式的值為“真”,A的值為偶數時,表達式的值為“假”。則以下不能滿足要求的表達式是(C)。A.A%2==1B.!(A%2==0)C.!(A%2)D.A%22.若a為int型變量,且a=2,則表達式a*=2+3的結果為(B)。A.24 B.10 C.7 D.83.設a,b為整型變量,以下合法的表達式為(A)。A.b=a/2 B.b=*a+2 C.b+a=2 D.b=a%2.54.關閉文件使用的函數是(D)。A.fseek B.fopen C.rewind D.fclose5.若有以下說明和語句:structstudent{intage;intnum;}std,*p;p=&std;則以下對結構體變量std中成員age的引用方式不正確的是(D)。A.std.ageB.p->ageC.(*p).ageD.*p.age6.下面是對數組s的初始化,其中不正確的是(D)。A.chars[5]={"abc"}; B.chars[5]={'a','b','c'};C.chars[5]=""; D.chars[5]

溫馨提示

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

評論

0/150

提交評論