大学C语言题库

大学C语言题库

ID:83047242

大小:264.59 KB

页数:40页

时间:2023-07-04

上传者:无敌小子
大学C语言题库_第1页
大学C语言题库_第2页
大学C语言题库_第3页
大学C语言题库_第4页
大学C语言题库_第5页
大学C语言题库_第6页
大学C语言题库_第7页
大学C语言题库_第8页
大学C语言题库_第9页
大学C语言题库_第10页
资源描述:

《大学C语言题库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

《C语言》题库000308E2请编写一函数intfun(floats[],intn),它的功能是:求高于平均分的人数,并作为函数值返回。数组s中存放n个学生的成绩。'0003intfun(floats口,intn){floatave=0;inti,j=0;for(i=0;iave)j++;return(j);001103E1编写函数,把S字符串中所有字母改写成该字母下一个字母。〜0011voidchg(char*s){inti,j,k;k=strlen(s);for(i=0;imain(){intx[10]={0},i,k=5:for(i=0;i

1”,*(n+k));)该程序的输出结果是()oA、不确定的数值B、7C、10D、0〜0047D004906E1编程打印如下形式的九九表124369416003908D2函数fun的功能是:使一个字符串按逆序存放。请填空。voidfun(charstr口){charm;inti,j;for(i=0,j=strlen(str);i<();i++,j―){m=str[i];str[i]=();str[j-l]=m;}printf("%s

2",str);)〜003991881'0049main(){for(inti=l;i<=9;i++){for(intj=l;j<=i;j++)printf("%4d",i*j);printf("

3");005006E2

4编一程序,打印出所有的“玫瑰花数",所谓“玫瑰花数“指一个三位数,其各位数字立方和等于该数本身。〜0050main(){inti,j,k,n;printf("thespacialnumbers:

5M;for(n=100;n

6");}005208E1编写一个函数,计算N!'0052longfun(intn){longp=l;for(inti=l;i<=n;i++)p*=i;return(p);}005407A2以下程序的输出结果是()o#includemain(){intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=l;for(i=0;i<3;i++)for(j=i;j<=i;j++)t=t+b[i][b[j][j]];printf("%d

7",t);)A,3B、4C、1D、9'0054B005507A2有以下程序:#includemain(){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(zz%d

8zz,s);程序运行后的输出结果是()oA、11B、19C、13D、200055B005604A2有以下程序:#includeinta=3;main(){ints=0;(inta=5;s+=a++;)s+=a++;printf("%d

9",s);)程序运行后的输出结果是()o'0057C006407A2希望下面的程序运行后输出17,请将程序填完整()main(){inti,j=80,a[]={3,5,8,9,10);for()j-=a[i];printf(,j-50);)A、i=4;i>2;i—B、i=0;i<3;++iC、

10下列一维数组的说明中,不正确的是()A、floata[5+6];B、intn=10,a[n];C、SdefineLONG10;D、floata[10],b[9];

11inta[L0NG+5];'0065B006607A2若有说明inta[5][4];则对其数组元素的正确引用是()A、a[3+l][2]B、a(3)(2)C,a[0,2]D、a[3][5]'0066A006707D1下面的程序运行时,若从键盘输入:Whatdoesthiswordmean?(此处CR代表回车)则输出Whatdoesthiswordmean?请将程序填完整#includemainO{charsi[10],s2[10],s3[10],s4[10];scanf(w%s%sw,si,s2);();scanf("%s”,s4);printf(%s%s%s%sv,si,s2,s3,s4);'0067gets(s3)'006810A2若定义inti=100,*p=&i;设为i分配的内存地址为200-201,则()A、p为201B、*p为100C.*p为200D、p为100'0068B006908A2一个C程序由函数A(),B(),C()和函数P()构成,在函数A()中分别调用了函数B()和函数C(),在函数B()中调用了函数A(),且在函数P()中也调用了函数A(),则可以说()oA、函数B()中调用的函数A()是函数A()的间接递归调用B、函数A()被函数B0调用是直接递归调用C、函数P()直接递归调用了函数A()D、函数P()中调用的函数A()是函数P()的嵌套"0069A007008A1C语言规定,函数的返回值类型是()A、由return语句中的表达式类型决定的B、由调用该函数时的主调函数类型决定的C、由系统决定的D、由该函数定义时的类型决定的"0070D007111A2若有以下说明,则对初值中整数2的引用方式是()structxxx{charch;inti;doublex;}arr[3][3]={{,a',3,45},{'b',2,7.98},{'c',3,1.93}};A、arr[0][1].chB、arr[0][1].iC、arr[1][0].iD、arr[0][2].i"0071c007213A2若fp是指向某文件的指针,且已读到文件的末尾,则C语言函数feof(fp)的返回值是()A、EOFB、-1C,非零值D、NULL'0072C007309A1以下程序运行后,输出结果是()A、49.5C、22.0B、9.5D、45.0#include#definePT5.5#defineS(x)PT*x*xmainO{inta=l,b=2;printf(,S(a+b));'0073B007510A3下面程序输出数组中的最大值,由s指针指向该元素。main(){inta[10]={6,7,2,9,1,10,5,8,4,3},*p,*s;for(p=a,s=a;p-a<10;p++)if()s=p;

12printf("Themax:%dw,*s);)则在if语句中的判断表达式应是()A^p>sB、*p>*sC、a[p]>a[s]D、p-a>p~s"0075B008308E2编写函数,求Fiboracci数列中大于t的最小一个数。'0083intjsvalue(intt){intfl=0,f2=l,fn;//F(0)=0,F(l)=lfn=fl+f2;//F(n)=F(n-l)+F(n-2)while(fn<=t){fl=f2;f2=fn;fn=fl+f2;)returnfn;008403B2设a,b,c为整型数,且a=2,b=3,c=4,则执行完以下语句:a*=16+(b++)-(++c);后,a的值是()o、008428008510D3下面的程序的功能是:利用指针统计一个字符串中,字母、空格、数字、及其它字符的个数,请填空。#includemain(){intalpha,space,digit,other;char*p,s[80];alpha=space=digit=other=0;printf("inputstring:

13M);gets(s);for(p=s;*p!='\0';p++)if()alpha++;elseif()space++;elseif()digit++;elseother++;printf(walpha:%dspace:%ddigit:%dother:%d

14>,,alpha,space,digit,other);)'0085(*p>='A'&&*p<='Z')||(*p>='a'&&*p<='z'))、(*p=='4||*p=='\t')、(*p>='0,&&*p<=(9,)008711B3若有以下说明和定义语句,则变量w在内存中所占的字节数是()unionaa{floatx,y;charc[6];}structst{unionaav;floata[5];doubleave;}w;34008810C2main(){inta[]={2,4,6},*ptr=&a[0],x=8,y,z;for(y=0;y<3;y++)z=(*(ptr+y)

15",z);)〜00圈6009210B2设有以下定义和语句:inta[3][2]={10,20,30,40,50,60),(*p)[2];P=a;贝iJ*(*(p+2)+l)的值是()o'009260009307C2下列程序中字符串各单词之间有一个空格#includemain(){charstrl口=“Howdoyoudo",*pl=strl;strcpy(str1+strien(strl)/2,“esshe”);printf("%s

16”,pl);)"0093howdoesshe

