国家二级(C语言)章节练习试卷2(共109题)_第1页
国家二级(C语言)章节练习试卷2(共109题)_第2页
国家二级(C语言)章节练习试卷2(共109题)_第3页
国家二级(C语言)章节练习试卷2(共109题)_第4页
国家二级(C语言)章节练习试卷2(共109题)_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国家二级(C语言)章节练习试卷2(共9套)(共109题)国家二级(C语言)章节练习试卷第1套一、选择题(2分)(本题共8题,每题1.0分,共8分。)1、若以下程序所生成的可执行文件名为filel.exe,当执行该程序时输入FILE1CHINABEIJINGSHANGHAI,程序的输出结果是______。main(intargc,char*argv[]){while(--argc>0){++argv;printf("%s",*argv);}}A、CHINABEIJANGSHANGHAIB、FILE1CHINABEIJNGC、CBSD、FCB标准答案:A知识点解析:暂无解析2、不合法的main函数命令行参数表示形式是______。A、main(inta,char*c[])B、main(intarc,char**arv)C、main(intargc,char*argv)D、main(intargv,char*argc[])标准答案:C知识点解析:暂无解析3、若有以下说明和定义fun(int*c){...}main(){int(*a)()=fun,(*b)(),w[10],c;}在必要的赋值之后,对fun()函数的正确调用语句是______。A、a=a(w);B、(*a)(&c);C、b=*b(w);D、fun(b);标准答案:B知识点解析:暂无解析4、程序中若有如下说明和定义语句charfun(char*);main(){char*s="one",a[5]={0},(*f1)()=fun,ch;…}以下选项中对fun()函数的正确调用语句是——。A、(*f1)(a);B、*f1(*s);C、fun(&a);D、ch=*f1(s);标准答案:A知识点解析:暂无解析5、在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则A、称为函数的直接递归调用B、称为函数的间接递归调用C、称为函数的循环调用D、C语言中不允许这样的递归调用标准答案:B知识点解析:暂无解析6、有如下程序______。longfib(intn){if(n>2)returb(fib(n-1)+fib(n-2));elsereturn(2);}main(){printf("%d\n",fib(3));}该程序的输出结果是______。A、2B、4C、6D、8标准答案:B知识点解析:暂无解析7、下列程序执行后的输出结果是______。A、helloB、helC、hloD、hlmvoidfunc1(inti);voidfunc2(inti);charst[]="hello,friend!";voidfunc1(inti){printf("%c",st[i]);if(i<3){i+=2;func2(i);}}voidfunc2(inti){printf("%c",st[i]);if(i<3){i+=2;func1(i);}}main(){inti=0;func1(i);printf("\n");}标准答案:C知识点解析:暂无解析8、以下程序的输出结果是______。A、54321B、12345C、12345D、543210main(){intw=5;fun(w);printf("\n");}fun(intk){if(k>0)fun(k-1);printf("%d"",k);}标准答案:B知识点解析:暂无解析国家二级(C语言)章节练习试卷第2套一、选择题(2分)(本题共7题,每题1.0分,共7分。)1、设char型变量x中的值为10000111,则表达式(x-2)^(~4)的值是______。A、10110B、10000111C、101100D、10110000标准答案:A知识点解析:暂无解析2、下面程序段的输出结果是______。main(){charx=10000111,c;c=(x-2)^(x+2);printf("%d\n",c);}A、25B、26C、27D、28标准答案:D知识点解析:暂无解析3、有以下程序:main(){intx=5,y=2,z=1;printf("%d\n",x%y&~z);}程序运行后的输出结果为______。A、3B、2C、1D、0标准答案:D知识点解析:暂无解析4、表达式a+b||~c|d的运算顺序是______。A、~,|,+,||B、~,||,|,+C、~,+,||,|D、~,+,|,||标准答案:D知识点解析:暂无解析5、以下程序的结果是______。main(){charx=3,y=6,z;z=x^<<2;printf("%d",z);}A、25B、26C、27D、28标准答案:C知识点解析:暂无解析6、若有以下程序段:main(){intx=2,y=4;x=x^y;y=y^x;x=x^y;printf("%d,%d",x,y);}则上述程序段的输出结果是______。A、2,2B、2,4C、4,2D、4,4标准答案:C知识点解析:暂无解析7、下列叙述不正确的是______。A、表达式a&=b等价于a=a&bB、表达式a|=b等价于a=a|bC、表达式a!=等价于a=a!bD、表达式a^b等价于a=a^b标准答案:C知识点解析:暂无解析二、填空题(本题共3题,每题1.0分,共3分。)8、以下程序运行后的输出结果是______。main(){inti,n[]={0,0,0,0};for(i=1;i<=3;i++){n[i]=n[i-1]*3+2;printf("%d",n[i]);}}标准答案:2826知识点解析:暂无解析9、下面程序的运行结果是______。#include<stdio.h>main(){inti,f[10];f[0]=f[1]=1;for(i=2;i<10;i++)f[i]=f[i-2]+f[i-1];for(i=0;i<10;i++){if(i%4==0)printf("\n");printf("%3d",f[i]);}}标准答案:11235813213455知识点解析:暂无解析10、以下程序段的输出结果是______。main(){inti,j,i1=0.m;ints[3][3]={{100,200,300},{38,68,88},{85,40,99}};m=s[0][0];for(i=0;i<3;i++)for(j=0;j<3;j++)if(s[i][j]<m){m=s[i][j];i1=i;j1=j;}printf("%d,%d,%d\n",m,i1,j1);}标准答案:3810知识点解析:暂无解析三、填空题(含2小题)(本题共2题,每题1.0分,共2分。)11、以下程序中用户由键盘输入一个文件名,然后输入一串字符(用$结束输入)存放到此文件中,形成文本文件,并将字符的个数写到文件尾部。请填空。#include<string.h>main(){FILE*fp:charch,fname[32]intcount=0:prinft("inputthefilename:"):scanf("%s",fname);if((fp=fopen(______,"w+"))==NULL){printf("can’topenfile:%s\n",fname);exit(0):}printf("enterdata:\n"):while((ch=getchar())!=’$’){fputc(ch,fp):count++;}fprintf(______,"\n%d\n",count);fclose(fp):}标准答案:fname,fp知识点解析:暂无解析12、以下程序可将磁盘中的一个文件复制到另一个文件中,两个文件的文件名在可执行命令的命令行中(相当于COPY命令),假定文件在当前目录下。#include<stdio.h>voidmain(intargc,char*argv[]){FILE*f1*f2;if(argc<______){printf("parametererror!\n");exit(0);}f1=fopen(argv[1],"r");f2=fopen(argv[2],"w");while(______)fputc(fgetc(f1),f2);fclose(f1):fclose(f2);}标准答案:3,!feof(f1)知识点解析:暂无解析四、填空题(含3小题)(本题共1题,每题1.0分,共1分。)13、以下程序的功能是将文件filel.c的内容输出到屏幕上并复制到文件file2.c中。请在横线处填入适当的内容。#include<stdio.h>voidmain(){FILE______;fp1=fopen("file1.c","r");fp2=fopen("file2.c","w");while(!feof(fp1))putchar(fgetc(fp1));______while(!feof(fp1))fputc(______);fclose(fp1);fclose(fp2);}标准答案:*fp1,*fp2rewind(fp1)getc(fp1),fp2知识点解析:暂无解析国家二级(C语言)章节练习试卷第3套一、选择题(2分)(本题共7题,每题1.0分,共7分。)1、下列条件语句中,功能与其他语句不同的是______。A、if(b)printf("%d\n",a);elseprintf("%d\n",c);B、if(b==0)printf("%d\n",c);elseprintf("%d\n",a);C、if(b!=0)printf("%d\n",a);elseprintf("%d\n",c);D、if(b=+0)printf("%d\n",a);elseprintf("%d\n",c);标准答案:D知识点解析:暂无解析2、C语言中while和do-while循环的主要区别是______。A、do-while的循环体不能是复合语句B、while的循环控制条件比do-while的循环控制条件更严格C、do-while允许从外部转到循环体内D、do-while的循环体至少五条件执行一次标准答案:D知识点解析:暂无解析3、如下程序的输出结果是______。#include<stdio.h>main(){intx=1,a=3,b=4;switch(x){case0:a--;case1:b--;case2:a--;b--;}printf("a=%d,b=%d\n",a,b);}A、a=2,b=2B、a=3,b=3C、a=1,b=2D、a=3,b=2标准答案:A知识点解析:暂无解析4、如下程序的输出结果是______。#include<stdio.h>main(){intx,a=3,b=4;for(x=0;x<3;x++){switch(x){case0:a--;case1:b--;case2:break;case3:a--;b--;}}printf("a=%d,b=%d\n",a,B);}A、a=2,b=2B、a=3,b=3C、a=1,b=2D、a=3,b=2标准答案:A知识点解析:暂无解析5、关于下面的程序#include<stdio.h>main(){intx=3,y=0,z=0;if(x=y+z)printf("****");elseprintf("$$$$");}说法正确的是______。A、有语法错误不能通过编译B、输出****C、输出$$$$D、可以通过编译,但不能通过连接,无法运行标准答案:C知识点解析:暂无解析6、以下错误的叙述是______。A、使用while和do-while循环时,循环变量的初始化应该在循环语句之前完成B、while循环是先判断表达式,后执行循环语句C、do-while和for循环均是先执行循环体语句,后判断表达式D、for、while和do-while循环中的循环体均可以由空语句构成标准答案:C知识点解析:暂无解析7、若i为整型变量,则以下循环执行次数是______。for(i=2;i==0;)printf("%d",i--);A、无限次B、0次C、1次D、2次标准答案:B知识点解析:暂无解析二、填空题(本题共3题,每题1.0分,共3分。)8、以下程序的运行结果是______。#include<stdio.h>func(inta,intb){staticintm=1,i=3;i+=m+1;m=i+a+b;returnm;}main(){intk=2,m=3,p;p=func(k,m);printf("%d,",p);p=func(k,m);printf("%d\n",p);}标准答案:10,21知识点解析:暂无解析9、fun(intn,int*s){intf1,f2;if(n==1||n==2)*s=1;else{fun(n-1,&f1);fun(n-2,&f2);*s=f1+f2;}}main(){intx;fun(6,&x);printf("%d\n",x);}执行上述程序后,输出结果是______。标准答案:8知识点解析:暂无解析10、下面程序的运行结果是______。#include<stdio.h>main(){voidinc1();voidinc2();inc1();inc1();inc1();inc2();inc2();inc2();}voidinc1(){intx=0;x++;printf("ininc1x=%d\n",x);}voidinc2(){staticintx=0;x++;printf("ininc2x=%d\n",x);}标准答案:ininc1x=1ininc1x=1ininc1x=1ininc2x=1ininc2x=2ininc2x=3知识点解析:暂无解析三、填空题(含3小题)(本题共1题,每题1.0分,共1分。)11、以下函数creat用来建立一个带头结点的单向链表,新产生的结点总是插在链表的末尾。单向链表的头指针作为函数值返回。请填空。#include<stdio.h>structlist{chardara;structlist*next;};structlist*creat(){structlist*h,*p,*q;charch;h=(structlist(*)malloc(sizeof(structlist));______;ch=getchar();while(ch!=’?’){p=(structlist*)malloc)sizeof(structlist));p->data=ch;______;q=p;ch=getchar();}p->next=’\0’;______:}标准答案:p=q=h,q->next=p,return(h)或returnh知识点解析:暂无解析国家二级(C语言)章节练习试卷第4套一、选择题(2分)(本题共11题,每题1.0分,共11分。)1、有如下程序段int*p,a=10,b=1;p=&a;a=*p+b;执行该程序段后,a的值为______。A、12B、11C、10D、编译出错标准答案:B知识点解析:暂无解析2、以下正确的程序段是______。A、int*p;scanf("%d",p);B、int*s,k*s=100;C、int*s,k;char*p,c;s=&k;p=&c;*p=’a’;D、int*s,k;char*p,c;s=&k;p=&c;s=p;*s=1;标准答案:C知识点解析:暂无解析3、已有定义“intk=2;int*ptr1,*ptr2;”,且ptr1和ptr2均已指向变量k,下面不能正确执行的语句是______。A、k=*ptr1+*ptr2;B、ptr2=k;C、ptrl=ptr2;D、K=*ptr1*(*ptr2);标准答案:B知识点解析:暂无解析4、设有定义“inta=3,b,*p=&a”,则下列语句中使b不为3的语句是______。A、b=*&a;B、b=*p;C、b=a;D、b=*a;标准答案:D知识点解析:暂无解析5、有以下函数fun(char*a,char*b){while((*a!=’\0’)&&(*b!=’\0’)&&(*a==*b)){a++;b++;}return(*a-*b);}该函数的功能是______。A、计算a和b所指字符串的长度之差B、将b所指字符串连接到a所指字符串中C、将b所指字符串连接到a所指字符串后面D、比较a和b所指字符串的大小标准答案:D知识点解析:暂无解析6、有以下程序main(){chars[]="159",*p;p=s;printf("%c",*p++);printf("%c",*p++);}程序运行后的输出结果是______。A、15B、16C、12D、59标准答案:A知识点解析:暂无解析7、主调函数中的两个变量a和b,要求调用函数交换a、b值,返回交换结果,则以下正确的函数是______。A、funa(int*x,int*y){int*p;*p=*x;*x=*y;*y=*p;}B、funb(intx,inty){intt;t=x;x=y;y=t;}C、func(int*x,int*y){*X=*y;*y=*x;}D、fund(int*x,int*y){*x=*x+*y;*y=*x-*y;*x=*x-*y;}标准答案:D知识点解析:暂无解析8、已有定义“intk=2;int*ptr1,*ptr2;”,且ptr1和ptr2均已指向变量k,下面不能正确执行的语句是______。A、k=*ptr1+*ptr2;B、ptr2=k;C、ptr1=ptr2;D、K=*ptr1*(*ptr2);标准答案:B知识点解析:暂无解析9、有以下函数char*fun(char*p){returnp;}该函数的返回值是______。A、无确切的值B、形参p中存放的地址值C、一个临时存储单元的地址D、形参p自身的地址值标准答案:B知识点解析:暂无解析10、若有以下调用语句,则不正确的fun()函数的首部是______。A、voidfun(intm,intx[]B、voidfun(ints,inth[41]C、voidfun(intp,int*s)D、voidfun(intn,inta)main(){inta[50],n;…fun(n,&a[9]);…}标准答案:D知识点解析:暂无解析11、设有如下函数定义,则输出结果为______。char*fun(char*str){char*p=str;while(*p){if(*p>’d’)continue;p++;}returnp;}main(){printf("%s\n",fun("welcome!"));}A、welcome!B、come!C、wD、程序陷入死循环中标准答案:D知识点解析:暂无解析二、填空题(本题共3题,每题1.0分,共3分。)12、以下程序运行后的输出结果是______。main(){inta=3,b=4,c=5,t=99;if(b<a&&a<c)t=a;a=C;c=t;if(a<c&&b<c)t=b;b=a;a=tprintf("%d%d%d\n",a,b,c);}标准答案:4599知识点解析:暂无解析13、以下程序运行后的输出结果是______。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("%d%d\n",a,b);}标准答案:21知识点解析:暂无解析14、以下程序的输出结果是______。main(){char*s="12134211”;intv[4]={0,0,0,0},k,i;for(k=0;s[k];k++){switch(s[k]){case’1’:i=0;case’2’:i=1:case’3’:i=2;Case’4’:i=3;}v[i]++;}for(k=0;k<4;k++)printf("%d",v[k]);}标准答案:8知识点解析:暂无解析国家二级(C语言)章节练习试卷第5套一、选择题(2分)(本题共5题,每题1.0分,共5分。)1、以下有4组用户标识符,其中合法的一组是______。A、For-subCaseB、4dDOSizeC、f2_G3IFabcD、WORDvoiddefine标准答案:C知识点解析:暂无解析2、以下叙述正确的是______。A、可以把define和if定义为用户标识符B、可以把define定义为用户标识符,但不能把if定义为用户标识符C、可以把if定义为用户标识符,但不能把define定义为用户标识符D、define和if都不能定义为用户标识符标准答案:B知识点解析:暂无解析3、以下选项中合法的用户标识符是______。A、longB、2TestC、3DmaxD、A.dat标准答案:B知识点解析:暂无解析4、以下叙述正确的是______。A、C语言比其他语言高级B、C语言可以不用编译就能被计算机识别执行C、C语言出现得较晚、具有其他语言的一切优点D、C语言以接近英语国家的自然语言和数学语言作为语言的表达形式标准答案:D知识点解析:暂无解析5、能将高级语言编写的目标程序转换为可执行的应用程序的是______。A、连接程序B、解释程序C、编译程序D、编辑程序标准答案:A知识点解析:暂无解析二、填空题(本题共3题,每题1.0分,共3分。)6、以上程序的输出结果是______。#defineMIN(x,y)(x)<(y)?(x):(y)main(){inta=5,b=2,c=3,d=3,t:t=MIN(a+b,c+d)*10;printf("%d\n"t);}标准答案:60知识点解析:暂无解析7、以下程序的输出结果是______。#definesqr(x)x*xmain(){inta=16,k=2,m=1;a/=sqr(k+m)/sqr(k+m);printf("%d/n",a);}标准答案:2知识点解析:暂无解析8、设有以下宏定义#defineW5#defineL(W+2)则执行赋值语句p=L*2;(p为int型变量)后,p的值为______。标准答案:14知识点解析:暂无解析国家二级(C语言)章节练习试卷第6套一、选择题(2分)(本题共7题,每题1.0分,共7分。)1、下面说明不正确的是______。A、chara[10]="USA";B、chara[10],*p=a;p=a;p="USA";C、char*a;a="USA";D、chara[10],*p;a=p="USA";标准答案:D知识点解析:暂无解析2、有如下程序段int*p,a=10,b=3;p=&a;a=*p+b;执行该程序段后,a的值为______。A、11B、12C、13D、14标准答案:C知识点解析:暂无解析3、int*f(int*x,int*y){if(*x>*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=f(p,q);printf("%d,%d,%d",*p,*q,*r);}执行后输出结果是______。A、7,8,8B、7,8,7C、8,7,7D、8,7,8标准答案:A知识点解析:暂无解析4、有以下程序main(){char*s[]={"BBC","CNN","NDS"},*p;p=s[1];printf("%c,%s\n",*(p+1),p);}执行后输出结果是______。A、C,BBCB、N,BBCC、C,CNND、N,CNN标准答案:D知识点解析:暂无解析5、说明语句int*(*p)();的含义是______。A、p是一个指向int型数组的指针B、p是指针变量,它构成了指针数组C、p是一个指向函数的指针,该函数的返回值是一个整型D、p是一个指向函数的指针,该函数的返回值是一个指向整型的指针标准答案:D知识点解析:暂无解析6、己知inti,x[3][4];,则不能将x[1][1]的值赋给变量i的语句是______。A、i=*(*(x+1)+1)B、i=*(*(x+1))C、i=x[1][1]D、i=*(x[1]+1)标准答案:B知识点解析:暂无解析7、下面程序的运行结果是______。#include<stdio.h>#include<string.h>fun(char*w,intn){chart,*s1,*s2;s1=w;s2=w+n-1;while(s1<s2){t=*s1++;*s1=*s2--;*s2=t;}}main(){char*p;p="1234567";fun(p,strlen(p));puts(p);}A、7654321B、1714171C、1711717D、7177171标准答案:C知识点解析:暂无解析二、填空题(本题共4题,每题1.0分,共4分。)8、以下程序的输出结果是______。voidfun(){staticinta=0;a+=2;printf("%d",a);}main(){intcc;for(cc=1;cc<4;cc++)fun();printf("\n");}标准答案:246知识点解析:暂无解析9、以下程序的输出结果是______。inta,b;voidfun(){a=100;b=200;}main(){inta=5,b=7;fun();printf("%d%d\n",a,b);}标准答案:57知识点解析:暂无解析10、以下程序的输出的结果是______。intx=3;main(){inti;for(i=1;i<x;i++)incre();}incre(){staicintx=1;x*=x+1;printf("%d",x);}标准答案:26知识点解析:暂无解析11、以下程序输出的最后一个值是______。intff(intn){staticintf=1;f=f*n;returnf}main(){inti;for(i=1;i<=5;i++)printf("%d",ff(i));}标准答案:12624120知识点解析:暂无解析三、填空题(含2小题)(本题共1题,每题1.0分,共1分。)12、以下函数把b字符串连接到a字符串的后面,并返回a中新字符串的长度。请填空。surcen(chara[],charb[]){intnum=0,n=0;while(*(a+num)!=______)num++;while(b[n]){*(a+num)=b[n];num++;______;}return(num);}_’\o’或0标准答案:\0’或0,n++或其他使n增1的语句知识点解析:暂无解析国家二级(C语言)章节练习试卷第7套一、选择题(2分)(本题共4题,每题1.0分,共4分。)1、以下说法正确的是______。A、#define和scanf都是C语句B、#define是C语句,而scanf不是C、#define和scanf都不是C语句D、#define不是C语句,scanf是标准答案:C知识点解析:暂无解析2、以下程序的运行结果是______。#defineMIN(x,y)(x)>(y)?(x):(y)main(){inti=10,j=15,k;k=10*MIN(i,j);printf("%d\n",k);}A、10B、15C、100D、150标准答案:A知识点解析:暂无解析3、运行下面程序,若输入a<回车>sd<回车>ininc1x=1ininc1x=1ininc2x=1ininc2x=2ininc2x=3fg<回车>则输出结果为______。#defineN6#include<stdio.h>main(){charc[N];inti=0;for(;i<N;c[i]=getchar(),i++);for(i=0;i<N;i++)putch8r(c[i]);printf("\n");}A、asdfgB、asdfC、asdfD、asdfg标准答案:C知识点解析:暂无解析4、以下程序运行后,输出结果是______。#defineP4.5#defineS(x)P*x*x#include<stdio.h>main(){inta=2,b=3;printf("%.1f\n",S(a+b));}A、49.5B、112.5C、18D、24标准答案:C知识点解析:暂无解析二、填空题(本题共4题,每题1.0分,共4分。)5、以下程序运行后的输出结果是______。main(){chara[]="Language",b[]="Programe";char*p1,*p2;intk;p1=a;p2=b;for(k=0;k<=7;k++)if(*(p1+k)==*(p2+k))printf("%c,*(p1+k));}标准答案:gae知识点解析:暂无解析6、下列程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变。请填空。#include<string.h>mare(){chara[]="clanguage",t;inti,j,k;k=strlen(a);for(i=0;i<=k-2;i+=2)for(j=i+2;j<=k;______)if(){t=a[i];a[i]:a[j];a[j]=t;}puts(a)printf("\n");}标准答案:j+=2,a[i]>a[j]知识点解析:暂无解析7、下列程序的字符串中各单词之间有一个空格,则程序的输出结果是______。#include<string.h>main(){charstrl[]="Howdoyoudo",*p1=strlstrcpy(strl+strlen(strl)/2,"esshe"):printf("%s\n",p1):}标准答案:Howdoesshe知识点解析:暂无解析8、以下程序运行后的输出结果是______。#include<string.h>main(){charch[]="abc",x[3][4];inti;for(i=0;i<3;i++)strcpy(x[i],ch);for(i=0;i<3;i++)printf("%s",&x[i][i]);printf("\n");}标准答案:abcbcc知识点解析:暂无解析国家二级(C语言)章节练习试卷第8套一、选择题(2分)(本题共5题,每题1.0分,共5分。)1、以下程序的功能是进行位运算。main(){unsignedchara,b;a=7^3;b=-4&3;printf("%d%d\n",a,b);}程序运行后的输出结果是______.A、43B、73C、70D、40标准答案:A知识点解析:暂无解析2、有以下程序main(){intc=35;printf("%d\n”,c&c);}程序运行后的输出结果是______。A、0B、70C、35D、1标准答案:C知识点解析:暂无解析3、执行程序段“intx=1,y=2;x=x^y;y=y^x;x=x^y;”后,x和y的值分别是______。A、1和2B、2和2C、2和1D、1和1标准答案:C知识点解析:暂无解析4、设有定义语句:charc1=92,c2=92;,则以下表达式中值为零的是______。A、c1^c2B、c1&c2C、~c2D、c1,c2标准答案:A知识点解析:暂无解析5、下列程序的输出结果是______。main(){unsignedshortn1,n2,n3,n4,n5,a,b;n1=n2=n3=n4=n5=a=100;b=5;printf("%d,%d,%d,%d,%d\n”,n1&b,n2|b,n3^b,n4<<b,n5>>b);}A、100,100,97,320,3B、5,101,97,3200,3C、100,101,97,3200,3D、4,101,97,3200,3标准答案:D知识点解析:暂无解析二、填空题(本题共7题,每题1.0分,共7分。)6、若有以下定义,则不移动指针p,且通过指针p引用值为98的数组元素的表达式是______。intw[10]={23,54,10,33,47,98,72,80,61},*p=w;标准答案:*(p+5)或p[5]知识点解析:暂无解析7、以下程序运行后的输出结果是______。main(){intp[7]={11,13,14,15,16,17,18};inti=0,j=0;while(i<7&&p[i]%2==1)j+=p[i++];printf("%d\n",j);}标准答案:24知识点解析:暂无解析8、下列程序把数组元素中的最大值放入a[0]中。则在if语句中的条件表达式应该是______。main(){inta[10]={6,7,2,9,1,10,5,8,4,3},*p=a,i,bfor(i=0:i<10:i++,p++)if(______){b=*a;*a=*p;*p=b;}printf("%d",*a):}标准答案:*p>a[0]知识点解析:暂无解析9、以下函数返回a所指数组中最小值所在的下标值。请完善下列程序。fun(int*a,intn){inti,j=0,p;p=j;for(i=j;i<n;i++)if(a[i]<a[p]______;return(p);}标准答案:p=I知识点解析:暂无解析10、以下程序运行后的输出结果是______。main(){inta[4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14},{15,16,17,18}};inti=0,j=0,s=0;while(i++<4){if(i==2||i==4)continue;j=0;do{s+=a[i][j];j++;}while(j<4);}printf("%d\n",s);}标准答案:92知识点解析:暂无解析11、有如下程序main(){inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%d\n",s);}该程序的输出结果是______。标准答案:18知识点解析:暂无解析12、以下程序中,fun()函数的功能是求3行4列二维数组每行元素中的最大值,请填空。voidfun(int,int,int(*)[4],int*);main(){inta[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;fun(3,4,a,b);for(i=0;i<3;i++)printf("%4d",b[i]);printf("\n");}voidfun(intm,intn,intar[][4],int*br){inti,j,x;for(i=0;i<m;i++){x=ar[i][0];for(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j];______=x;}}标准答案:br[i]知识点解析:暂无解析三、填空题(含2小题)(本题共2题,每题1.0分,共2分。)13、若有以下定义:inta[8];则a数组元素的下标上限为______,下限为______。标准答案:70知识点解析:暂无解析14、若有定义:inta[3][3]={{1,2},{3},{4,5,6}};则初始化后,a[1][1]得到的初值是______,a[2][1]得到的初值是______。标准答案:05知识点解析:暂无解析四、填空题(含3小题)(本题共1题,每题1.0分,共1分。)15、下列程序是处理C盘根目录下的a.txt文件,统计该文件中字符的个数。请填空,使程序完整。#include<stdio.h>main(){FILE*fp;charch;longnum=0;if(______){printf("Can’topenfile!\n");exit(0);}while(______){ch=fgetc(fp);______;}printf("%d",num);fclose(fp);}标准答案:(fp=fopen("c:\\a.txt"),"r")==NULL,!feof(fp),fputc(ch,fp);知识点解析:暂无解析国家二级(C语言)章节练习试卷第9套一、选择题(2分)(本题共18题,每题1.0分,共18分。)1、有如下程序main(){intn=9;while(n>6){n-;printf("%d",n);}}该程序段的输出结果是______。A、987B、876C、8765D、9876标准答案:B知识点解析:暂无解析2、下面的程序输出结果是______。main(){intx=3;while(!(--x))printf("%d\n",x-=2);}A、不执行循环体B、1C、0D、是死循环标准答案:A知识点解析:暂无解析3、运行以下程序后,如果从键盘上输入6514<回车>,则输出结果为______。main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n)m-=n;while(n>m)n-=m;}printf("m=%d\n",m);}A、m=3B、m=2C、m=1D、m=0标准答案:C知识点解析:暂无解析4、有以下程序main(){intp[8]={11,12,13,14,15,16,17,18},i=0,j=0;while(i++<7)if(p[i]%2)jj+=p[i];printf("%d\n",j);}程序运行后的输出结果是______。A、42B、45C、56D、60标准答案:B知识点解析:暂无解析5、下列程序段中循环体的执行次数是______。intx=-12;while(x=0)x=x+1;A、While循环执行12次B、循环体语句执行一次C、循环是死循环D、循环体语句一次也不执行标准答案:D知识点解析:暂无解析6、执行下面程序段的结果是______。intx=234;do{printf("%3d\n",x--);}while(!x);A、432B、234C、0D、234到1的自然数标准答案:B知识点解析:暂无解析7、以下程序的输出结果是______。main(){intx=2;do{printf("%3d",!x-2);}while(--x);}A、0-1B、00C、-4D、死循环标准答案:C知识点解析:暂无解析8、以下循环体的执行次数是______。main(){inti,j;for(i=0,j=1;i<=j+1;i+=2,j--)printf("%d\n",i)}A、3B、2C、1D、0标准答案:C知识点解析:暂无解析9、以下程序的输出结果是______。main(){intx=10,y=10,i;for(i=0;x>8;y=++i)printf("%d%d",x--,y);}A、10192B、9876C、10990D、101091标准答案:D知识点解析:暂无解析10、以下程序运行后的输出结果是______。main(){charc1,c2;for(c1=’0’,c2=’9’;c1<c2;c1++,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论