您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > C语言上机题库百科园第5章!南信大!
第五章单选有以下程序,程序运行后的输出结果是()#includestdio.h#includestring.hintmain(){chara[20]=”ABCD\0EFG\0”,b[]=”IJK”;strcat(a,b);printf(“%s\n”,a);return0;}A.ABCDE\0FG\0IJKB.ABCDIJKC.EFGIJKD.IJK有以下程序,程序运行后的输出结果是()#includestdio.hintmain(){chars[]=012xy\08s34f4w2;inti,n=0;for(i=0;s[i]!=0;i++)if(s[i]='0'&&s[i]='9')n++;printf(%d\n,n);return0;}A.7B.0C.8D.3下列选项中,能够满足若字符串s1等于字符串s2,则执行ST要求的是()A.if(strcmp(s2,s1)==0)ST;B.if(s1-s2==0)ST;C.if(strcpy(s1,s2)==1)ST;D.if(s1==s2)ST;以下选项中正确的语句组是()A.chars;s={BOOK!};B.chars[];s=BOOK!;C.chars[10];s=BOOK!;D.chars[]=BOOK!;以下数组定义中错误的是()A.intx[2][3]={{1,2},{3,4},{5,6}};B.intx[2][3]={1,2,3,4,5,6};C.intx[][3]={0};D.intx[][3]={{1,2,3},{4,5,6}};若有定义语句:intm[]={5,4,3,2,1},i=4;则下面对m数组元素的引用中错误的是()A.m[m[0]]B.m[2*2]C.m[--i]D.m[m[i]]下列选项中,能正确定义数组的语句是()A.intnum[];B.intN=2008;intnum[N];C.intnum[0…2008];D.#defineN2008intnum[N];有以下程序,程序运行时若输入:howareyou?Iamfine回车则输出结果是()#includestdio.hintmain(){chara[30],b[30];scanf(%s,a);gets(b);printf(%s\n%s\n,a,b);return0;}A.howareyou?IamfineB.howareyou?IamfineC.howareyou?IamfineD.howareyou?下面是有关C语言字符数组的描述,其中错误的是()A.不可以用赋值语句给字符数组名赋字符串B.可以用输入语句把字符串整体输入给字符数组C.字符数组中的内容不一定是字符串D.字符数组只能存放字符串有以下程序,程序运行后的输出结果是()#includestdio.h#includestring.hintmain(){charx[]=”STRING”;x[0]=0;x[1]='\0';x[2]='0';printf(“%d%d\n”,sizeof(x),strlen(x));return0;}A.70B.61C.71D.63若要定义一个具有5个元素的整型数组,以下错误的定义语句是()A.inta[5]={0};B.intb[]={0,0,0,0,0};C.inti=5,d[i];D.intc[2+3];有以下程序,程序运行后的输出结果是()#includestdio.h#includestring.hintmain(){chara[5][10]={“china”,”beijing”,”you”,”tiananmen”,”welcome”};inti,j;chart[10];for(i=0;i4;i++)for(j=i+1;j5;j++)if(strcmp(a[i],a[j])0){strcpy(t,a[i]);strcpy(a[i],a[j]);strcpy(a[i],t);}puts(a[3]);return0;}A.chinaB.beijingC.welcomeD.tiananmen程序设计/*编写函数intfun(intlim,intaa[MAX]),该函数的功能是求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求出的素数的个数。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:*/#includestdio.h#includestdlib.h#defineMAX100intfun(intlim,intaa[MAX]){/**********Begin**********//**********End**********/}intmain(){FILE*wf;intlimit,i,sum;intaa[MAX];printf(输入一个整数);scanf(%d,&limit);sum=fun(limit,aa);for(i=0;isum;i++){if(i%10==0&&i!=0)/*每行输出10个数*/printf(\n);printf(%5d,aa[i]);}/******************************/wf=fopen(debug\\2.out,w);sum=fun(15,aa);for(i=0;isum;i++)fprintf(wf,%d\n,aa[i]);fclose(wf);/*****************************/return0;}【参考代码】inti,j,k=0;for(i=2;i=lim;i++){for(j=2;ji;j++)if(i%j==0)break;if(j=i)aa[k++]=i;}returnk;/*请编写函数fun,函数的功能是:求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。例如,若二维数组中的值为13579299946999813570则函数值为61。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:*/#includestdio.h#includestdlib.h#defineM4#defineN5intfun(inta[M][N]){/***************Begin************//***************End************/}voidmain(){FILE*wf;intaa[M][N]={{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,10}};inti,j,y;printf(Theoriginaldatais:\n);for(i=0;iM;i++){for(j=0;jN;j++)printf(%6d,aa[i][j]);printf(\n);}y=fun(aa);printf(\nThesun:%d\n,y);printf(\n);/******************************/wf=fopen(debug\\out10.dat,w);fprintf(wf,%d,y);fclose(wf);/*****************************/}【参考代码】inti,j,sum=0;for(i=0;iM;i++)for(j=0;jN;j++)if(i==0||i==M-1||j==0||j==N-1)sum=sum+a[i][j];returnsum;/*编写一个函数,从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标志)。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:*/#includestdio.h#includestring.h#includestdlib.hvoidfun(chara[][81],intnum,charmax[]){/***************Begin************//***************End************/}voidmain(){FILE*wf;charss[10][81],ps[81];chars[3][81]={abcd,deg,diegns},p[81];inti=0,n;printf(输入若干个字符串:);gets(ss[i]);puts(ss[i]);while(!strcmp(ss[i],****)==0)/*用4个星号作为结束输入的标志*/{i++;gets(ss[i]);puts(ss[i]);}n=i;fun(ss,n,ps);printf(\nmax=%s\n,ps);/******************************/wf=fopen(debug\\out15.dat,w);fun(s,3,p);fprintf(wf,%s,p);fclose(wf);/*****************************/}【参考代码】inti=0;strcpy(max,a[0]);/*找出最长的一个字符串*/for(i=0;inum;i++)if(strlen(max)strlen(a[i]))strcpy(max,a[i]);/*请编写一个函数fun,它的功能是:求出1到m(含m)之内能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。例如,若传给m的值为50,则程序输出:711142122283335424449注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:*/#includestdio.h#includestdlib.h#defineM100intfun(intm,inta[]){/***************Begin************//***************End************/}voidmain(){FILE*wf;intaa[M],n,k;n=fun(50,aa);for(k=0;kn;k++)if((k+1)%20==0)/*每行输出20个数*/{printf(%4d,aa[k]);printf(\n);}elseprintf(%4d,aa[k]);printf(\n);/******************************/wf=fopen(debug\\out4.dat,w);for(k=0;kn;k++)fprintf(wf,%d\n,aa[k]);fclose(wf);/*****************************/}【参考代码】inti,j=0;for(i=1;i=m;i++)if(i%7==0||i%11==0)a[j++]=i;returnj;/*返回这些数的个数*//*请编写一个函数fun,它的功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转为整数的函数)。例如,若输入字符串-1234,则函数把它转换为整数值-1234。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:*/#includestdio.h#includestring.hlongfun(charp[]){/***************Begin************//***************End************/}voidmain(){FILE*wf;chars[6];longn;printf(Enterastring:\n);gets(s);n=fun(s);printf(%ld\n,n);/*******************
本文标题:C语言上机题库百科园第5章!南信大!
链接地址:https://www.777doc.com/doc-1754716 .html