17009410B2下面函数用来求出两个整数之和,并通过形参传回两数相加之和,请填空。intadd(intx,inty,()z){()=x+y;}"0094int*009508C2intt(intx,inty,intcp,intdp){cp=x*x+y*y;dp=x*x-y*y;)main(){inta=4,b=3,c=5,d=6;t(a,b,c,d);printf("%d,%d

18”,c,d);)'00955,6009606E2编一程序打印以下图案:*************************'0096main(){inti,j;for(i=0;i<5;i++){for(j=0;j

19");009707E2有如下3x4矩阵,请编程序求该矩阵所有元素中的最大值。1357246815173412'0097main(){inti,j,max;inta[3][4]={{1,3,5,7},{2,4,6,8},{15,17,34,12}};max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max)max=a[i][j];printf("maxis%d”,max);011308A2以下程序的输出结果是()ottincludefun(intx,inty,intz){z=x*x+y*y;}main(){inta=31;fun(5,2,a);printf(〃%d〃,a);)A、0B、29C、31D、无定值,0113C011405B1若inti=10;,则执行下列程序后,变量i的正确结果是Oswitch(i){case9:i+=l;case10:i+=l;casell:i+=l;default:i+=l;)"011413012808A1C语言中的函数()A、可以嵌套定义B、不可以嵌套调用C、可以嵌套调用,但不能递归调用D、嵌套调用和递归调用均可'0128D013008A1

20凡在函数中未指定存储类别的变量,其隐含的存储类别为()A、自动(auto)B、静态(static)C>外部(extern)D、寄存器(register)'0130A013407A1C、axbbD、abdd〜0159B017010A2下列程序的输出结果是intb=4;intfunc(int下列合法的数组说明语句是()A、inta[]="string0;B、inta[5]={0,1,2,3,4,5};C、chara[]="string”:D>chara[5]={0,1,2,3,4,5};〜0133C'014603A1以下合法的c语言赋值语句是()A、a=b=58;B、a+bC.a=58,b=58D、一(i+j);'0146Amain(){intx,y,z;x=y=z=3;y=x++-l;printf(*%d,%d,",x,y);y=z—+1;printf("%d,%d

21”,y,z);)〜01834,2,4,2'018406C1main(){inta[10]={l,-2,3,-4,5,-6,7,-8,9,-10},s=0,i;a){b+=*a;return(b);}main(){inta=2,res=2;res+=func(&a);printf("%d

22",res);}A、4B、6C>8D、10'0170c017303A2有两个字符数组a、b,以下正确的输入语句是()A、gets(a,b);B、scanf(a%s%sw,a,b);C、putchar(a,b);D、scanf(a%s%s,,,&a,&b);'0173B017607C1请写出下列程序的运行结果#includefunc(intb[]){intj;for(j=0;j<4;j++)b[j]=j;)main(){inta[4],i;func(a);for(i=0;i<4;i++)printf("%d",a[i]);}.'01760123017708C3#incudefunc(inta,intb){staticintm=0,i=2;

23i+=m+l;m=i+a+b;returnm;)main(){intk=4,m=l,p;p=func(k,m);printf(“%d,",p);p=fun(k,m);printf("%d”,p);)〜01778,17018207D2以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串:abcl23edf456gh,执行程序后输出:123456c#includeSincludemain(){chars[80],d[80];inti,j;gets(s);for(i=j=0;s[i]!=\0);i++)if(){d[j]=s[i];j++;}d[j]-\0*;puts(d);)〜0182s[i]>=,0'&&s[i]<=,9)018303C1更多考试资料来自投主页.for(i=0;i<10;i++){if(a[i]<0)break;s+=a[i];)printf(,z%d,z,s);}'0184]018508C1intx=l;voidfun(intx){x=3;}main(){fun(x);printf("%d

24”,x);)“01851018610C2main(){inta[4]={10,25,36,48);int*p=a;printf(〃%d*p);p++;printf("%d”,*p++);printf("%d"、*++p);'0186“102548018708C2intf(intb[],intn){inti,s=0;for(i=2;i<=n;i+=l)s+=b[i];returns;)main(){intx,a[]={1,2,3,4,5,6,7,8);x=f(a,7);printf(M%dw,x);)'0187330188I0C2

25main(){staticchata[]="programn,*ptr;for(ptr=a;ptr0)return(n*fun(n-2));elsereturn(1);}main(){intx;x=fun(5);printf("%d

26”,x);}"018915019006D2程序打印如下形式的图形**********main(){for(inti=l;i<=4;i++){for(intj=l;①;j++)printf((2));printf(③);))'0190①j〈=i②③”

27〃019107D2main()函数利用函数swap。来交换main函数中的两个变量的值voidswap(①){inttemp;temp=*x;*x二*y;②;}main(){intx=10,y=10;swap(③);printf(u%d,%d

28”,x,y);}〜0191①int*x,int*y(2)*y=temp③&x,&y019206D2下列程序求100之内的自然数中奇数之和voidmain(){inti=l,s;①;while(i<100){②;③;)printf(as=%d

29w,s);),0192①s=0②s=s+i③i+=2019306D2下列程序,求数组中主对角线元素之和main(){inta[3][3],s=0;for(inti=0;i<3;i++)for(intj=0;j<3;j++)scanf(〃%d”,①);for(i=0;i<3;i++)for(intj=0;j<3;j++)if(②)s+=③;printf("s=%d

30”,s);)〜0193①&a[i][j]②i==j(3)a[i][j]019403B1若想通过以下输入语句使a中存放字符串1234,b中存放字符5,则输入数据的形式应该是()。chara[10],b;scanf("a二%s,b二%c",a,&b);,0194a=1234,b=5

31019503B1以下程序的输出结果是()main(){inta[10]={19,23,44,17,37,28,49,36),*p;p=a;printf("%d

32",(p+=3)[3]);)〜019549019606B2设i,j,k均为int型变量,则执行完下面的for循环后,k的值是()for(i=0,j=10;i<=j;i++,j—)k=i+j;、019610019811B2下面程序的输出是()main(){enumem{eml=3,em2=l,em3};char*aa[]={“AA”,“BB“,“CC“,"DD“};printf(<<%s%s%s

33,>,aa[eml],aa[em2],aa[em3]);〜0198DDBBCC下面的程序段运行后,第个printf()语句输出是(),第二printf()语句输出是()ochar*s="freetradeM,*p=s;while(*s)s++;printf(<<%s

34>>,p);printf("%s

35",p+7);〜0199freetrade>ade020206A2若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)s=a;for(b=l;b<=c;b++)s=s+l;则与上述程序段功能等价的赋值语句是A,s=a+b;B、s=a+c;C,s=s+c;D、s=b+c;〜0202B020306A2下列for循环执行的次数为()for(inti=0,x=0;!x&&i<=10;i++)A,10B、12C>11D、无限'0203C020610A1下列选项中正确的语句组是A、chars[8];s={"Beijing"};B、char*s;s={"Beijing"};C、chars[8];s="Beijing”;D、char*s;s="Beijing”;'0206D021108A1已知函数abc的定义为:voidabc()则函数定义中void的含义是()A、执行函数abc后,函数没有返回值B、执行函数abc后,函数不再返回C、执行函数abc后,可以返回任意类型D、?上三个答案都不对〜0211A021306A1运行下面程序段的输出结果是inti;for(i=0;i<10;i++);printf("%d”,i);A、9B、10C>8D、11"0213B021410A2若有以下定义:chars[20]=wprogramming,,,*ps=s;则不能代表字符。的表达式是A、ps+2B、s[2]C、ps[2]D、ps+=2,*ps〜0214A'021508A1C语言中,函数的隐含存储类别是

36charfor(j=0;p[i][j]>>O'&&p[i][j]<,9';j+=2)s=10*s+p[i][j]-'O';printf(a%dw,s);}-02256385022608C3longfun(intn){longs;if(n==l)||(n==2)s=2;elses=n+fun(n-1);return(s);}main(){longx;x=fun(4);printf(“%ld”,x);)~02269022907D2下面invert函数的功能是将一个字符串str的内容颠倒过来。#includevoidinvert(charstr[])inti,j,();for(I=0,j=();();I++,j—){k=str[I];str[I]=str[j];str[j]=k;k、j=strlen(str)-l、I

