C语言试题(精选)_第1页
C语言试题(精选)_第2页
C语言试题(精选)_第3页
C语言试题(精选)_第4页
C语言试题(精选)_第5页
已阅读5页,还剩6页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

第页共页C语言试题〔精选〕C语言试题〔精选〕1.假设有以下程序#includemain{inta=6,b=0,c=0;for(;a;){b+=a;a-=++c;}printf(“%d,%d,%d”,a,b,c);}那么程序的输出结果是A)1,14,3B)0,14,3C)0,18,3D)0,14,6参考答案:B【解析】本循环的条件判断时只要a为0就退出循环体,初始值a的值为6,满足条件执行完循环体,b的值为6,a-=++c即a=a-(++c),所以a的'值为5,c的值为1第二次循环后b的值为11,a的值为3,c的值为2第三次也是最后循环后,a的值为0,b的值14,c的值为32.以下选项中非法的C语言字符常量是A)'07'B)''C)'aa'D)'xaa'参考答案:C【解析】C选项中是字符串常量,应该用双引号表示即“aa”所以选择C选项3.假设有以下程序#includevoidsp(int*a){intb=2;a=-b;*a=*a*2;printf(“%d,”,*a);}main{intk=3,*p=-k;sp(p);printf(“%d,%d”,k,*p);}那么程序的输出结果是A)4,3,3B)4,3,4C)6,3,6D)6,6,6参考答案:A【解析】首先在主函数中给整型变量k赋值为3,将变量k的地址赋给指针变量p;调用sp函数,将实参p的值传给形参a,在sp函数中,指针变量a又获得变量b的地址,通过运算后,输出a的值为4;返回主函数,输出k的值和p的值为3和3。因此A选项正确。4.假设有以下程序#includeintk=7;voidf(int**s){int*t=-k;*s=t;printf(“%d,%d,%d,”,k,*t,**s);}main{inti=3,*p=-i,**r=-p;f(r);printf(“%d,%d,%d”,i,*p,**r);}那么程序的输出结果是A)3,3,3,7,7,7B)3,7,7,7,7,7C)7,7,7,3,3,3D)7,7,7,3,7,7参考答案:D5.假设有以下程序#includeint*f(int*s,int*t){int*k;if(*s<*t){k=s;s=t;t=k;}returns;}main{inti=3,j=5,*p=-i,*q=-j,*r;r=f(p,q);printf(“%d,%d,%d,%d,%d”,i,j,*p,*q,*r);}那么程序的输出结果是A)3,5,5,3,5B)3,5,3,5,5C)5,3,5,3,5D)5,3,3,5,5参考答案:B【解析】在主函数中分别给整型变量i、j和指针型变量p、q赋初值,并声明指针变量r;调用f函数,并将实参变量p和q的值传递给形参变量s和t,并且f函数是指针型函数,即函数的返回值将是一个地址。在f函数中,假如条件成立,那么将指针变量s和t互换,并且将指针s的地址返回主函数。最后输出i,j,*p,*q,*r的值,即3,5,3,5,5。因此B选项正确。6.假设有以下程序#include#defineN4voidfun(inta[][N],intb[],intflag){inti,j;for(i=0;i<N;i++){b[i]=a[i][0];for(j=1;j<N;j++)if(flag?(b[i]》a[i][j]):(b[i]<a[i][j]))b[i]=a[i][j];}}main(){intx[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},y[N],i;fun(x,y,1);for(i=0;i<N;i++)printf(“%d,”,y[i]);fun(x,y,0);for(i=0;i<N;i++)printf(“%d,”,y[i]);printf(“”);}那么程序的输出结果是A)1,5,9,13,4,8,12,16,B)4,8,12,16,1,5,9,13,C)1,2,3,4,13,14,15,16,D)13,14,15,16,1,2,3,4,参考答案:A7.假设有以下程序#includevoidfun(inta[],intn){intt,i,j;for(i=1;i<n;i+=2)for(j=i+2;j<n;j+=2)if(a[i]》a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main{intc[10]={10,9,8,7,6,5,4,3,2,1},i;fun(c,10);for(i=0;i<10;i++)printf(“%d,”,c[i]);printf(“”);}那么程序的输出结果是A)1,10,3,8,5,6,7,4,9,2,B)10,9,8,7,6,5,4,3,2,1,C)2,9,4,7,6,5,8,3,10,1,D)10,1,8,3,6,5,4,7,2,9,参考答案:D【解析】该题首先对一维数组进展初始化,c[0]到c[9]依次赋值为10到1;fun(c,10);语句调用fun函数,fun函数的功能是将一维数组偶数位元素的数值由小到大排序;最后将排好序的新的一维数组进展输出。因此D选项正确。8.假设有以下程序#includemain{inti,j=0;chara[]=“Howareyou!”;for(i=0;a[i];i++)if(a[i]!='')a[j++]=a[i];a[j]='';printf(“%s”,a);}那么程序的输出结果是A)Hay!B)HowareyouC)Howareyou!D)Howareyou!参考答案:C【解析】主函数中首先定义字符数组a[]=“Howareyou!”;执行for循环语句,语句if(a[i]!='')a[j++]=a[i];其功能是将字符数组中的空格去掉。因此C选项正确。9.假设有以下程序#includechar*a=“you”;charb[]=“WeleyoutoChina!”;main{inti,j=0;char*p;for(i=0;b[i]!='';i++){if(*a==b[i]){p=a;for(j=i;*p!='';j++){if(*p!=b[j])break;p++;}if(*p=='')break;}}printf(“%s”,-b[i]);}那么程序的输出结果是A)China!B)toChina!C)meyoutoChina!D)youtoChina!参考答案:D【解析】该程序首先定义*a和b[],并进展初始化。主函数中通过外层for循环语句,遍历字符数组b[],并且将符合if条件语句的字符赋给数组p;for内层循环语句,遍历字符数组a[]。再将符合if条件语句的结果输出。因此D选项正确。10.假设有以下程序#includemain{chara[20],b[]=“Theskyisblue.”;inti;for(i=0;i<7;i++)scanf(“%c”,-b[i]);gets(a);printf(“%s%s”,a,b);

温馨提示

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

评论

0/150

提交评论