下载此文档

C语言题库(含参考答案).pdf


文档分类:IT计算机 | 页数:约20页 举报非法文档有奖
1/20
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/20 下载此文档
文档列表 文档介绍
该【C语言题库(含参考答案) 】是由【小屁孩】上传分享,文档一共【20】页,该文档可以免费在线阅读,需要了解更多关于【C语言题库(含参考答案) 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..《C语言程序设计》,非法的字符常量是C。A)?\n?B)?\t?C)“\n”D)?\x0a?,合法的八进制常量是B。A)32B)016C)0X2dD)-,合法的长整型常量是B。A)3276893B)27LC))。)C语言编译时不检查语法B)C语言的子程序有过程和函数两种C)C语言的函数可以嵌套定义D),y,t均为int型变量,则执行语句:x=y=2;t=++x||++y;后,y的值为C。/*运算符*/A)4B)3C)2D),y,z均为int型变量,则执行语句:x=8,y=6;z=++x&&++y;后y的值为B。A)8B)7C)6D)≤y≤z的C语言表达式为A。A)(x<=y)&&(y<=z)B)(x<=y)AND(y<=z)C)(x<=y<=z)D)(x<=y)&(y<=z)“a≥10或a≤0”的C语言表达式为C。A)a>=10ora<=0B)a>=10&&a<=0C)a>=10||a<=0D)a>=0|a<=。A)x=y=100;B)d--;C)x+y;D)c=int(a+b);(无值)、y、z被定义为int型变量,要从键盘给它们输入数据,正确的输入语句是B。A)INPUTx、y、z;B)scanf(“%d%d%d”,&x,&y,&z);C)scanf(“%d%d%d”,x,y,z);D)read(“%d%d%d”,&x,&y,&z);、y均为int型变量,且x=6,y=3,则语句printf(”%d,%d\n”,x++,++y);的输出结果是C。A)6,3B)7,3C)6,4D)7,。#include<>main(){inti=010,j=10;printf(“%d,%d”,++i,j--);}A)11,10B)9,10C)010,9D)10,:inta,b=5,*p=&a;则能完成“a=b”赋值功能的语句是D。A)a=*p;B)a=&b;C)a=**p;D)*p=*&b;=14/3*4的值为C。A)0B)1C)16D)=7%(5/2)的值为B。A)0B)1C)2D)“func(x1,x2+x3,(x4,x5));”中含有的实参个数是A。:..A)3B)4C)5D)。main(){inta=4;printf(”%d\n”,(a-=a+=a*a));}A)-6B)12C)0D)-,进入下面的循环之前,t的值为0(或3、或未初始化)while(t=1)/*循环条件的判断*/{……}则以下叙述中正确的是B。A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D),如果实参是一个数组名,则向函数传递的是B。/*参数传递*/A)数组的长度B)数组的首地址C)数组每一个元素的地址D),如果实参是简单变量,它与对应形参之间的数据传递方式是B。A)地址传递B)单向值传递C)由实参传递给形参,再由形参传回实参D)。fun(floatx){floaty;y=3*x-4;returny;}A)intB)不确定C)voidD)。intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);printf(”%d\n”,r);}A)12B)13C)14D):intf(inta){intb=0;staticintc=3;b++;c++;return(a+b+c);}如果在下面的程序中调用该函数,则输出结果是B。main(){inta=2,j,val;:..for(j=0;j<3;j++)val=f(a);printf(”%d\n”,val);}A)7B)9C)11D)。A)15B)14C)不确定D)0main(){inti,sum;for(i=1;i<6;i++)sum+=i;printf(”%d\n”,sum);}。A)非法B)a[2]的地址C)8D)7main(){chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+1;printf(”%d”,*p);}。A)15B)13C)11D)7main(){inta[]={1,3,5,7,9,11,13,15,17,19},*p;p=a;printf(”%d\n”,*p+6);}。main(){intarr[]={30,25,20,15,10,5},*p=arr;p++;printf(”%d\n”,*(p+3));},错误的是B。A)inta[]={0,1,2,3};B)intn=5,a[n];C)chars[20]=”test”;D)char*a[5];:floatx[5]={0,2,4};,则数组x在内存中所占字节数是D。A)3B)6C)10D)。main(){intk,a[10];for(k=0;k<10;k++)a[k]=10-k;printf(”%d%d%d”,a[2],a[5],a[8]);}A)258B)741C)852D)。A)inta[2][3];B)inta[][3]={0,1,2,3};:..C)inta[]={0,1,2,3,4,5,6,7,8,9};D)intd[3][]={{1,2,3},{4,5,6},{7,8,9}};,20main(){charst[20]=”hello.\0\t\?\”;printf(”%d,%d\n”,strlen(st),sizeof(st));},不能正确赋值的是A。A)chars[10];s=”China”;B)chars[]={?t?,?e?,?s?,?t?};C)chars[20]=”Hello.”;D)char*s4=”China”;。A)auto和staticB)auto和registerC)register和staticD),如果输入123,则输出结果是1236789。#include“”#include“”main(){charss[10];gets(ss);strcat(ss,”6789”);printf(”%s\n”,ss);}。A)1B)2C)3D)4longfun(intn)//递归函数{longs;if(n==1||n==2)s=2;elses=n-fun(n-1);returns;}main(){printf(”%d\n”,fun(5));}*p,a=10,b=2;p=&a;a=*p+b;执行该程序段以后,a的值为A。A)12B)11C)10D)。intfun(int*a,intn){inti,j=0,p;p=j;for(i=j;i<n;i++)if(a[i]<a[p]);return(p);}:..在下划线处应填入的是D。A)i=pB)a[p]=a[i]C)p=jD)p=#defineN2#defineMN+1#defineNUM2*M+1main(){intj;for(j=1;j<=NUM;j++)printf(“%d\n”,j);}该程序中的for循环执行的次数是B。A)5B)6C)7D):structperson{charname[9];intage;};structpersonclass[10]={“John”,17,”Paul”,19,”Mary”,18,”Adam”,16};根据上述定义,能输出字母M的语句是D。A)printf(“%c\n”,class[3].name);B)printf(“%c\n”,class[3].name[1]);C)printf(“%c\n”,class[2].name[1]);D)printf(“%c\n”,class[2].name[0]);。A)该结构体中第一个成员所需的存储空间B)该结构体中最后一个成员所需的存储空间C)该结构体中占用最大存储空间的成员所需的存储空间D),要使指针变量p指向一个存储整型变量的动态存储单元,应填入D。int*p;p=malloc(sizeof(int));A)intB)int*C)(*int)D)(int*)。#include“”inta[]={2,4,6,8};main(){inti;int*p=a;for(i=0;i<4;i++)a[i]=*++p;printf(”%d\n”,a[2]);}A)2B)4C)6D)。#include“”main(){union{inti[2];longk;charc[4];}r,*s=&r;s->i[0]=0x39;:..s->i[1]=0x38;printf(”%c\n”,s->c[0]);}A)8B)9C)38D):voidfun(??){??*ptr=(double*)malloc(10*sizeof((double));??}ptr是函数fun的形参,要求通过ptr将动态分配的存储单元首地址传回主调函数,则形参ptr的正确定义应该是C。A)double*ptrB)float**ptrC)double**ptrD)float*:inta=10,b=9,c=8;在顺序执行下列语句后,变量b中的值是3。c=(a-=(b-5));c=(a%11)+(b=3);,请填入一个整数。for(j=0;j<=18;printf(”%d\n”,j+=2));:abcde<回车>,则以下while循环体将执行0次。while((ch=getchar())==?e?)printf(”*”);。/*静态局部变量的作用*/voidfun(){staticinta=0;a+=2;printf(”%d”,a);}main(){intc;for(c=1;c<4;c++)fun();printf(”\n”);}。main(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf(”%d%d\n”,a,b);}。main(){charb[]=”Hello,you”;b[5]=0;printf(”%s\n”,b);}。:..intn=?c?;switch(n++){default:printf(”error”);break;case?a?:case?A?:case?b?:case?B?:printf(”good”);break;case?c?:case?C?:printf(”pass”);case?d?:case?D?:printf(”warn”);},则prnt函数共输出5行,最后一行有4个数。voidprnt(intn,inta[]){inti;for(i=1;i<=n;i++){printf(”%6d”,a[i]);if(!(i%5))printf(”\n”);}printf(”\n”);},主函数调用了LineMax函数,实现在M行N列的二维数组中,找出每一行上的最大值。请填空。#defineM3#defineN4voidLineMax(intx[M][N]){inti,j,p;for(i=0;i<M;i++){p=0;for(j=1;j<N;j++)if(x[i][p]<x[i][j])p=j;printf(”Themaxvalueinline%dis%d\n”,i,x[i][p]);}}main(){intx[M][N]={1,5,7,4,2,6,4,3,8,2,3,1};LineMax(x);}。main(){inti=5,j=0;do{j=j+i;i--;}while(i>2);printf(”%d\n”,j);}:main(){intn1,n2;:..scanf(”%d”,&n2);while(n2!=0){n1=n2%10;n2=n2/10;printf(”%d”,n1);}}程序运行后,如果从键盘上输入1298,则输出结果为8921。:求x的y次方,请填空。doublefun(doublex,inty){inti;doublez;for(i=1,z=x;i<y;i++)z=z*x;returnz;}:main(){inta,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(*p1)/(*p2)+7;printf(”a=%d\n”,a);printf(”b=%d\n”,b);}执行该程序后,a的值为0,b的值为7。:inta[10];,以下fun函数的功能是:在第一个循环中给10个数组元素依次赋1、2、3、4、5、6、7、8、9、10;在第二个循环中使a数组10个元素中的值对称折叠,变成1、2、3、4、5、5、4、3、2、1。请填空。voidfun(void){inti;for(i=1;i<=10;i++)a[i-1]=a[i];for(i=0;i<5;i++)a[9-i]=a[i];}[10]={23,54,10,33,47,98,72,80,61},*p=w;则不移动指针p而通过其间接引用值为98的数组元素的表达式是*(p+5)。。#defineMAX(x,y)(x)>(y)?(x):(y)main(){inta=5,b=2,c=3,d=2,t;t=MAX(a+b,c+d)*10;printf(“%d\n”,t);},请填空。p=(double*)malloc(sizeof(double));,则变量a在内存中所占的字节数是22。:..structstud{charnum[6];6ints[4];8doubleave;8}a,*p;,并返回a中新字符串的长度。请填空。strcen(chara[],charb[]){intnum=0,n=0;while(*(a+num)!=?\0?)num++;while(b[n]){*(a+num)=b[n];num++;n++;}*(a+num)=?\0?;return(num);},先利用fseek函数将文件位置指针定位于文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件的长度,请填空。FILE*myf;longfl;myf=fopen(“”,”rb”);fseek(myf,0,SEEK_END);fl=ftell(myf);fclose(myf);printf(“%ld\n”,fl);}。inta,b;voidfun(void){a=20;b=30;}main(){inta=4,b=9;fun();printf(“%d%d\n”,a,b);}A)3020B)2030C)49D)。unionmyun{struct{intx,y,z;}u;intk;chart[2];}a;main(){=3;:..=4;=5;=6;printf(“%d\n”,[1]);}A)3B)4C)0D)。#include“”main(){charx=050;printf(“%d\n”,x=x<<1);}A)60B)70C)80D),则程序的输出结果是x=3。#include“”main(){intx;scanf(“%d”,&x);switch(x){case1:case2:printf(“x<3”);break;case3:printf(“x=3”);break;case4:case5:printf(“x>3”);break;default:printf(“xunknow\n”);}},请填空。#include<>main(){intr,m,n,gcd,lcm;printf(“请输入两个正整数给m和n:”);scanf(“%d%d”,&m,&n);lcm=m*n;while(m%n)/*在此循环里进行辗转相除*/{r=m%n;m=n;n=r;}gcd=n;lcm/=gcd;printf(“gcd=%d\nlcm=%d\n”,gcd,lcm);}(a=0,b=0;b!=100&&a<4;a++)scanf(“%d”,&b);中循环体最少可执行1次,最多可执行4次。(k,n)=1k+2k+?+nk,其中k,n用键盘输入,函数power(m,n)求mn,函数sum_power(k,n)求f(k,n)。请填空。:..#include<>longpower(intm,intn){intj;longp=1;for(j=1;j<=n;j++)p=p*m;return(p);}longsum_power(intk,intn){intj;longsum=0;for(j=1;j<=n;j++)sum+=power(j,k);return(sum);}main(){intk,n;scanf(“%d%d”,&k,&n);printf(“f(%d,%d)=%ld\n”,k,n,sum_power(k,n));}。#include<>#defineX5#defineYX+1#defineZY*X/2main(){inta;a=Y;printf(“%d%d\n”,Z,--a);}。main(){intk;inta[3][3]={1,2,3,4,5,6,7,8,9};for(k=0;k<3;k++)printf(“%d”,a[k][2-k]);}。请填空。voidreverse(chars[]){intch,i,j;for(i=0,j=strlen(s)-1;i<j;i++,j--){ch=s[i];s[i]=s[j];s[j]=ch;}return;}。请填空。#defineNULL0structlink{inta;structlink*next;:..};intlink_len(structlink*p){intn=0;while(p!=NULL){n=n+1;p=p->next;}return(n);}。例如,输入的字符串为:556,则输出十进制整数366。请填空。#include<>main(){char*p,s[6];intn;p=s;gets(p);n=*p-?0?;while(*++p!=?\0?)n=n*8+*p-?0?;printf(“%d\n”,n);}2003年云南省计算机等级考试题一、。,,。。#include命令包含的头文件必须以“.h"。(fp)(fp)(fp)(fp)。。。,在函数未被调用时就不被分配存储空间:..,,,=1,y=3,经下列计算后,x的值不等于6的是__D_。=(x=1+2,x*2)=y>2?6:=9-(--y)-(--y)=y*。.$。()语句的括号内可以是常量、,,:#。。。(),用作判断的表达式为A。,char*aa[2]={"abcd","ABCD"},选项中说法正确的是C。"abcd"和"ABCD",'a'和'A'。main(){intx=0,s=0;while(!x!=0)s+=++x;printf("%d",s);},则sizeof(structaa)的值是__D__。structaa{intr1;doubler2;floatr3;unionuu{charu1[5];longu2[2];}ua;}mya;。main(){inta=1,b=10;do{b-=a;a++;}while(b--<1);printf("a=%d,b=%d\n",a,b);}:..=3,b==2,b==1,b=-=4,b=。main(){intx=2,y=-1,z=2;if(x<y)if(y<0)z=0;elsez+=1;printf("%d",z);}。main(){inty=30;prt(&y);}prt(int*x){printf("%d,%d\n",*x,++*x);},,,,。#defineMOD(x,y)x%ymain(){intz,a=15,b=100;z=MOD(b,a);printf("%d",z++);}(a=0,b=0;a<3&&b!=3;a++,b+=2)a++;的特点是:C。,m的值是__D__。intw=2,x=3,y=4,z=5,m;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;,则输出语句printf("%d",sizeof(structdate)+sizeof(max));的执行结果是__B__。typedefunion{longi;intk[5];charc;}DATE;structdate{intcat;DATEcow;doubledog;}too;DATEmax;。main(){staticintx[]={0,1,2,3,4,5,6,7,8,9};ints,i,*p;s=0;p=&x[0];for(i=1;i<10;i+=2)s+=*(p+i);printf("%d",s);}:..,若对变量person的出生年份进行赋值,__C__是正确的赋值语句。structdate/*结构成员的访问*/{intyear,month,day;};structworklist{charname[20];charsex;structdatebirthday;}person;====:structsk{inta;floatb;}data,*p;若有p=&data;,则对data中的a域的正确引用是__B__。/*结构成员的访问*/A)(*p).)(*p).aC)p->)。/*变量的作用范围*/voidnum(){externx,y;inta=15,b=10;x=a-b;y=a+b;}intx,y;main(){inta=7,b=5;x=a+b;y=a-b;num();printf("%d,%d",x,y);},

C语言题库(含参考答案) 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数20
  • 收藏数0 收藏
  • 顶次数0
  • 上传人小屁孩
  • 文件大小741 KB
  • 时间2024-04-15