37”,*pl,*p2);)"022210,20,10,10022303C1main(){inta,b,c;a=-l;b=-2;c=++a-b++;printfc);}、02232'022408C2voidadd(){staticintx=0;x++;printfC%d",x);}voidmain(){inti;for(i=0;i<3;i++)add();)"0224123'022508C2main(){ch⑵[5]={“6934”,“8254”),*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)

38while(p<()){if()printf(“%d”,*p);p++:"0230a+10、*p%2==0023206E1请编写一个程序,求序列2/1+3/2+5/3+8/5……前20项之和'0232main(){floatfl,f2,f3,s;inti;fl=f2=l;s=0;for(i=l;i<=20;i++){f3=f2+f1;s+=f3/f2;fl=f2;f2=f3;}printf(,s);023307E1编程求一个3x3矩阵的主对角线元素之和(设该矩阵元素均为整型数据)~0233main(){inti,j,a[3][3].sum=0;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d”,&a[i][j]);for(i=0:i<3;i++)sum+=a[i][i];printf(H%dw,sum);023402E2请编程序,输入一个4位数字,要求输出这4个数字字符,每个数字间空一个空格。史输入1990,应输出“1990“。'0234main(){inta,b,c,d,x;printf(uinputanumber:w;scanf(“/d",&x);a=x/1000;x=x%1000;b=x/100;x=x%100;c=c/10;d=x%10;printf(K%d%d%d%d”,a,b,c,d);023507E2输入三行字符,每行60个字符,要求统计出共有多少个大写字符,多少个小写字符。'0235#defineM61main(){charp[M],*q;intI,upper=0,lower=0;for(I=0;K3;I++)gets(p[I]);for(I=0;I<3;I++){q=p[I];while(*q){if(*q>=,A'&&*q<='Z'){upper++;q++;}if(*q>=,a'&&*q<=,z'){lower++;q++;}printf(w%d,%d”,upper,lower);023608E1编写函数fun,求fibonacci数列中大于t的最小的一个数,结果由函数返回。部分程序已给出。例如:当t=1000时,函数值为1597。部分程序如下:#include#include#includeintfun(intt){}main(){intn;n=1000;printf("n=%d,f=%d

39”,n,fun(n));}'"0236intfun(intt){inta=l,b=l,c=0,i;for(i=4;i<=t;i++)

40{if(c

41",p);)A、8,15B、8,16C、8,17D、8,8,0250C025107A1不能把字符串:Hello!赋给数组b的语句是()A、charb[10]={-o'\0'};B、charb[10];b="Hello!”;C、charb[10];strcpy(b,"hello!");D、charb[10]=whello!n;"0251B'025210A1若有以下定义和语句,0

42",++*x);}main(){inta=25;prtv(&a);'026026026110C2intaa[3][3]={{2},{4},{6}};main(){inti,*p=&aa[0][0];for(i=0;i<2;i++){if(i==0)

43aa[i][i+l]=*p+l;else++p;printf(,<%dM,*p);))〜026123026308D2下面的程序通过函数average计算数组中各元素的平均值。请填空。floataverage(int*pa,intn){inti;floatavg=0.0:for(i=0;i

44w,a,b,c):printf("###a=%d,b=%d,c=%d

45”,a,b,c);〜0264###a=26,b=13,c=19026507D2以下程序统计从终端输入的字符中大写字母的个数,用#号作为输入结束标志,请填空。#include#includemain(){intnum[26],i;charc;for(i=0;i<26;i++)num[i]=0;while(()!='#')/*统计从终端输入的大写字母个数*/if(isupper(c))num[c-65]+=l;for(i=0;i<26;i++)/*输出大写字母和该字母的个数*/if(num[i])printf(<<%c:%dw,i(),num[i]);)、0265c=getchar()>+65026610D2fun1函数的调用语句为:funl(&a,&b,&c);它将三个整数按由大到小的顺序调整后依次放入a、b、c三个变量中,a中放最大数。请填空。voidfun2(int*x,int*y){intt;t=*x;*x=*y;*y=t;}voidfunl(int*pa,int*pb,int*pc){if(*pc>*pb)fun2();if(*pa<*pc)fun2();if(*pa<*pb)fun2();〜02即}pc,pb、pa,pc、pa,pb026701A1设有如下程序段:inti=0,sum=l;do{sum+=i++;}while(i<2);printf(w%d

46w,sum);

