安徽省二級考試C語言_第1頁
安徽省二級考試C語言_第2頁
安徽省二級考試C語言_第3頁
安徽省二級考試C語言_第4頁
安徽省二級考試C語言_第5頁
已閱讀5頁,還剩82頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

安徽省二級考試C語言安徽省二級考試C語言安徽省二級考試C語言xxx公司安徽省二級考試C語言文件編號:文件日期:修訂次數:第1.0次更改批準審核制定方案設計,管理制度全國高等學校(安徽考區(qū))2002年1月計算機水平考試試卷單項選擇題(每題1分,共10分)C語言部分填空若a為float型變量,且a=4.6785,則表達式(int)(a*100+0.5)/100.0的值為______若intx=11,y=10;則表達式x-->y10:11>y++’a’:’z’的值為____若所有變量均為int型,則執(zhí)行下面程序段后x的值為______x=80,a=10,b=16,y=9,z=0;if(a<b)if(b!=15)if(!y)x=81;elseif(!z)x=79;若i、j為int型,則下面循環(huán)體執(zhí)行的次數為_____i=1;j=0;while(i+j<=10){if(i>j)j=j+2;elsei=i+2;}若數組a[10]int型,元素及值如下:數組元素:a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]值:9483267015則*(a+a[9])的值為____以下函數調用語句中實參個數為_____sub1((x1,x2),(x3,x4,x5),x6)若以下函數定義:int(*hs)(){......}/*函數體*/則函數hs的返回值為______類型若int占2個字節(jié),char占1個字節(jié),float占4個字節(jié),則定義如下:structstu{union{charbj[5];intbh[2];}class;charxm[8];floatcj;}xc;則sizeof(xc)的值為_______設有如下宏定義#definea6#defineba+4執(zhí)行c=b*10;(c為int型);則c的值為_________在c中,文件指針變量的類型只能是_________讀程序,寫程序運行結果main(){inti;floatj;i=18;j=29.4361;printf(“i=%4d,j=%2.2f”,i,j);}main(){intk=10;charc=’b’;do{switch(c++){case‘a’:k++;case‘b’:k--;case‘c’:k+=3;break;case‘d’:k=k%4;}while(c!=’c’);printf(“%d\n”,k);}main(){chara[]=”computer”;chart;inti,j=0;for(i=0;i<8;i++)for(j=i+1;j<8;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}printf(“%s”,a);}main(){char*p,s[]=”abcdefg”;for(p=s;*p!=’\0’;){printf(“%s\n”,p);p++;if(*p!=’\0’)p++;elsebreak;}}main(){autointi;for(i=1;i<3;i++)f(i);}f(intj){staticinta=100;autointk=1;++k;printf(“%d\n”,a+k+j);a+=10;}程序填空判斷一年是否是閏年1)能被4整除但不能被100整除2)能被400整除main(){intyear,leap;printf(“inputyear:”);scanf(“%d”,&year);if(year%400==0)_______;elseif((year%4==0)&&(year%100!=0))leap=1;elseleap=0;if(leap!=____)printf(“%disaleapyear\n”,year);elseprintf(“%disnotaleapyear\n”,year);}求3個變量的最小公倍數max(intx,inty,intz){if(x>y&&x>z)returnx;elseif(y>=x&&y>z)___________;elsereturnz;}main(){intx,y,z,s,i=1,j;scanf(“%d%d%d”,&x,&y,&z);s=___________;while(1){j=i*s;if(__________________)break;i++;}printf(“%d\n”,j);}判斷輸入的字符是否中心對稱例:xyzzyx或xyzyx就是中心對稱main(){chars[100],*p1,*p;intn;gets(s);n=strlen(s);p1=s;p2=_________;while(p1<p2)if(*p1!=*p2)break;else{p1++;__________;}if(p1<p2)printf(“no”);elseprintf(“Yes\n”);}對于結構體數組,求四人中年齡最大的人的姓名及年齡#defineNULL0staticstructnode{charname[20];intage;}person[]={“Lihong”,18,”zhangfang”,19,”Liqing”,18,”wanglin”,20};main(){structnode*p,*q;intold=0;q=NULL;p=person;for(;________;p++)if(old<p->age){q=p;__________;}printf(“%s,%d\n”,q->name,q->age);}編程題36塊磚36人搬,男子一人一次搬4塊,女子一人一次搬3塊,小孩2人一次搬一塊,正好一次全搬完,求男子、女子、小孩各多少人?輸入序號n,求費波拉斐數列(第n項)用循環(huán)將a[3][4]的第一行與第三行對調。a029727111351368513682711130297全國高等學校(安徽考區(qū))2002年6月計算機水平考試試卷(二級C語言)計算機文化基礎部分單項選擇題(每題1分,共10分)(缺)C語言部分填空intk=-1;執(zhí)行printf(“%o”,k),結果是________。c語言中,______類型變量的所有成員以覆蓋方式共享存儲單元。若打開一已存在的非空文件”FILE1”進行修改,正確的打開語句是_____。設所有變量已定義為int型,運行以下程序段后結果是________。a=b=c=0;x=34;if(x)x--;elseif(b);if(c)c=3;elsex=4;執(zhí)行下列語句后,a、b、c的值為_________。intx=10,y=9;inta,b,c;a=(--x>y++)—x:++y;b=x++;c=y;字符串”101\x44\\102ab\nd”的長度是_________。已知函數定義int*st(intx,float*p){...},則函數類型是_____。設charstr1[10]=”ABCDEF”,str2[]=”xyz”;執(zhí)行printf(“%s”,strlen(strcpy(str1,str2));后輸出結果______。選擇(22=11×2)以下不合法的c標識符是________A、_12abB、voidC、imaxD、str_124_Li已知inta,*p,**w;p=&a,w=&p;取a值的表達式________A、&aB、&*pC、**pD、**winta[10],*p=a;對數組元素a[i]的正確引用________A、a+iB、p+iC、*(p+i)D、*(a[0]+i)4、使用scanf(“x=%f,y=%f”,&x,&y);要求x、y均為3.12,正確輸入_____A、3.12,3.12B、3.123.12C、x=3.12,y=3.12D、x=3.12y=3.125、設x,y為浮點型變量,合法賦值語句是________A、x=8+y;B、(float)3C、y=(x%2)/10D、*x=106、若有下面定義:#defineN2#defineY(n)((N+1)*5)執(zhí)行語句:z=2*(N+Y(5))后結果是_____A、語句有錯誤B、z=34C、z=70D、z=157、設整型變量a,b,c,m,n均為1,執(zhí)行(m=a>b)&&(n=a>b)后m,n值是____A、0,0B、0,1C、1,0D、1,1、下面語句中錯誤的是_______A、while(x=y--)10;B、dox++;while(x=5);C、while(0);D、do3;while(a==b);設a、b為int型變量,執(zhí)行下面語句后b的值_________a=1;b=10;do{b-=a;a++;}while(b--<0);A、9B、-2C、-1D、810、若有以下定義,則值為3的表達式inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;A、p+=2,*(p++)B、p+=2,*++pC、p+=3,*p++D、p+=2,++*p11、函數的功能是交換x、y值,且通過正確調用返回交換結果,不能正確執(zhí)行此功能的函數是________fa(int*x,int*y){int*p;*p=*x;*x=*y;*y=*p;}fb(intx,inty){intt;t=x;x=y;y=t;}fc(int*x,int*y){intp;p=*x;*x=*y;*y=p;}fd(int*x,int*y){*x=*x+*y;*y=*x-*y;*x=*x-*y;}12、定義如下結構:structstu{longsno;charname[10];floatscore;};表達式“sizeof(structstu)”的值為______。A、10B、14C、18D、22讀程題,寫出運行結果main(){inti,j,m,n;i=7;j=10;m=++i;n=j++;printf(“%-5d%5d\n%-5d%5d”,i,j,m,n);}main(){inta=0,i;for(i=1;i<5;i++){switch(i){case0:case3:a+=3;case1:case2:a+=2;default:a+=5;}}printf(“\n%d”,a);}3、#defineN6main(){inti,j,a[N][N];for(i=0;i<N;i++){a[i][i]=1;a[i][0]=1;}for(i=2;i<N;i++)for(j=1;j<N-1;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=0;i<N;i++){for(j=0;j<=i;j++)printf(“%6d”,a[i][j]);printf(“\n”);}}4、intk=2;f(intm){m+=k;k+=m;if(m<=6)return(f(++m));elseprintf(“%d,%d”,m,k++);}main(){inti=4;f(i++);printf(“%d,%d\n”,i,k);}5、main(){chara[2][5]={“1234”,”2354”};char*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=a[i];for(i=0;i<2;i++)for(j=0;p[i][j]>’\0’;j+=2)s=s*10+p[i][j]-‘0’;printf(“%d\n”,s);}程序填空用下列公式計算Π的值,請完善程序Π/4=1-1/3+1/5-1/7+...+1/n(程序要求|1/n|<=10-5)#include“math.h”main(){floatpi=0.0,n=1.0,t,s=1.0;do{t=s/n;pi=________;s*=________;n+=2;}while(_______>1e-5);printf(“pi=%f\n”,_______);}求n!,計算1!,2!,...,n!(n由鍵盤輸入)longsp(inti){staticlongk=1;k=___________;returnk;}main(){intn,i;scanf(“%d”,&n);for(i=1;________;i++)printf(“%d!=%ld\n”,_______);}字符串中小寫字母轉換成大寫字母#include<stdio.h>voidmain(void){char*chp,str[20]={”Heifei”};__________;while(*chp!=’\0’){if(*chp>=’a’&&*chp<=’z’)*chp=___________;__________;}puts(str);}編程題統(tǒng)計從鍵盤輸入的字符串中數字、字母、空格及其他符號的個數。從鍵盤輸入一個2×3矩陣,將其轉置為3×2的矩陣輸出。編程實現由主函數輸入m,n,按下述公式計算Cnm的值。Cnm=n!/(m!*(n-m)!)全國高等學校(安徽考區(qū))2003年6月計算機水平考試試卷(二級C語言)計算機文化基礎部分單項選擇題(每題1分,共10分)pc硬件在邏輯上主要由____、存儲器、輸入設備、輸出設備等部件組成。A、運算器B、CPUC、顯示器D、鍵盤二進制數101110轉換成等值的八進制數是_______。A、45B、56C、67D、46在計算機硬件中,Cache是_______存儲器。A、只讀B、可編程只讀C、可擦可只讀D、高速緩存操作系統(tǒng)是一種_______。A、通用軟件B、系統(tǒng)軟件C、應用軟件D、編譯程序5、_______簡稱為DVD光盤。A影視光盤B、音樂光盤C、數字視頻光盤D、多媒體課件IP地址是由_______位二進制數字組成。A、64B、32C、16D、8下列設備中,_________不是多媒體計算機系統(tǒng)的必備部件。A、視頻卡B、聲頻卡C、CD-ROMD、音箱下列不屬于計算機病毒的特性_________。A、傳染性B、破壞性C、潛伏性D、免疫性關閉一個應用程序窗口,可以按快捷鍵_________。A、Alt+F4B、Ctrl+F4C、Alt+EscD、Ctrl+Esc10、windows98自帶的只能處理純文本的文字編輯工具是_______。寫字板B、剪貼板C、記事本D、WordC語言部分單項選擇題(每題2分,共30分)C語言中運算對象必須是整型的運算符為_________。A、%=B、/C、=D、<=設x為一數字字符,則其所對應的十進制數值為_______。A、xB、x-‘0’C、*xD、&x字符串”\t\x42\\bcd\n”的長度是_______。A、7B、10C、12D、134、若x、y、z均為int變量,則執(zhí)行以下語句后,x、y的值分別 為______。x=y=1;t=++x||++y;A、1和1B、2和2C、2和1D、1和2為表示關系x>y≥z,則正確的C語言表達式為________。A、x>y>=zB、(x>y)and(y>=z)C、(y<x)&&(y>=z)D、(x>y)&(y>=z)若有語句scanf(“%d%d”,&a,&b),要使變量a、b分別得23、45,則正確的輸入形式為_______。A、2345B、23,45C、23;45D、2345已知大寫字母A的ASCⅡ碼值是65,小寫字母a的ASCⅡ碼值是97,則用八進制表示的字符常量’\101’為________。A字符AB、字符aC、字符eD、非法常量若有宏定義#definew(x)3+x,則表達式a=2*w(3)的值為______。A、8B、12C、6D、9若有定義intx=2,y=3,z=4;則表達式!(x+y)+z-1&&y+z%2的值為________。A、4B、0C、1D、210、有如下程序main

