C语言程序设计学生自出题_第1页
C语言程序设计学生自出题_第2页
C语言程序设计学生自出题_第3页
C语言程序设计学生自出题_第4页
C语言程序设计学生自出题_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

C语言程序设计学生自出题C语言程序设计学生自出题C语言程序设计学生自出题C语言程序设计学生自出题编制仅供参考审核批准生效日期地址:电话:传真:邮编:一、选择题:1.下列程序的运行结果是 ()#include<>inta=2;intf(intk){staticintn;intm;m=n=0;n++;a++;m++;k++;returnn+m+a+k;}main(){intk;for(k=0;k<2;k++)printf(“%d,”,f(k));printf(“\n”);},6, ,7, ,8, ,9,2.若有“charw;intx;floaty;doublez;”则表达式“w*x+z-y”值得数据类型为 ()型 型 C.float型 D.double型3.可以使用多种形式实现函数调用,以下形式中非法的函数调用形式是 ()A.函数形参 B.函数表达式 C.函数语句 D.函数实参4.以下程序的运行结果是: ()voidfun(longa)voidfun(longa){printf(“%d”,a%10);if(a/10)fun(a/10);printf(“%d”,a%10);}main(){longa=9;fun(a);} B.89C.21 5.有以下程序,执行后的结果是 ()#include<>#include<>main(){chars[]=”abcde”;s+=2;printf(“%d\n”,s[0]);}A.输出字符’c’的ASCII码值 B.程序出错C.输出字符’c’ D.输出字符’a’的ASCII码值6.已有定义语句:inta=1,b=2,c=3;floatd=4;以下能正确表示数学公式的C语言表达式是 ()A.a/d/(b+c) (b+c)*1/d (c+b)/d D.a/(b+c)*d7.有以下程序,运行后的输出结果是 ()#include<>#include<>viodfun(int*a,intn){intt,i,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intc[10]={1,2,3,4,5,6,7,8,9,0},i;fun(c+4,6);for(i=0;i<10;i++)printf(“%d,”,c[i]);printf(“\n”);},9,8,7,6,5,1,2,3,4, ,2,3,4,5,6,7,8,9,0,,2,3,4,9,8,7,6,5,0, ,9,8,7,6,5,4,3,2,1,8.有以下程序,运行后的结果是 ()#include<>#include<>main(){inta=10,b=11,c=;s=a++<=10&&b--<=2&&c++;printf(“%d,%d,%d,%d\n”,s,a,b,c);},10,10,12 ,10,10,12 ,11,11,12 ,11,10,129.若有定义语句:doublex,y,*px,*py;执行:px=&x;py=&y;正确的输入语句是 ()(“%lf%lf”,x,y); B.scanf(“%f%f”,&x,&y);C.scanf(“%f%f”,x,y); D.scanf(“%lf%le”,px,py);10.有以下程序,运行后的结果是 ()#inc#include<>main(){char*p1=0;long*p2;double*p3;printf(“%d,%d,%d\n”,sizeof(p1),sizeof(p2),sizeof(p3));},0,0 B.4,4,4 ,2,4 D.1,4,811.下题函数功能为:求二分之一的圆面积,函数通过形参得到圆的半径,将求出的二分之一圆面积通过函数返回至返回(面积公式s=πR)。给出函数中有两行出错,请讲错误项找出。 ()L1 #include<>L1 #include<>L2 doublefun(doubler)L3 {return*r*r/2}L4 main()L5 {intx;printf(“enterx:”,);L6scanf(“%lf”,&x);L7 printf(“s=%lf\n”,fun(x));L8 }A.L2,L3 ,L7 ,L5 ,L7 12.已知chara[]=”abc\18d\0def”;则sizeof(a)与strlen(a)分别为 ();5 ;6 ;5 ;613.以下叙述中错误的是 ()A.指针的运用可使程序代码效率更高 B.函数可以通过指针形参向所指单元传回数据C.字符型指针可以指向一个字符串D.基类型不同的指针可以直接相互赋值14.以下选项中,能作数据常量的为 () 二、随机题:1.阅读题:(将答案填写于方框处)#include<>intd=1;#include<>intd=1;voidfun(intp){intd=5;d+=p++;printf(“%d”,d);}main(){inta=3;fun(a);d+=a++;printf(“%d\n”,d);}2.阅读题:(将答案填写于方框处)#include<>main()#include<>main(){intx[]={1,3,5,7,2,4,6,0},i,j,k;for(i=0;i<3;i++)for(j=2;j>=i;j--)if(x[j+1]>x[j]){k=x[j];x[j]=x[j+1];x[j+1]=k;}for(i=0;i<3;i++)for(j=4;j<7-i;j++)if(x[j]>x[j+1]){k=x[j];x[j]=x[j+1];x[j+1]=k;}for(i=0;i<8;i++)printf(“\\%d,”,x[i]);}3.阅读题:(将答案填写于方框处)#include<>voidfun(inta,intb)#include<>voidfun(inta,intb){intt;t=a;a=b;b=t;}main(){intc[10]={1,2,3,4,5,6,7,8,9,0},i;for(i=0;i<10;i+=2)fun(c[i],c[i+1]);for(i=0;i<10;i++)printf(“%d,”,c[i]);printf(“\n”);}4.填空题:猴子吃桃,猴子第一天摘下若干个桃子,当即吃了一半觉得不过瘾,又多吃了一个;第二天又将前一天剩下的桃子吃掉一半,又多吃了一个;以后每天早上都吃了前一天剩下的一半多一个。到了第十天想再吃时,只剩下一个桃子,求第一天共摘了多少个将横线处填上语句完整程序。#include<>#include<>main(){ints,i,j;for(i=1;;i++)/*穷举法*/{__________________________;for(j=1;j<10;j++)__________________________;if(s==1)break;}printf(“%d”,i);}5.填空题:下面给定程序,函数fun的功能是:将形参a所指数组中的前半部分元素的值和后半部分元素的值对换。形参n中存放数组中的数据个数,若n为奇数,则中间的元素不动。例如:若a所指数组的数据为:1,2,3,4,5,6,7,8,9,则调换后为:6,7,8,9,5,1,2,3,4。将横线处填上语句完整程序。#include<>#include<>#defineN9voidfun(inta[],intn){inti,t,p;p=(n%2==0)n/2:n/2+___________;for(i=0;i<n/2;i++){t=a[i];a[i]=_______________;______________=t;}}main(){intb[N]={1,2,3,4,5,6,7,8,9},i;printf(“theoriginaldata:\n”);for(i=0;i<N;i++)printf(“%4d”,b[i]);printf(“\n”);fun(b,N);printf(“thedataaftermoving:\n”);for(i=0;i<N;i++)printf(“%4d”,b[i]);printf(“\n”);}6.阅读题:(将答案填写于方框处)#include<>#include<>#defineMIN(x,y)(x)<(y)(x):(y)main(){inti=10,j=15,k;k=10*MIN(i,j);printf(“%d\n”,k);}7.填空题:下面给定程序,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M行字符串,且串长小于N。将横线处填上语句完整程序。#include<>#include<>#include<>#defineM5#defineN20intfun(char(*ss)[N],int*n){inti,k=0,len=N;for(i=0;__________;i++){len=strlen(ss[i]);if(i==0)*n=len;if(len______*n){*n=len;k=i;}}return___________;}main(){charss[M][N]={“shanghai”,”guangzhou”,”beijing”,”tianjing”,”chongqing”};intn,k,i;printf(“theoriginalstringsare:\n”);for(i=0;i<M;i++)puts(ss[i]);k=fun(ss,&n);printf(“thelengthofshorteststringis:%d\n”,n);printf(“theshorteststringis:%s\n”,ss[k]);}8.填空题:下面给定程序的功能是:选出能被3整除且至少有一位是5的两位数,打印出所有这样的数及其个数。将横线处填上语句完整程序。#include<>#include<>intfun(intk,intn){inta1,a2;a2=k/10;a1=k-_______________;if(_______________________){printf(“%4d”,k);n++;returnn;}elsereturn-1;}main(){intn=0,k,m;for(k=10;k<=99;k++){m=fun(k,n);if(___________________)n=m;}printf(“n=%d\n”,n);}9.填空题:下面给定程序,fun函数的功能是:不断从键盘读入整数,由变量a统计大于0的整数个数,用变量b统计小于0的整数个数,当输入0时停止读入,通过形参px和py把统计的数据传回主函数进行输出。将横线处填上语句完整程序。#include<>#include<>voidfun(int*px,int*py){int_____________;scanf(“%d”,&k);while(______________){if(k>0)a++;if(k<0)b++;_________________;}*px=a;*py=b;}main(){intx,y;fun(&x,&y);printf(“x=%dy=%d\n”,x,y);}10.阅读题:(将答案填写于方框处)#include<>main()#include<>main(){inta=3,b=7,c=1,d;d=a--||--c&&b++;printf(“%d,%d,%d,%o”,a,d,c,b);}11.填空题:下面给定程序的功能是:使用冒泡法将数组N个元素,排成升序,并以每行5个元素的形式输出。将横线处填上语句完整程序。#include<>#include<>#define N10main(){inta[N];inti,j,t;for(i=0;i<=N;i++)scanf(“%d”,&a[i]);for(i=0;i<_____________;i++)for(j=0;j<________________;j++)if(____________________){t=a[j];a[j]=a[j+1];a[j+1]=a[j];}for(i=0;i<N;i++){printf(“%5d”,a[i]);if((i+1)%5==0)printf(“\n”);}}12.填空题:输出1000以内的所有完数(一个数如果恰好等于它的因子之和,这个数就称为完数,例如:6的因子是1,2,3,6=1+2+3,

温馨提示

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

评论

0/150

提交评论