47上述程序的输出结果是()O〜02672026806E2编程打印如下形式的九九表12342468918918273681〜0268main(){for(inti=l;i<=9;i++){for(intj=l;j<=9;j++)printf("%4d",i*j);printf('

48");026908E1编写一个函数,计算x的n次方'0269longpower(intx,intn){longp=l;for(inti=l;i<=n;i++)p*=X;return(p);'027007E2有一个3*4的矩阵,编程求其中最大元素的值〜0270voidmain(){inta[3][4],max;for(inti=0;i<3;i++)for(intj=0;j<4;j++)scanf("%d”,&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(intj=0;j<4;j++)if(a[i][j]>max)max=a[i][j];printf(,,max=%d,z,max);它能够对从指定位置开始的n个数按相反顺序重新排列。例如数列原为:1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20若要求对从第5个数开始的10个数进行逆序处理,则得到新数列为:1,2,3,4,14,13,12,11,10,9,8,7,6,5,15,16,17,18,19,20数列中的数在main中输入,在调用函数时应给出从第几个位置开始(m表示)和要处理的是多少个数(n表示)。在main中输出新的数列。,0271voidrevert(inta[],intm,intn){intI,j,t;for(I=m-1,j=n+m-2;I#include#defineM100'027108E2有一个数列,有20个整数,要求编一个函数,voidfun(intm,int*a,int*n)main(){intaa[M],n,k;fun(50,aa,&n);for(k=O;k

49n);elseprintf("%4d”,aa[k]);printf("

50");}

51〜0272voidfun(intm,int*a,int*n){inti,j,*n=0;for(i=l;i<=m;i++)if(i%7==0||i%ll==0){a[j]=i;*n++;j++}027606A2以下循环体的执行次数是A,3B、2C、1D、0main(){inti,j;for(i=0,j=l;i<=j+l;i+=2,j—)printf(tt%d

52w,i);}'0276C028110A2若定义函数int*funcl(),贝ijfuncl的函数返回值是()oA、整数B、指向函数的指针C、整型数的地址D、以上说法均错〜0281C028308A1C语言中形参的默认存储类别是()。A、自动(auto)B、静态(static)C、寄存器(register)D、外部(extern)'0283A'028411A2已知函数定义的形式如下:structdata*f(void)则函数f()A、没有参数,返回值是一个结构B、有一个参数void,返回值是一个结构C、没有参数,返回值是一个结构指针D、有一个参数void,返回值是一个结构指针〜0284C028510A1对于int*pa[5];的描述,()是正确的A、pa是一个指向数组的指针,所指向的数组是5个int型元素B、pa是一个指向某数组中第5个元素的指针,该指针是int型变量C、pa[5]表示某个数组的第5个元素的值D、pa是一个具有5个元素的指针数组,每一个元素是一个int型指针,0285D028605A1在C语言中,switch语句后一对圆括号中表达式的类型()A、可以是任何类型B、只能是int类型C、可以是整型或字符型D、只能是整型或实型'0286C029307C2intf(intb[],intn){inti,r=l;for(i=0;i<=n;i++)r=r*b[i];returnr;)main(){intx,a[]={2,3,4,5,6,7,8,9};x=f(a,3);printf("%d",x);)〜0293120029405C2main(){intx=l,y=0,a=0,b=0;switch(x)

53{case1:switch(y){case0:a++;break;case1:b++;break;)case2:a++;b++;break;)printf(zza=%d,b=%d

54,z,a,b);}〜02点a=2,b=l029506C1main(){intx=2;while(x-);printf(“%d”,x);)'0295'029610C2main(){inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23);int(*p)[4]=a,i,j,k=0;for(i=0;i<3;i++)for(j=0;j<2;j++)k=k+*(*(p+i)+j);printf(w%dw,k);)〜029660029710C3fun(int**s,intp[2][3]){**s=p[l][1];}main(){inta[2][3]={1,3,5,7,9},*p;p=(int*)malloc(sizeof(int));fun(&p,a);printf("%d",*p);}〜02979'029806D2当执行下面的程序段后,i,j,k的值分别为(),(),()ointa,b,c,d,i,j,k;a=10;b=c=d=5;i=j=k=O;for(;a>b;++b)i++;while(a>++c)j++;dok++;while(a>d++);'02985,4,60299I0D2函数fun的功能是根据下面的公式s=l-l/3+l/5-l/7+l/(2nT)计算s的值,通过形参指针sn传回s的值;n通过形参传入,n的值大于等于0.voidfun(float*sn,intn){floats=0.0,w,f=-l.0;int1=0;for(1=0;I<=n;I++)(f=()*f;w=f/(2*1+1);s+=w;)=S;'0299-1、*sn030301B1C的整数可以用()、()、和()三种进位制表示。十六0303八十030803B1表达式'03083.5+1/2的计算结果是()o3.5030904B1调用C语言对字符处理的库函数时,在#include命令行中应包含的头文件是(〜03嚷string,h

55若有定义inty=7;floatx=2.5,z=4.7,则下031103B面表达式的值为()x+(int)(y/3*(int)(x+z)/2)%4o5.5031504A2以下程序的输出的结果是()A、9D、B、618c、36#definef(x)x*xmain(){inta=6,b=2,c;c=f(a)/f(b);printf(“%d

56",c);)'0315C031611A2以下程序的输出的结果是()A、6B、4C、2D、不确定main(){struct{chari[2];intk;}r;printf(w%d

57M,sizeof(r));)'0316A031903A2设inta=10,c=9;则表达式(-a==c++,--a,++c)的值是()A、12B、11C、9D、10'0319B032103A1若变量已经正确定义并赋值,符合C语言语法的表达式是()A、a=a+7;B、a=7+b+c,a++C,int(12.3%4)D、a=a+7=c+b'0321B032407C2#includeintp(intk,inta[]){intm,i,c=0;for(m=2;m<=k;m++){for(i=2;i<=m;i++)if(!(m%i))break;if(i==m)a[c++]=m;)returnc;}ttdefineMAXN20main(){inti,m,s[MAXN];m=p(13,s);for(i=0;i

58");)程序输出结果为();函数intp(intk,inta[])的功能为()'0324235711求以k以内(含k)质数,并依次存入数组a中,返回质数个数。032507D3在n行n列的矩阵中,每行都有最大的数,本程序求这n个最大数中的最小一个。#include#defineN100inta[N][N]voidmainO{introw,col,max,min,n;/*输入合法n«100),和输入n*n个整数到数组a的代码略*/for(row=0;row

59",min);}'0325a[row][col]>maxmaxmax)max=*p;elseif(*p

60p=number;printf(“输入10个数据:

61);for(i=0;i<10;i++,p++)scanf(%d“,P);(_);max_min_value(p,10);printf(wmax=%-10dmin=%d

62w,max,min);}'0326int*pp=array+lp=number032705E1设m,n为正整数,且m

63n,s);}'032805E3编写函数,完成以下功能,寻找并输出11到999之间数M,满足M,M平方,M立方均是回数。'0328intjsvalue(longn){inti,strl,half;charxy[20];itoa(n,xy,10);strl=strlen(xy);half=strl/2;for(I=0;I=half)return1;elsereturn0;}032907D3函数strcpyO将字符串from复制到字符串to。voidstrcpy(_){while(_);)一,0329char*to,char*from或char*from,char*to*to++=*from++033004D1以下程序把大写字母A-Z转换成对应的小写字母a-z,其它字符不转换。main(){charch;scanf("枇

64",_);ch=()?ch+32:ch;printf(<

65w,ch);}'0330&chch>='A'&&ch<=,V033105E2编写计算斐波那契(Fibonacci)数列第n项的递归函fib(n)o斐波那契数列为:0,1,1,2,3,5—-"0331intfib(intn){if(n==0)return(0);if(n==l)return(1);if(n>l)return(fib(n-2)+fib(n-1));}033207E3以下程序是一个函数,功能是求二阶矩阵(m行n列矩阵)的所有靠外侧的各元素值之和。(本程序中二阶矩阵用一维数组来表示)例如:矩阵为:300325731042则所有靠外侧的各元素值之和为18。'0332add(intm,intn,intarr[])inti,j,sum=O;for(i=0;i

66ver(str);printf("%s

67",str);)ver(_)charstr口;(chart;inti,j;for(i=0,j=strlen(str);i0)return_);else(_);}〜0334a[0]+sum(a+1,n-1)或sum(a,n-l)+a[n-l]或sum(a,n/2)+a[n/2]+sum(a+n/2+1,n-n/2-1return0033507D2对数组中的元素值进行排序#includemain(){inta[]={2,4,15,3,17,5,8,23,9,7,11,13},i,j,k;for(k=0;k<12;k++)for(i=k;i<12;i++)if(a[i]>){j=a[i];a[i]=;=j;}for(i=0;i<12;i++)printf("%4d",a[i]);printf("

68");)'0335a[k]a[k]a[k]033605D2爱因斯坦的阶梯问题。设有一阶梯,每步跨2阶,最后余1阶;每步跨3阶,最后余2阶;每步跨5阶,最后余4阶;每步跨6阶,最后余5阶;只有每步跨7阶时,正好到阶梯顶。问至少有多少阶梯。main()(inta=7;while()a+=(—);printf('"Flightofstairs=%d

69z,,a);)'0336a%2!=l||a%3!=2||a%5!=4||a%6!=51033708E3用递归方法实现,求an的函数(其中a是实数,n是自然数),0337floatmi(floata,intn){floaty;if(n==0)y=l;

70elsey=mi(a,n-l)*a;returny;SincludestructSTU{charname[10];intnum:}voidf(char*name,intnum){structSTUs[2]={{“SunDan”,20044},{“Penghua”,20045}}num=s[0].num;strcpy(name,s[0].name);)main(){structSTUs[2]={{“YangSan”,20041},{“LiSiGuo”,20042}},*P;p=*s[1];f(p->name,p->num);printf(u%s%d”,p->name,p->num);)程序运行后的输出结果是()A、SunDan20042B、SunDan20044C,LiSiGuo20042D、YangSan20041'0338A033905E2编写程序,打印出所有的“对等数”。“对等数”是指一个三位数,其各位数字的和与各位数字的积的积等于该数本身。例如:144=(1+4+4)*(1*4*4)"0339main()(inta,b,c,k;for(k=100;k<1000;k++){a=k/100;b=(k-100*a)/10;c=k%10;if(k==(a+b+c)*a*b*c)printf("%d,”,k);034007E2编写一个函数insert(inta[],intn,intx),功能是向--个有序数组a插入一-个数x,原数组仍然有序。其中,n为a数组中的元素个数。0340voidinsert(inta[],intn,intx)(inti;for(i=n-l;i>=0;i-)if(a[i]>x)a[i+l]=a[i];elsebreak;a[i+l]=x;034108E2用递归方法实现,求1+2+3+…+n的和。(其中n是自然数)。"0341inthe(intn){inty;if(n==l)y=l;elsey=he(n-l)+n;returny;034203B1C语言的基本数据类型有()、()、()o"0342整型实型字符型034311B1使儿个不同的变量共占同一一段内存的结构,称为()类型的结构。'0343共用体034403B1C语言中逻辑值“假”用()表示。'03440034503B1一"f'C语句中至少包含一个()oC语言中逻辑运算符优先级按由低到高分别是'0346

71”;或分号034703B1若x是int型变量,且x=6,则表达式(x%2+(x+l)/2)的值为()0〜03473?034813A1若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为A、0B、1C、-1D、一个非0值〜0348A034903B2设inta=10,c=9;则表达式(-a==c++?--a:++c)的值是()o〜03498035003C2若有说明intx=10,y=20;请写出下面各printf语句对应的输出结果。fp=fopen("file","w");C、fp=fopen("file","r+");D、fp=fopen("file","w+”);'0352A035308A2下列定义中不正确的是()oA、intp;B、intp[n];它对么?C、int*p(n);D、int(*p)();E、int**p;"0353C035408A1以下关于函数的叙述中正确的是A、每个函数都可以被其它函数调用(包括main函数)B、每个函数都可以被单独编译C、每个函数都可以单独运行D,在一个函数内部可以定义另一个函数,0354B①printf("%3x

72",x+y);x是十六进制的数o是八进制的数。有以下程序();②printf(a%3o

73v,x*y);();③printf("%3o

74”,x%y);();printf("%3x

75",(x/y,x-y,x+y));()|逗号运算选最后面的o'0350le31012le035103B1若k为int型变量且赋值11。请写出运算k++后表达式的值()和变量的值()o'03511112?035213A1用只读方式打开一个文件“file”,下列正确的是()A、fp=fopen("file",“r");B、main(){inta[10]={l,2,3,4,5,6,7,8,9,10},*p=&a[3],*q=p+2;Printf(w%d

76w,*p+*q);有以下程序main(){charp[]={'a','b','c'},qD="abc";printf(w%d%d",sizeof(p),sizeof(q));

77程序运行后的输出结果是A、44B、33C、34D、43〜0357C035806A2以下程序的输出结果是()ointx=3;do{printf(“刎”,x-=2);}while(!(一x));A、1B、30C、1-2D、死循环〜0358C035910B2下列语句执行后的结果是()omain(){intarr[]={30,25,20,15,10,5},*p=arr;p++;printf(“为d

78”,*(p+3));)'035910036010C2voidfun(int*n){while(*n)—};Printf(“%d”,++(*n);}main(){inta=100;fun(&a);)'03600036103A2以下程序的输出结果是main(){intx=0.5;charz='a";printf(K%d

79w,(x&l)&&(z<,z'));}A、0B、1C、2D、〜0361__更多考试资料来自投主页.036210A1下列程序的输出结果是main(){chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;printf(“%d”,*—p);)A、非法B、a[4]的地址C、5D、3〜0362C036310A1经过下面的语句inti,a[10],*p;定义后,下列语句中合法的是()oA,p=100;B、p=a[5];C^p=a[2]+2;D、p=&(i+2);E、p=a+2;'0363E036410A1经过下面的语句inti,a[5],*p;定义后,下列语句中合法的是()oA、p=a;B、p=a[5];C、p=a[2]+2;D、p=&(i+2);E、p=**a;'0364A036503B1静态双精度实型变量flag;'0365ststicdoubleflag;036607B1指向具有5个数据元素的长整型数组的指针变量p;'0366longint(*p)[5];036703B3表示时间的变量t;'0367struct{unsigndeh,m,s;}t;036807B2表示班级60名学生姓名的数组xm;〜03璃charxm[61][10];036911B3

80printf(,i);定义类型COLOR为具有五种颜色(用英文表示颜色)的枚举类型。'0369typedefenumcolor{red,blue,white,green,yellow)COLOR;'037006E3计算six,nine满足six+six+six=nine+nine/*注:由于有SIX+SIX+SIX=NINE+NINE*/〜0370voidcountvalue(){inti;printf(n

81H);for(i=666;i<=999;i=i+2)if(i/10%10==(3*i/2)/100%10)/*以I为准*/{cnt++;sum+=i+3*i/2;}}037108C2#includemain(){intI,s;for(i=0;i<2;i++){s=fun();printf("%d

82",s);})intfun(){intlv=0;staticintsv=0;sv+=lv++;returnsv;inti,x,y,t;chara,b;scanf(,&i);if(i>10)a=i&0x000f;b=(i«2)&0x00ff;printf("%x\t%x

83”,b,a);当程序运行时输入11之后,执行的输出结果是:()'0372114411037308C3本程序运行时,当分别输入字符串“ABCD”和“1234”时,输出结果是什么?charcon(stringl,string2,string)charstringl[],string2[],string[];(inti,j;for(i=0;stringl[i]!='\0';i++)string[i]=stringl[i];for(j=0;string2[j]!=>\0';j++)string[i+j]=string2[j];string[i+j]=\0);)main()(charsl[100],s2[100],s[100];scanf("%s”,si);scanfs2);con(si,s2,s);printf("/s

84",s);}〜0373ABCD1234037107E2编写一个函数S,对数组从小到大进行排序。〜0374#includevoids(intb[],intn){inti,j,t,fig;for(i=0;ib[j+l]{t=b[j];b[j]=b[j+l];b[j+l]=t;flg=l;037504C1以下程序的功能是什么()main()

85{charch;scanf("%c

86",&ch);ch=(ch>=,A'&&ch<=,Z')?ch+32:ch;printf(Kchar=%c

87w,ch);)、0375融大写字母A-Z转换成对应的小写字母a-z,其它字符不转换。037605D2本程序从键盘输入n(0#defineN100voidmain(){inta[N],n,i,j,ind,cl,c2;do{printf("输入n(0

88");scanf("%d",&n);}while(n<=0||_);printf(“输入惠组元素:

89”);for(i=0;ia[ind]){c2=cl;;printf("其中%d出现%d次

90”,a[ind],c2);}'0376n>=100cl++或cl=cl+lcl>c2ind=i'037705A1设有程序段intk=10;while(k=0)k=k-l;则下面的描述正确的是()A、while循环执行10次B、循环是无限循环C、循环体语句一次也不执行D、循环体语句执行一次'0377C037805A1设有以下程序段intx=0,s=0;while(!x!=0)s+=++x;printf("%d”,s);贝IJ()A、运行程序段后输出0B、运行程序段后输出1C、程序段中控制表达式是非法的D、程序段执行无限次'0378B037903A1语句while(!E);中的表达式!E等价于()A、E==0B、E!=1C,E!=0D、E==l'0379A038005A2下面程序段运行结果是()a=l;b=2;c=2;while(a

91'0382C'038305A3设有程序段t=0;while(printf()){t++;if(t<3)break;)下面描述正确的是()A、其中循环控制表达式与0等价B、其中循环控制表达式与'0’等价C、其中循环控制表达式是不合法的D、以上说法都不对'0383038405A2下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对相等数时结束循环,请选择填空ttincludemain(){inta,b,t;scanf("%d%d”,&a,&b);while(_){if(a>b){t=a;a=b;b=t;}printf("%d,%d

92w,a,b);scanf(“%d%d”,&a,&b);A>!a=bB、a!=bC、a二二bD、a二b,0384B038505A2下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n中的较大者,请选择填空#includemain(){intm=0,n=0;charc;while(([1])!='

93'){if(c>=,A'&&c<='7?)m++;if(c>=,a'&&c<=,z')n++;}printf(w%d

94v,mc!=getchar()B、getchar()C、c=getchar()D、scanf(,c)[2]A、n:mB、m:nC>m:mD、n:n~0385[1]C【2】A038605D1下面程序段是找出整数的所有因子,填空scanf("%d",&x);i=l;for(;[];){if(x%i==O)printf(“%3d”,i);i++;)'0386i〈=x038705D1鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空for(x=l;x<=29;x++){y=30-x;if([1])printf(K%d,%d

95”,x,y);}-03872*x+4*y=90038805C2下面程序段的运行结果是()for(a=l,i=-l;-K=i

96的值,请填空Sincludemain()A、inti,t=l,s=0;for(i=l;i<=101;i+=2){[11;s=s+t;[2];}printf(a%d

97w,s);)'0390t=t*it=-t/i039108A1以下说法正确的是()建立函数的目的之一-是,A、提高程序的执行效率B、提高程序的可读性C、减少程序的篇幅D、减少程序文件所占内存~0391B039208A1以下正确的说法是()A、用户若需调用标准库函数,调用前必须重新定义B、用户可以重新定义标准库函数,若如此,该函数将失去原含义C、系统根本不允许用户重新定义标准库函数D、用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调'0392B039308A1以下正确的函数定义形式是()A、doublefun(intx,inty)B、doublefun(intx;inty)C、doublefun(intx,inty);D、doublefun(intx,y);'0393A039408A1以下正确的说法是()在C语言中A、实参和与其对应的形参各占用独立的存储单元B、实参和与其对应的形参共占用一个存储单元C、只有当实参和与其对应的形参同名时才共占用存储单元D、形参是虚拟的,不占用存储单元"0394A039508A1若调用一个函数,且此函数中没有return语句,则正确的说法是()A、没有返回值B、返回若干个系统默认值C、能返回一个用户所希望的函数值D、返回一个不确定的值"0395D039608A1以下不正确的说法是()C语言规定A、实参可以是常量、变量或表达式B、形参可以是常量、变量或表达式C、实参可以为任意类型D、形参应与对应的实参类型--致B039708A1以下正确的说法是()A、定义函数时,形参的类型说明可以放在函数体内B、return后边的值不能为表达式C、如果函数值的类型与返回值类型不一致,以函数值类型为准D、如果形参与实参类型不一致,以实参类型为一_准'0397C039808A1

98C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是()A、地址传递B、单向传递C、由实参传给形参,再由形参传回给实参D、由用户指定传递方式'0398B039908A2C语言允许函数值类型缺省定义,此时该函数值隐含的类型是()A、floatB、intC、longD、double"0399B040008A2C语言规定,函数返回值的类型是由()A、return语句中的表达式类型所决定B、调用该函数时的主调函数类型所决定C、调用该函数时系统临时决定D、在定义该函数时所指定的函数类型所决定'0400D040108B1函数由()和()两部分组成。"0401函数说明部分、函数体'040201B2C的构造类型有()、()和(~0402数组、结构体、共用体040308C2inta=5;fun(intb){staticinta=10;a+=b++;printf("%d",a);)main(){intc=20;fun(c);a+=c++;printf(n%d

99H,a);)"04033025040403B1C语言中逻辑值“真”用()表示。"0404]'040508B2C程序总是从()开始执行,其顺序结构是通过()体现出来的。,0405主函数、书写顺序040603A2main(){unsignedchara,b,;a=7'3;b=~4&3;printf(K%d%d

100w,a,b);)A、43B、73C,70D、40'0406A040703B1C语言的关系运算符有(〉,>=,<,<=,=,!=)、逻辑运算符有()o"0407&&,U,!040803B3设有定义:printf(“%d

101”()~04(®]040903B3设intx=l,(),04090041003B3设inta=10,c=9intx=l,y=-l;则语句:,x—|++y);的输出结果是y=l;表达式(!x||一y)的值是则表达式(―a==c++?c-a:++c)的值是()'04101要打开一个已存在的非空文件“file”用于修改,选择(A、fp=fopen("file","r");B、fp=fopen("file","w");C、fp=fopen("file","r+");D、fp=fopen("file","w+");〜0411C041203A2设有inta=20:执行完语句a-=a*a;后,a的值是()A、552B、144C、264D、-380〜0412