(){intn=8;while(n>5){n--;printf(“%d”,n);}}該程序的輸出結果是_____。A、876B、765C、8765D、765411、下列語句中,合法的數組定義是_________。A、chara[3][]={‘abc’,’12’,”fox”};B、chara[][3]={‘abc’,’12’,”cd”};C、chara[3][]={‘a’,”12”,”fox”};D、chara[][3]={“a”,”12”,”cd”};12、設有下列結構型變量w的定義,則表達式”sizeof(w)”的值是_______。Struct{longnum;charname[15];union{floatx;shortz;}yz;}w;A、19B、20C、23D、2513、設有以下的語句inta[4][2]={1,2,3,4,5,6,7,8};則*(*(a+2)+1)的值是______。A、3B、4C、5D、614、設有一個名為”myfile.c”的c程序,其主函數為main(intargc,char*argv[]),如果在執(zhí)行時,輸入的命令行為myfileaabbcc,則形式參數argc的值是______A、3B、4C、myfileD、aabbcc15、rewind函數的作用是_______A、重新打開文件B、返回文件長度值C、使文件位置指針重新回到文件末D、使文件位置指針重新回到文件開始二、程序分析題(每題5分,共25分)寫程序運行結果voidmain(){charc1=97;if(c1>=’a’&&c1<=’z’)printf(“%d,%c”,c1,c1++);elseprintf(%c”,c1);運行結果為___________}main(){inta[10]={1,2,3,4,5,6,7,8,9,10};int*pa,*pb,x,i;for(i=0,pa=a,pb=a+9;i<5;i++,pa++,p--){x=*pa;*pa=*pb;*pb=x;}for(pa=a;pa<a+10;pa++)printf(“%3d”,*pa);}運行結果為___________________________________main(){inti,j,k;for(i=0;i<5;i++){for(k=0;k<=5-i;k++)printf(“”);for(j=0;j<2*i-1;j++)printf(“*”);printf(“\n”);}}運行結果為:4、#include<stdio.h>main(){charc;若從鍵盤輸入:321回車while((c=getchar())!=’\n’)運行結果為:_________switch(c-‘1’){case0:case1:putchar(c+2);case2:putchar(c+3);break;case3:putchar(c+4);default:putchar(c+1);break;}printf(“\n”);}5、#include<stdio.h>longfun(intn){longs;if(n==1||n==2)s=2;elses=n+fun(n-1);returns;}voidmain(){printf(“%d\n”,fun(5));}運行結果為_____________三、填空題(每空2分,共16分)設有定義:intn,*p=&n;以下語句將利用指針變量p讀寫變量n的內容,請將語句補充完整。scanf(“%d”,______);printf(“%d”,______);用下列公式計算Π的值,請完善程序Π/4=1-1/3+1/5-1/7+...+1/n(程序要求|1/n|<10-5)#include______main(){floatpi=0.0,n=1.0,t,s=1.0;do{t=s/n;pi+=t;s*=________;n+=2;}while(_______);printf(“pi=%f\n”,4*pi);}3、下列程序是刪除給定字符串中的逗號字符,請完善程序。#include<string.h>main(){chars[]=”this,is,string”,charc=’,’;printf(“%s\n”,s);delete(_______,c);printf(“%s\n”,s);}delete(chars[],charc){inti,j;for(i=j=0;s[i]!=’\0’;i++)if(s[i]_____)s[j++]=s[i];s[j]=_______;}四、程序設計題(1-5分,2,3--7分,共19分)從鍵盤輸入若干學生的成績,并輸出最高成績和最低成績,當輸入成績?yōu)樨撝禃r結束。編寫一個求k!的函數,計算s=1!+2!+...+n!將輸入的n個整數從大到小排序輸出,并統(tǒng)計所有下標為奇數且數組元素的值為偶數的個數。2002-1一,1、4.682、a3、794、55、66、37、整型指針8、179、4610、FILE*二,1、i=18,j=29.442、123、utrpomec4、abcdefg5、103cdefg114efgg三、1、leap=102、returnymax(x,y,z)j%x==0&&j%y==0&&j%z==03、s+n-1p2--4、q<person+4old=q->age2002-6一、1、1777772、公用體3、fopen(“FILE1”,r+);4、x=45、11,9,116、107、整型指針8、3二、BDCCABBBDA11、CD12、C三、1、8112、293、14、15,235,24810111215、1325133114641151051四、1、pi+t-1tpi*42、k*ii<=ni,sp(i)3、chp=str*chp-32chp++2003-6文化基礎:BBDBCBDDAC一、ABACCAADCBDCDBD二1、98,a2、109876543213、*4、645345、14***************三、1、p*p2、<math.h>-1fabs(t)<1e-53、s!=c‘\0’安徽省09年6月二級C語言程序設計試題一:選擇題(每空1分,共40分)1.在計算機領域中,MIPS通常用來描述計算機的1。A)運算速度B)內存容量C)分辨率D)主頻2.下面屬于計算機輸出設備的是2。A)顯示器B)鼠標C)鍵盤D)掃描儀3.微型計算機在工作中突然斷電,則3中的信息全部丟失。A)硬盤B)RAMC)ROMD)光盤4.若X是二進制數1011,Y是十進制數13,Z是十六進制數1D,則X、Y、Z從大到小的順序是4。(X,Y,Z都是無符號數)A)ZYXB)YZXC)XYZD)ZXY5.在Windows中,下面關于刪除文件的描述錯誤的是5。A)U盤上的文件被刪除后,不能從回收站中還原B)可以不經過回收站直接將文件刪除C)可以將文件先復制到回收站,需要時再將其從回收站還原D)利用“清空回收站”選項可以把回收站中的文件全部刪除6.下面關于E-mail功能的描述中,錯誤的是6。A)在發(fā)送電子郵件時,可以同時發(fā)送給多人B)在發(fā)送電子郵件時,可以發(fā)送附件C)在接收電子郵件時,可以將附件下載到本地計算機上D)在接收電子郵件時,必須將附件下載到本地計算機上7.為減少多媒體數據所占存儲空間,常采用7技術。A)高速緩沖B)數據壓縮C)多通道D)流媒體8.中的“http”指的是8。A)計算機主機域名B)文件傳輸協議C)超文本傳輸協議D)TCP/IP協議9.下面關于計算機病毒的描述中,正確的是9。A)計算機病毒不能感染安裝了殺毒軟件的計算機系統(tǒng)B)計算機病毒只能通過網絡傳播C)計算機病毒不能感染加密或壓縮后的文件D)計算機病毒可以通過U盤進行傳播10.下面系統(tǒng)軟件中,最核心的是10。A)編譯系統(tǒng)B)語言處理系統(tǒng)C)操作系統(tǒng)D)數據庫管理系統(tǒng)11.下列定義變量錯誤的語句是______。A)int_abc; B)doubleint_; C)charFor; D)floatUS$;12.設有intx=3,y=4;,以下不合法的C語言語句是