102D041310A3有以下程序voidfun(char*a,char*b){a=b;(*a)++;}main(){charcl='A',c2='a',*pl,*p2;pl=&cl;p2=&c2;fun(pl,p2);printf(,z%c%c

103,z,cl,c2);)程序运行后的输出结果是()A、AbB、aaC、AaD、Bb“0413A041407A2以下能正确定义一维数组的选项是()A、intnum[];B、#defineN100intnum[N];C、intnum[0..100];D、intN=100;intnum[N];〜0414B041503A1设有intx=l,y=8;则表达式(x+4<=y-3<=xT)的值是()A、1B、0C、3D,4〜0415B'041611C2#defineNAMESIZE20#defineADDRSIZE100structbirthday(intyear;intmonth;};structperson(charnamefNAMESIZE];structbirthdaydate;charaddress[ADDRSIZE];longzipcode;);structpersonp={*YangDeZhong*,{1984,12},*JiLinroad",130021};main()printf("%d,%d

104”,p.date,year,p.date,month);}-04161984,12041711C3main(){union{chari[2];intk;}r;r.i[0]=2;r.i[l]=0;printf("%d

105",r.k);}〜04172041809A3有以下程序输出结果是()#definef(x)(x*x)main(){intil,i2;il=f(8)/f(4);i2=f(4+4)/f(2+2);printf("%d,%d

106”,il,i2);)A,64,28B、4,4C>4,3D、64,64〜0418

107c041907D2以下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。例如:输入的两个字符串分别为abcdef和abceef,则输出为T.请填空。ttincludemain(){charstr[100],str2[100],c;inti,s;printf("、ninputstring1:、n");gest(strl);printf("、ninputstring2:、n”);gest(str2);i=0;while((strl[i]==str2[i]&&(strl[i]!=—))I++;s=;printf("%d、n”,s);}"0419_\0_strl[i]-str2[i]042005C2以下程序运行后的输出结果是main(){inta=l,b=2,c=3;if(c=a)printfc);elseprintfb);)'0420]'042108D1请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。(double,double);main(){doublex,y;scanf(z,%lf%lf,z,&x,&y);printf(〃%lf

108”,max(x,y));)doublemax(doublea,doubleb){return(a>b?a:b);}“0421doublemax__更多考试资料来自投主页.042210A3设有如下定义:int(*ptr)*();则以下叙述中正确的是()A、ptr是指向一维组数的指针变量B、ptr是指向int型数据的指针变量C、ptr是指向函数的指针,该函数返回一个int型数据D、ptr是一个函数名,该函数的返回值是指向int型数据的指针'0422C042311A2以下对枚举类型名的定义中正确的是()A、enuma={one,two,three);B、enuma{one=9,two=1,three};C、enuma={"one","two","three”};D、enuma{"one","two","three”};〜0423B'042403B2设有intx=0,y=l,a=2,b=3,c=4;则逻辑表达式(!(x=a)&&(y=b)&&c)的值();x的值();y的值()〜04240、2、1042508B3intfunc(){staticints=0;intx=10;return(s+=x);}第2次调用函数时返回值为()〜042520042603B2设有intm=10,n=0,a=3,b=4;则执行完语句if((m!=n)&&(a=n)&&(b=m))m+=l;后变量b的值()'04264042703B3设有inta=12;执行完语句a+=a-=a*a;后,a的值是(),0427-264