______。A)x=y==5; B)x=y%2.8; C)x=y=5;D)x+=x+2;13.下列可以正確表示字符常量的是______。A)’\x41’; B)\008 C)a D)”a”14.設有定義:intk=0;,以下值為0的表達式是______。A)k-1 B)k-=1 C)k--D)--k15.下列常數中不能作為C語言常量的是______。A)0xA5 B)2.5e-2 C)3e2D)058216.設有floatf1=2.6,f2=2.5;,則表達式(int)f1+f2的值為______。A)5 B)4.5 C)4 D)5.517.設變量x,y,z均為int類型,則以下程序段的輸出結果是______。x=y=6;z=x,++y;printf(“%d”,z);A)9 B)8 C)7 D)618.設有inta=2,b=1,c=3,d=4;,則表達式a>b?a+b:c+d的值為______。A)1 B)2 C)3 D)719.設有inta=5,b=6,c=2;,則表達式a<b||--c運算后,c的值為______。A)0 B)1 C)2 D)320.若變量c為char類型,以下不能正確判斷其為大寫字母的表達式是______。A)’A’<=c<=’Z’ B)c>=’A’&&c<=’Z’ C)(c+32)>=’a’ &&(c+32)<=’z’ D)!(c<’A’||c>’Z’)21.若從鍵盤上輸入88<回車>后,以下程序的輸出結果是______。#include“stdio.h”voidmain(){inta;scanf(“%d”,&a);if(a>90)printf(“%d”,a);if(a>80)printf(“%d”,a);if(a>70)printf(“%d”,a);}A)888888 B)8888 C)88 D)822.以下程序段的輸出結果是______。inta=2,b=1,c=2;if(a<b)if(b<0)c=0;elsec+=1;printf(“%d\n”,c);A)0 B)1 C)2 D)323.語句while(!w);中的表達式!w等價于______。A)w==1 B)w==0 C)w!=1 D)w!=024.以下程序段的輸出結果是______。inta=1,b=2,c=3,t;while(b<c){t=a;a=b;b=t;c--;}printf(“%d,%d,%d”,a,b,c);A)1,2,3 B)2,1,2 C)1,2,1 D)2,1,125.以下能正確定義和初始化一維數組a的選項是______。A)inta[5]={0,1,2,3,4,5}; B)inta[]=”01234”;C)inta[5]=(‘A’,’B’,’C’); D)inta[]={1,2,3,4,5};26.函數strlen(“1234\0ab\0c”)的返回值是______。A)4 B)5 C)8 D)927.若有說明:inta[4][5];,則對數組a的元素的非法引用是______。A)a[0][2*2] B)*(*(a+1)+2) C)a[4-2][0] D)a[0][5]28.判斷字符串s1是否大于字符串s2,正確的表達式是______。A)s1>s2 B)strcat(s1,s2) C)strcpy(s1,s2) D)strcmp(s1,s2)>029.在C語言中,函數返回值的類型取決于______。A)函數定義中在函數首部所說明的類型 B)在return語句中表達式值的類型 C)調用函數時主調函數所傳遞的實參的類型 D)函數定義中形參的類型30.若從鍵盤上輸入3,4<回車>后,則以下程序的輸出結果是______。#include“stdio.h”voidswap(intx,inty){intt;t=x;x=y;y=t;printf(“%d,%d”,x,y);}voidmain(){inta,b;scanf(“%d,%d”,&a,&b);swap(a,b);printf(“%d,%d”,a,b);}A)3,4,3,4 B)4,3,3,4 C)4,3,4,3D)3,4,4,331.一個源文件中定義的全局變量的作用域是______。A)本函數的全部范圍 B)從定義開始至本文結束C)本文件的全部范圍D)本程序的全部范圍32.下列關于C語言函數的說法中正確的是______。A)函數可以嵌套定義 B)函數不可以嵌套調用C)函數可以嵌套調用,但不能遞歸調用 D)函數嵌套調用和遞歸調用均可以33.有如下程序段:inta=10,b=2,*p;p=&a;a=*p+b;執(zhí)行該程序段后,a的值為______。A)12 B)11 C)0 D)編輯出錯34.設有inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;,則p[5]的值是______。A)5 B)6 C)7 D)835.運行程序:#include“stdio.h”voidfunc(intx,int*y){x=x+1;*y=*y+1;}voidmain(){inta=10,b=20;func(a,&b);printf(“%d,%d\n”,a,b);}輸出結果是______。A)10,20 B)11,21 C)10,21 D)11,2036.若有定義charstr[]=”uvwxyz”,*p=str;,則執(zhí)行語句printf(“%c\n”,*(p+3));后的輸出結果是______。A)x B)xyz C)元素str[3]的地址 D)字符x的地址37.以下程序的輸出結果是______。#defineMUL(x)x*x#include“stdio.h”voidmain(){inta=4,b=2;prinntf(“%d\n”,MUL(a)/Mul(b));}A)4 B)8 C)16 D)3238.以下類型說明和變量定義中正確的是______。A)typedefstruct B)structREC{intn;charc;}REC; {intn;charc;};RECt1,t2; RECt1,t2;C)typedefstruct REC ; D)struct{intn;charc;}REC;{intn=0;charc=’A’;}t1,t2; RECt1,t2;39.已知intx=56;,則執(zhí)行語句printf(“%d\n”,x>>2);后的輸出結果為______。A)34 B)14 C)224 D)5640.若要用fopen()函數以讀寫方式打開一個已存在的二進制文件,則打開方式是______。A)”a” B)”wb+” C)”ab” D)”rb+”二、填空題(每空2分,共20分)1.已知charc=’A’;,則執(zhí)行語句printf(“%d”,c);后的輸出結果為______。2.已知doublex=56.78;,則執(zhí)行語句printf(“%1.1f\n”,x);后的輸出結果為______。3.已知inta=2,b=3;,則執(zhí)行語句a*=b+4;后,a的值為______。4.已知doublex=1,y;,則表達式y(tǒng)=x+3/2的值為______。5.數學表達式1≤x≤3的C語言表達式子為______。6.已知intk=-5;,則下面while循環(huán)執(zhí)行的次數是______。while(k<=0)k=k+1;7.以下程序段的輸出結果為______。chars[]=”Hello,World!”;s[5]=’\0’;printf(“%s”,s);8.若有定義:union{longx[2];chary[6];}m;,則執(zhí)行語句printf(“%d\n”,sizeof(m));后的輸出結果為______。9.在C語言中,若需調用數學庫函數對數據進行處理,則需包含頭文件______。10.已知文件指針fp指向某文件的末尾,則!feof(fp)的值是______。三、閱讀理解題(每題4分,共20分)1.以下程序的運行結果為______。#include<stdio.h>voidmain(){inti,a=0,b=0,c=0;for(i=1;i<5;i++) switch(i){case1:a++; case2:b++; case3:a++;b++;break; default:c++;}printf("a=%d,b=%d,c=%d\n",a,b,c);}2.以下程序的運行結果為______。#include<stdio.h>voidmain(){ints=0,x=5639;while(x>0){s=s+x%10;x=x/10;}printf("a=%d\n",s);}3.以下程序的運行結果為______。#include<stdio.h>voidmain(){inti,j=0;chars[]="PROGRAM";for(i=1;s[i]!='\0';i++)if(s[j]>s[i])j=i;printf("%c\n",s[j]);}4.以下程序的運行結果為______。#include<stdio.h>intfun1(intx){staticints=1;s=s*x;return(s);}voidmain(){inti;for(i=1;i<=4;i++)printf("%d\n",fun1(i));}5.以下程序的運行結果為______。 #include<stdio.h>intfun2(intn){if(n==1)return(1);elsereturn(n+fun2(n-1));}voidmain(){printf("%d\n",fun2(5));}四、編程題(共20分)1.(6分)設計程序計算并輸出2009~9002之間所有29或92的倍數的和。(要求用循環(huán)語句實現)2.(7分)設計程序輸出下面圖形(要求用循環(huán)語句實現)。90900920093.(7分)設計一個轉換函數,將字符數組中的字母變換為其字母表順序后的字母,如果是’Z’或’z’,則分別變成’A’或’a’,非字母字符不變,即:‘a’→‘b’,‘b’→‘c’,‘c’→‘d’,……‘y’→‘z’,‘z’→‘a’‘A’→‘B’,‘B’→‘C’,‘C’→‘D’,……‘Y→‘Z’,‘Z’→‘A’函數框架如下:voidChange(chars[]){……}例如:對于字符數組:chara[]=”t&W”,b[]=”w&z”;轉換后的結果分別為:u&X和x&A。請完成……處的程序代碼。參考答案一、選擇題AABAC DBCDC BCCAB BAABD DACBC DBADC CADBC ABBCD二、填空題1.65 2.56.8 3.14 4.2.0 5.x>=1&&x<=36.6 7.Hello 8.8 9.math.h 10.0三、閱讀理解題1.a=4,b=5,c=1 2.a=23 3.A4.1 5.152624四、編程題1.#include<stdio.h>voidmain(){longs=0;inti;for(i=2009;i<=9002;i++) if(i%2009==0||i%9002==0) s=s+i; printf("%ld\n",s);}2.#include<stdio.h>voidmain(){char*s="2009";inti;for(i=3;i>=0;i--) printf("%s\n",s+i);}3.voidChange(chars[]){for(;*s!='\0';s++)if(*s>='a'&&*s<'z')*s=*s+1;elseif(*s>='A'&&*s<'Z')*s=*s+1;elseif(*s=='Z')*s='A'; elseif(*s=='z')*s='a';}安徽省08年6月二級C語言程序設計試題-一、單項選擇題(每題1分,共40分)1.計算機能夠自動工作,主要是因為采用了。A)二進制數制B)大規(guī)模集成電路C)程序設計語言D)存儲程序控制原理2.下列數值中最大的是。A)(10110)2B)(120)8C)(70)10D)(3A)163.在計算機指令系統(tǒng)中,一條指令通常由組成。A)數據和字符B)操作碼和操作數C)運算符和數據D)被運算數和結果4.運算器主要由組成。A)算術邏輯單元B)處理器C)控制器D)存儲器5.下列關于Windows“回收站”的敘述中,不正確的是。A)“回收站”中的信息可以清除B)“回收站”中的信息可以還原C)“回收站”的大小可以設置D)“回收站”不占用硬盤空間6.多媒體信息不包括。A)文字、圖形B)音頻、視頻C)光驅、聲卡D)影像、動畫7.學校機房的若干臺計算機連接而成的網絡通常屬于。A)WANB)LANC)MAND)GPS8.FTP是。A)發(fā)送電子郵件的軟件B)瀏覽網頁的工具C)文件傳輸協議D)聊天工具9.下列關于計算機病毒的敘述中,不正確的是。A)計算機病毒只破壞硬件,不破壞軟件B)計算機病毒是人為編寫的一種程序C)計算機病毒能通過磁盤、網絡等媒介傳播、擴散D)計算機病毒具有潛伏性、傳染性和破壞性10.下列關于算法的敘述中,正確的是。A)算法就是對特定問題求解步驟的描述B)算法就是程序C)算法就是軟件D)算法沒有優(yōu)劣之分11.一個可編譯運行C語言源程序中,______。A)主函數有且僅有一個B)可以有多個主函數 C)必須有除主函數以外的其他函數 D)可以沒有主函數12.結構化程序設計所規(guī)定的三種基本控制結構是