109042803A2printf("%d,%o,%x

110,z,a,a,a);在C语言中,正确的int类型的常量是()A、32768B、-32769C、”fdjs”D、OXaf'0428Dprintf("机0.2f%-10.2f%.2f

111”,b,b,b);printfC,x/y=%d

112x*y=%d

113//,x/y,x*y);printfC%d+%d=%d

114z,,x,y,x+y);042904A2printf(〃%d*****%7.2f

115”,-a*y,设有inta=3,b=4;语句printf(K%dw,(a=2)|(b=-2));的输出结果是()A、无输出B、结果不确定C^-1D、0"0429Db*y);printf(/z%3d%3d%3d\tzz,x&&4

116”,-a++);}'0435-2,177776,fffe2.502.502.50x*=y+4,043003A2x/y=3设有定义:intx=l,y=-l;,则语句:printf(<<%d

117v,x-&++y);的输出结果是()A、1B、0C、-1x*y=3010+3=136*****7.50010123=70,789=2D、2043607C2'0430B有以下程序intsub(intn){return(n/10+n%10);}043109A2main()以下程序的输出的结果是()A、11B、3C、36D、18#definef(x)x+xmainO{inta=6,b=2,c;c=f(a)/f(b);printf("%d

118”,c);{intx,y;scanf(“%d",&x);y=sub(sub(sub(x)));printf("%d

119”,y);若运行时输入:123〈回车〉,程序的输出结果是"04366)043807D3"0431有一个已排好序的一维数组。现输入一个数,要求按原来排序的规律将它插入数组中。'043407A2main()设staticinta[10]={2,4,6,8,10};int*p=a;则表达式(*p++**++p)的值是()A、2B、6C、10D、不确定'0434B(Statica[ll]={l,4,6,9,13,16,19,28,40,100};inttempi,temp2,number,end,j,i;for(i=0;i<10;i++)printf("%5d”,a[i]);int043504C2printf("

120");main()b=2.5;{inta=2,x=10,y=3;floatscanfftnumber);end=a[9];

121if(number>end)else(for(i=0;i<10;i++)(if(a[i]>number)(templ=a[i];a[i]=;for(j=i+l;jnumber,templ=temp2043907D2以下函数sstrcatO的功能是实现字符串的连接,即将t所指字符串复制到s所指字符串的尾部。#includevoidsstrcat(char*s,char*t){intn;n=strlen(s);while(*(s+n)=){s++;t++;})'0439杜044008A1若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()A、函数调用可以作为独立的语句存在B、函数调用可以作为一个函数的实参C、函数调用可以出现在表达式中D、函数调用可以作为一个函数的形参~0440D044110A2已定义以下函数fun(char*p2,char*pl){whiIe((*p2=*pl)!=W){pl++;p2++;}}函数的功能是()A、将pl所指字符串复制到p2所指内存空间B、将pl所指字符串的地址赋给指针p2C、对pl和p2两个指针所指字符串进行比较D、检查pl和p2两个指针所指字符串中是否有第-0441A'044208A2下列函数定义中,会出现编译错误的是()A、max(intx,inty,int*z)intmax(intx,y){*z=x>y?x:y;}{intz;z=x>y?x:y;returnz;}C、max(intx,inty)D、intmax(intx,inty){intz;{return(x>y?x:y);}z=x>y?x:y;return(z);)'0442'044603A2有以下程序main(){inta,b,d=25;a=d/10%9;b=a&&(T);printf(*%d,%d

122”,a,b);)程序运行后的输出结果是()A,6,1B、2,1C、6,0D>2,0'0446B045103A2

123数字字符0的ASCII值为48,若有以下程序main(){chara=,],,b=,2";printf("%c,",b++);printf(zz%d

124/,,b-a);)程序运行后的输出结果是()A,3,2B、50,2C、2,2D、2,50~0451C045201A2一个完整的可运行的C源程序是().A、至少要由一个主函数和(或)一个以上的辅函数构成B、由一个且仅由一个主函数和零个以上(含零)的辅函数构成C、至少要由-一个主函数和一个以上的辅函数构成D、至少由一个且只有一个主函数或多个辅函数构成'0452B'045310A2C语言的说明语句"char*line[5];”的含义是指().A.line是一个数组,其数组的每一个元素是指向字符的指针B.line是一个指针,指向一个数组,数组的元素是为字符型C、A和B均不对,但它是C语言正确的语句D、C语言不允许这样的说明语句'0453A045403A1设有下面的程序段:inti,j;floatx,y;chara[20],b[20];scanf("%3d%f%2s",&i,&x,a);scanf&j,&y,b);当键盘输入如下时:3704967C658426FB其执行结果是()A、i=370x=496.0a=7Cj=658y=42.0b=6FBB、i=370x=4.0a=96j=7y=C6b=5C、i=370x=6.0a=7Cj=658y=42b=6D、i=370x=496a=7Cj=658y=42b=6FB"0454A045511A2请读下面初始化程序段:staticcharA[]="ABCDEF”;staticcharB[]={'A','B','C','D','E','F'};则下列叙述正确的是:()A、A和B完全相同B、A和B只是长度相等C、A和B不相同,A是指针数组D、A数组长度比B数组长'0455D045610A2指针引用可以出现在赋值号左端。若pi指向x,那么*pi=0,即将x置为0;问:*pi+=l;是把x的值增加1,这等价于:()A、*pi++B、(*pi)++C、pi+=lD、pi=pi+l'0456B045706A2请读下列函数:intstrsub(char*a){intn=0;while(*a++)n++;return(n);)A、6B、7C、8D,9若此函数调用时,字符串a赋值为"ABCDEF",则返回值是:()A045807A2请读下面程序:#includechara[2][3]={{'A','B','C'},{‘D','E','F'},{'G','H'/I'}};main(){inti;

125for(i=0;i<3;i++)printf(*%d*,*(*(a+i)+i));)程序的输出结果为:()A、AEIB、不确定的值C、ABCD、分别为a[i,i]的地址'0458A045908A2若已知:intx;inty[];则下面表达式合法是:()A、&xB、&(x+3)C、&5D、&y"0459A046106C2当a=27b=63时,写出下面程序的运行结果.ttincludeintgbs(inta,intb){intc;a=a>0?a:-a;b=b>0?b:-b;c=a*b;if(c==0)return(0);while(a!=b)if(a>b)a-=b;elseb-=a;return(c/a);)intgys(inta,intb)(if(a*b==0)return(0);a=a>0?a:"a;b=b>0?b:-b;while(a!=b)if(a>b)a-=b;elseb-=a;return(a);)voidmain(void)(inta,b,c,d;scanf(,z%d%d,,,&a,&b);c=gbs(a,b);d=gys(a,b);printf(,za=%db=%dgbs=%dgys=%d

126,z,a,b,c,d);"0461a=27b=63gbs=189gys=9046206C2执行下面程序后屏幕上显示的结果是什么?Sincludeintf(inta){intb=0;staticc=3;b++,c++;return(a+b+c);)voidmain(void)(intx=3,i;for(i=0;i<3;i++)printf(,z%d”,f(x));)〜04628910046303C2下面程序产生的结果是什么?(3分)Sincludevoidmain(void)(printf(z,

127%d%x%o,z,19,19,19);printf(,z

128%d%x%o,z,Oxlc,Oxlc,Oxlc);printf('

129

130");)〜0463―191323>281c34046403A2main(){inta=l,b=2,m=0,n=0,k;k=(n=b>a)|(m=a

131〃,k,m);)程序运行后的输出结果是()A>0,0B、0,1C、1,0D、1,1切4殿c046803B2若x是int型变量,且x=6,则表达式