______。A)輸入、處理、輸出B)樹形、網形、環(huán)形 C)順序、選擇、循環(huán)D)主程序、子程序、函數13.以下選項中合法的用戶標識符是______。A)long B)_2test C)3Dmax D)for14.設有:chara='\101';,則變量a______。A)包含1個字符 B)包含3個字符 C)包含4個字符 D)定義不合法15.以下選項中運算對象不能實實型的運算符是______。A)% B)/ C)= D)*16.已知inti,a;,執(zhí)行語句i=(a=2*4,a+5),a+6;后,變量i的值為______。A)8 B)14 C)40 D)4617.設有以下變量定義,并已賦確定的值:longw;intx;doubley;則表達式w+x+1/y值的數據類型為______。A)int B)long C)float D)double18.以下選項中,與k=++n完全等價的表達式是______。A)k=n,n=n+1 B)n=n+1,k=n C)k=n+1 D)k+=n+119.設x,y,t均為int型變量,則執(zhí)行語句:x=y=0;t=++x||++y;后,y的值為______。A)0 B)1 C)2 D)不確定20.若整形變量a,b,t已正確定義,現要將a和b中的數據進行交換,下面不正確的是______。A)t=a;a=b;b=t; B)t=a,a=b,b=t; C)a=t;t=b;b=a; D)t=b;b=a;a=t;21.設有floata=2,b=4,h=3;,以下C語言表達式中與代數式計算結果不相符的是______。A)(a+b)*h/2 B)1/2*(a+b)*h C)(a+b)*h*1/2 D)h/2*(a+b)22.已知a,b,c為int類型,執(zhí)行語句scanf("a=%d,b+%d,c+%d",&a,&b,&c);,若要使得a為1,b為2,c為3,則以下選項中正確的輸入形式是______。A)a=1 B)1,2,3 C)a=1,b=2,c=3 D)123b=2c=323.對于以下形式:if(表達式)語句;,其中的表達式______。A)只能是關系表達式 B)只能是關系表達式或邏輯表達式C)只能是邏輯表達式 D)可以是任何表達式24.若變量c為char類型,以下選項中能正確判斷出c為數字字符的表達式是______。A)'0'<=c<='9' B)(c>='0')&&(c<='9')C)('0'<=c)&('9'>=c) D)(c>=0)&&(c<=9)25.下面有關for語句的正確描述是______。A)for語句只能用于循環(huán)次數已經確定的情況B)for語句是先執(zhí)行循環(huán)體語句,后判斷作為循環(huán)條件的表達式C)在for語句,不能用break語句跳出循環(huán)體D)for語句的循環(huán)體中,可以包含多條語句,但必須用花括號括起來26.能將兩個變量x,y中值較小的一個賦給變量z的語句是______。A)if(x<y)z=x; B)if(x>y)z=y; C)z=x<y?x:y; D)z=x>y?x:y;27.若有:charst1[]="123456";charst2[]={'1','2','3','4','5','6'};則下面敘述正確的是______。A)數組str1和str2完全相同 B)str1和str2數組長度相同C)數組str1和str2不相同,str1是指針數組 D)str1和str2數組長度不相同28.以下不能正確初始化二維數組的選項是______。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}};29.執(zhí)行下面程序:#include<stdio.h>#include<string.h>main(){chara[21]="ABC";strcat(s,"6789");printf("%s\n",s);}則輸出結果是______。A)ABC6789 B)ABC C)6789 D)6789ABC30.在C語言程序中,關于函數說法正確的是______。A)函數的定義可以嵌套,但函數的調用不可以嵌套B)函數的定義不可以嵌套,但函數的調用可以嵌套C)函數的定義和函數的調用均不可以嵌套D)函數的定義和函數的調用均可以嵌套31.C語言程序中,調用函數時若實參是普通變量,則下面說法正確的是______。A)實參和形參各占獨立的存儲單元B)實參和形參可以共用存儲單元C)可以由用戶指定實參和形參是否共用存儲單元D)由計算機系統(tǒng)根據不同的函數數自動確定實參和形參是否共用存儲單元32.設程序中定義了以下函doublemyadd(doublea,doubleb){return(a+b);}如果在程序中需要對該函數進行聲明,以下選項中錯誤的是______。A)doublemyadd(doublea,b); B)doublemyadd(double,double);C)doublemyadd(doubleb,doublea); D)doublemyadd(doublea,doubleb);33.C語言中,若某變量在定義它的函數被調用時才被分配存儲單元,則該變量的存儲類別為______。A)static B)extern C)auto或registeD)extern或static34.以下能使指針變量p指向a的正確選項是______。A)inta,*p=a; B)inta,p=a; C)inta,*p=*a; D)inta,*p=&a;35.設有charstr[]="Olympic";則表達式*(str+4)的值是______。A)'m' B)'p' C)'i' D)不確定的值36.已知union{inti;charc;floatp;}ex;則sizeof(ex)的值是______。A)1 B)2 C)4 D)737.設有:structstudent{charname[10];intage;charsex;}std={"LiMing",19,'M'},*p;p=&std;則下面各輸出語句中錯誤的是______。A)printf("%d",(*p).age); B)printf("%d",p->age);C)printf("%d",p.age); D)printf("%d",std.age)38.以下關于typedef的敘述不正確的是______。A)typedef不能用來定義變量 B)用typedef可以增加新類型C)用typedef只是將已存在的類型用一個新的名稱來代表D)使用typedef便于程序的通用和移植39.已知intx=16;,表達式x>>2的值是______。A)64 B)32 C)8 D)440.下列關于文件操作描述正確的是______。A)對文件操作必須先打開文件B)對文件操作必須先關閉文件C)對文件操作打開和關閉的順序無關緊要D)對文件操作打開和關閉的順序取決于是讀還是寫操作二、填空題(每空2分,共20分)1.設有intx;floaty=5.5;,則執(zhí)行語句x=y*3+(int)y%4;后,x的值是______。2.已知intx=5,y=3,z=1;,則執(zhí)行語句x%=y+z;后,x的值是______。3.已知floatf=123.467;,則執(zhí)行語句printf("%.2f\n",f);后,輸出結果是______。4.已知字符'A'的ASCII值為十進制65,變量c為字符型,則執(zhí)行語句c='A'+'6'-'3';printf("%c\n",c);后,輸出結果是______。5.已知intx=0,y=1,z=2;,則執(zhí)行語句if(!x)z=-1;if(y)z=-2;printf("%d\n",z);后,輸出結果是______。6.有程序段charstr[]="ab\070\\14\n";printf("%d\n",strlen(str));執(zhí)行后輸出結果是______。7.已知inta[10];,則______代表數組a的首地址。8.有函數調用語句:f(a+b,(c,d),e);,則該調用語句中函數實參的個數是______。9.以下程序的輸出結果為______。#include“stdio.h”#defineS(x,y)x*yvoidmain(){inta=3,b=2,c;c=S(2+a,b);printf(“%d”,c);}10.已知inta[3][3]={1,2,3,4,5,6,7.8.9};,則*(*(a+2)+1)的值是______。三、閱讀理解題(每題4分,共20分)1.以下程序的運行結果為______。#include"stdio.h"main(){inti,a=0,b=0,c=0;for(i=0;i<5;i++)switch(i){case0:a++;case1: case2:b++;break; default:c++; }printf("a=%d,b=%d,c=%d\n",a,b,c);}2.以下程序的運行結果為______。#include"stdio.h"main(){inti,j,a[10]={3,4,5,6,7,8,9,10,11,12};for(i=0;i<10;i++){for(j=2;j<a[i];j++)if(a[i]%j==0)break; if(j>=a[i])printf("%3d",a[i]); }printf("\n");}3.以下程序的運行結果為______。#include"stdio.h"intfunc(intn){ints;if(n<=1)s=1;elses=2*func(n-1);returns;}main(){inti,s=0;for(i=1;i<=5;i++)s=s+func(i);printf("s=%d\n",s);}4.以下程序的運行結果為______。#include"stdio.h"voidfunc(inti){staticintx=0;inty=0;x=x+i;y=y+i;printf("%d,%d\n",x,y);}main(){inti;for(i=10;i<30;i=i+10)func(i);}5.以下程序的運行結果為______。#include"stdio.h"main(){charstr[]="WelcometoAnHui!",*p;p=str;while(*p!='\0'){if(*p>='A'&&*p<='Z')*p=*p+('a'-'A');p++;}printf("%s\n",str);}五、編程題(共20分)1.(6分)編寫程序從鍵盤上任意輸入3個學生的成績,并按從大到小的順序輸出。2.(7分)編寫程序輸出下面圖形(要求用多重循環(huán)結構實現)。*************************。編寫程序將Fibinacci數列前20項逆序存儲在數組中并輸出該和組。3.(7分)Fibinacci數列為:1,1,2,3,5,8,…,從第3個數開始,每個數都是前兩個數的和2008年6月安徽省計算機水平考試二級C語言試題參考答案一、單項選擇題(每題1分,共40分)DBBAD CBCAA ACBAA CDBAC BCDBD CDDAB AACDB CCBDA二、填空題(每空2分,共20分)1.17 2.1 3.123.47 4.D 5.-36.7 7.數組名a 8.3 9.8 10.8三、閱讀理解題(每小題4分,共20分)1.a=1,b=3,c=2 2.35711 3.s=314.10,10 5.welcometoanui!30,20四、編程題(共20分)1.編寫程序從鍵盤任意輸入3個學生的成績,并按從大到小的順序輸出。(6分)#include<stdio.h>main(){inta,b,c,t;scanf(“%d%d%d”,&a,&b,&c);if(a<b){t=a;a=b;b=t;}if(a<c){t=a;a=c;c=t;}if(b<c){t=b;b=c;c=t;}printf(“%d%d%d\n”,a,b,c);}2.編寫程序輸出以下圖形(要求用多重循環(huán)結構實現)。(7分)#include<stdio.h>main(){intk,j;for(k=1;k<=5;k++){for(j=1;j<=k;j++)printf("");for(j=1;j<=11-2*k;j++)printf("*");printf("\n");}}3.Fibonacci數列為:1,1,2,3,5,8,…,從第三個數開始,每個數都是前兩個數的和。編寫程序將Fibonacci數列前20項逆序存儲在數組中并輸出該數組。(7分)#include<stdio.h>main(){intf[20],k,t;f[0]=f[1]=1;for(k=2;k<20;k++)f[k]=f[k-1]+f[k-2];for(k=0;k<10;k++){t=f[k];f[k]=f[19-k];f[19-k]=t;}for(k=0;k<20;k++){if(k%5==0)printf("\n");printf("%5d",f[k]);}}2001年06月安徽省C語言試題及答案一、語言基礎填空(共20分,每題2分)字符串”a\x44\\\nbcd\102a”的長度是__9___________。9設變量定義intx=4,y=5;則表達式(++x<=y--)