132(x%2+(x+l)%2)的值为()o'04681046910A1若有定义:int*p[3];,则以下叙述中正确的是()A、定义了一个基类型为int的指针变量p,该变量具有三个指针B、定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针C、定义了一个名为*p的整型数组,该数组含有三个int类型元素D、定义了•个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素'0469B047410A2设有说明int(*ptr)[M];,其中标识符ptr是()A、M个指向整型变量的指针B、指向M个整型变量的函数指针C、一个指向具有M个整型元素的一维数组的指针D、具有M个指针元素的一维指针数组,每个元素都只能指向整型量"0474C'047503A2设有intx=5,y=8;则表达式(x+5<=y-3

133,,>class[2].name);B、printf(''%s

134z,,class[2].name[0]);C、printf(,'%s

135,,)class[1].name);D、printf(''%s

136z,,class[1].name[0]);'0476C047709A2以下程序的输出结果是。A、11B、12C、13D、15Sinclude''stdio.h"SdefineFUDGF(y)2.84+y#definePR(a)printf(''%dz,,(int)(a))#definePRINT1(a)PR(a);putchar('

137z)main(){intx=2;PRINTl(FUDGF(5)*x);)"0477B048003A2执行下面的语句后,表达式*(p[0]+D+**(q+2)的值为()inta[]={5,4,3,2,1},*p[]={a+3,a+2,a+1,a},**p=q;A,8B、7C>6D、5'0480D048203C2main()(inta=-3,x=10,y=3;floatb=2.5;printf(〃%d,%o,%x

138z,,a,a,a);

139printf(z,%10.2f%-10.2f%.2f

140",b,b,b);printf("x/y=%d

141x*y=%d

142〃,x/y,x*y);printf(zz%d+%d=%d

143z,,x,y,x+y);)、0482-3,177775,fffd2.502.502.50x/y=3x*y=3010+3=13■48306C2#includemain(){inti;for(i=0;i<2;i++)as();)as(){intlv=0;staticintsv=0;printf(Vlv=%d,sv=%dzz,Iv,sv);lv++;sv++;return;)'0483lv=0,sv=0lv=0,sv=l'048403C2main()(inti,x,y,t;chara,b;scanf&i);if(i>10)(printfi);a=i&0x000f;b=(i»8)&0x00ff;printf(、'%x\t%x

144〃,b,a);)elsex=2;y=4;t=x+i%3*(int)(x+y)%2/4;printf(、'%d

145",t);问题1:当程序运行时输入67之后,执行的输出结果是问题2:当程序运行时输入7之后,执行的输出结果是o〜04844303,2048506C2#includevoids(intb[],intn){inti,j,t,fig;for(i=0;ib[j+l]{t=b[j];b[j]=b[j+l];b[j+l]=t;flg=l;)if(!fig)break;main(){inti,a[]=9,2,5,3,7};s(a,6);for(i=0;i<6;i++)printf(''%4dw,a[i]);printf(、'

146");'04852357911048608E2从键盘输入一个不多于4位的正整数,编程求该数各位数值之和。多:输入3126时,输出12o'0486

147main(){intm,a,b,c,d,s=0;scanf&m);

148a=m/1000;b=(m-a*1000)/100;c=(m-a*1000-b*100)/10;d=m%10;s=a+b+c+d;printf(''%d

149z,,s);048703A2C语言中最简单的数字类型包括0A、整型、实型、逻辑型B、整型、实型、字符型C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型"0487B048906A2要求以下程序的功能是计算:s=1+1/2+1/3+……+1/10main(){intn;floats;s=1.0;for(n=10;n>l;n—)s=s+l/n;printf("%6.4f

150",s);}程序运行后输出结果错误,导致错误结果的程序行是()A>s=1.0;B、for(n=10;n>l;n—)C、s=s+l/n;D、printf("%6.4An",s);'0489C'049106D2下面程序的功能是将八进制正整数组成的字符串转换为十进制整数,请选择正确内容填空。#includemain(){char*p,s[6];intn;p=s;gets(p);n=①;while(_②!='\0')n=n*8+*p-'0’;printf("%d

151",n);①A、0B、*pC、*p-'0’D、*p+'0’②A、*pB、*p++C、*(++p)D、p"0491C、C049210A2经过下面的语句inti,af10],*p;定义后,下列语句中合法的是()oA、p=100;B、p=a[5];C>p=a[2]+2;D、p=&(i+2);E、p=a+2;,0492E049308A2以下程序的输出结果是()oA、11.10B、12.00C、21.10D、1.10voidfun(float*pl,float*p2,float*s)(s=(float*)malloc(1,sizeof(float));*s=*pl+*p2++;)main(){floata[2]={l.l,2.2},b[2]={10.0,20.0),*s=a;fun(a,b,s);printf("%5.2f

152",*s);)'0493D049510B2定义指向具有5个数据元素的长整型数组的指针变量plongint(*p)[5];049601B2定义类型COLOR

153为具有五种颜色(用英文表示颜色)的枚举类型。"0496typedefenumcolor{red,blue,white,green,yellow}COLOR;

154049706D2以下程序的功能是输出如下形式的方阵,请填空。13141516910111256781234main(){inti,j,x;for(j=4;j;j-){for(i=l;i<=4;i++){x=(j-l)*4+:printf("%4d”,x);}printf("

155”);})〜0497>0、i*015807A2若有说明charsi[5],s2[7];要给si和s2赋值,下列语句正确的是()A^scanf(u%s%sn,&sl,&s2);B、gets(si,s2);C、scanf("%s%s",si,s2);D、sl=getchar();s2=getchar();“陶C015903A2阅读下列程序,程序的运行结果是()#include"stdio.h"main(){charx=,a9;clrscr();putchar(x);putchar("b*);putchar(x+2);putchar(‘b'+2);}A、aabbB、abed

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