++x:y--的值為__6__________。6設inta=8,b=7,c=6,x=1;執(zhí)行語句if(a>6)if(b>7)if(c>8)x=2;elsex=3;后x的值是______________。1設x,y為int變量,則執(zhí)行下列語句x=0;y=1;do{y+=x;x--;}while(y++>0);后y的值是________________。1(五)設charstr1[10]=”ABCDE”,str2[10]=”xyz”;則執(zhí)行下列語句printf(“%d”,strlen(strcpy(str1,str2)));后輸出結果是________________。3(六)設intx[]={1,2,3,4},y,*p=&x[1];則執(zhí)行下列語句y=(*--p)++;后y的值是________________。1(七)函數調用時,若形參和實參均為數組,其傳遞方式是_____。地址傳遞(八)若有如下說明inta[]={1,2,3,4,5,6,7,8,9,0},i;且0=<i<=10,則對數組元素地址正確表示為______。&a[i]或a++(九)某C編譯系統(tǒng)規(guī)定,int型數組占2個字節(jié),則定義struct{longnum;charname[20];union{floatx;shorty;}xy;}aa;后,sizeof(aa)=______。28(十)設FILE*fp;關閉fp對應文件的操作語句是_______。fclose(fp)二、閱讀下列程序,寫出運行結果(共20分,每題4分)<程序1>#include“stdio,h"main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;}printf(“a=%d,b=%d\n”,a,b);}a=2,b=1<程序2>#include“stdio.h”main(){intx,y;for(x=1,y=1;x<=100;x++){if(y>=15)break;if(y%3==1){y+=3;continue;}y-=5;}printf(“x=%d,y=%d\n”,x,y);}x=6,y=16<程序3>#include“stdio.h”main(){staticinta[][3]={1,3,5,7,9,2,4,6,8};inti,j,s1=0,s2=0;for(i=0;i<3;i++)for(j=0;j<3;j++){if(i==j)s1=s1+a[i][j];if(i+j==2)s2=s2+a[i][j];}printf(“%d\n%d\n”,s1,s2);}1818<程序4>#include“stdio.h”voids(n)intn;{staticinti=1;intj=1;if(n>0){++i;j++;printf(“%d,%d\n”,i,j);s(n-1);}}main(){intk=4;s(k);}2,23,24,25,2<程序5>#include“stdio.h”main(){inta[5],I,*pa,*pb;pa=pb=a;for(i=0;i<5;i++){*pb=i;pb++;}for(i=0;pa<pb;i++){printf(“a[%d]=%d\n”,I,*pa);pa++;}}a[0]=0a[1]=1a[2]=2a[3]=3a[4]=4三、閱讀下列程序,在____處填上適當的語句使程序(或函數完整)(共18分,每空2分)求兩個正整數的最大公約數的函數fun()intfun(m,n)intm,n;{intr;if(m<n){r=m;m=n;n=r;}if(n==0)return(m);do{__________;r=m%nif(r!=0){m=n;n=

溫馨提示

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

評論

0/150

提交評論