您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > 试卷排版方式(模板)
(第1页,共9页)蚌埠医学院2009/2010学年第一学期08信息管理与信息系统专业《C语言程序设计》考试试卷试卷类别:A卷考试时间:100分钟系别年级学号姓名题号一二三总分题型选择题填空题编程题分值403030得分一、选择题(共40分)(1-20题每题1分,21-30每题2分)答题卡:(注:选择题答案必须填写在此答题卡内)题号12345678910答案题号11121314151617181920答案题号21222324252627282930答案1、下列是c语言中合法的变量名称是______A.B#123B.FloatC.voidD.xy*2、设有变量定义语句inta=4;则执行语句a+=a-=a*a后,变量a的值为_______A.-24B.16C.4D.243、若有以下定义和语句:charc1=’b’,c2=’f’;printf(“%d,%c”,c2-c1,c2-‘a’+’A’)A.3,fB.4,EC.4,FD.结果不确定4、有定义语句:intx,y;现通过scanf(“%d,%d”,&x,&y);语句使变量x装订线(第2页,共9页)得到数值5,变量y得到数值7,下列四组输入形式中,错误的是________A.57回车B.5,7回车C.5,7回车D.5,回车7回车5、能正确表示a和b为同号的逻辑表达式是______A.(a=0||b=0)&&(a0||b0)B.(a=0&&b=0)&&(a0&&b0)C.(a+b0)&&(a+b=0)D.a*b06、现要求程序段完成求5!的计算,不能完成此操作的程序段是______A.for(i=1,p=1;i=5;i++)p*=i;B.for(i=1;i=5;i++){p=1;p*=i;}C.i=1;p=1;do{p*=i;i++;}while(i=5);D.i=;p=1;while(i=5){p*=i;i++;}7、现有以下程序段intk=0;while(k=1)k++;While循环执行次数为_________A.执行一次B.一次也不执行C.无限次D.有语法错误,不能执行8、若有如下程序段,其中s,a,b,c均已定义为整型变量,且a、c均已赋值(c大于0)。s=a;for(b=1;b=c;b++)s=s+1;则与上述程序段功能等价的赋值语句是_______A.s=a+bB.s=b+cC.s=a+cD.s=s+c9、若执行以下程序是从键盘上输入9,则输出结果为_______main(){intn;scanf(“%d\n”,&n);if(n++10)printf(“%d\n”,n);elseprintf(“%d\n”,n--);}A.8B.11C.9D.1010、现有如下程序段main(){intx=1,a=0,c=2;switch(x){case0:b++;case1:a++;(第3页,共9页)case2:a++;b++;}printf(“a=%d,b=%d\n”,a,b);}该程序输出结果是_______A.a=2,b=1B.a=2,b=2C.a=1,b=0D.a=1,b=111、以下程序运行后的输出结果是________main(){inti=0,s=0;for(;;){if(i==3||i==5)continue;if(i==6)break;i++;s+=I;}printf(“%d\n”,s);}A.21B.13C.10D.死循环12、有语句charstr1[10],str2[10]={};则将字符串“China”赋给数组str1的正确语句是________A.str1=*str2B.strcpy(str1,str2)C.strcpy(str2,str1)D.str1=str213、若用一维数组名作为调用函数时的实参,则传递给形参的是________A.数组元素的个数B.数组中首元素的地址C.数组元素的值D.数组中全部元素的值14、在c语言中,以下说法正确的是_________A形参是虚拟的,不占用内存单元B.由计算机系统自动确定是否公用存储单元C.实参和与其对应的形参各占用独立的存储单元D.实参和与其对应的形参可公用存储单元15、要使函数体内的某局部变量能保留函数前一次调用后的值,该变量的存储类型应为_______A.autoB.staticC.registerD.extern16、定义函数时,函数的返回值类型可以缺省,此时该函数返回值隐含的类型是________A.charB.intC.voidD.不确定17、设有宏定义#defineY(x)x+2,则下面程序段运行结果是________(第4页,共9页)inta=2,b=2,c=1;printf(“%d\n”,a*Y(b+c));A.9B.10C.7D.1118、以下语句定义中,错误的是________A.intn=5,a[n];B.inta[]={1,2}C.char*a[3];D.chars[10]=”ctest”;19、若定义以下函数:voidfun(……){……*p=(double*)malloc(10*sizeof(double));……}p是该函数的形参,要求通过p把动态分配存储单元的地址传回主调函数,则形参p的正确定义应当是________A.double**pB.float**pC.double*pD.float*p20、有如下程序语句:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是__________A.*p+9B.*(p+8)C.*p+=9D.p+821、以下程序段运行的结果是__________voidfun(int*x,int*y){int*k;k=x;x=y;y=k;}main(){inta=3,b=6,*p=&a,*q=&b;fun(p,q);printf(“%d,%d”,a,b);}A.63B.6,3C.3,6D.0,022、以下程序输出结果是_________main(){inta[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;printf(“%d”,*--p);}A.7B.a[4]的地址C.5D.323、执行以下程序段后y的值为________答题不超过密封线(第5页,共9页)staticinta[]={1,3,5,7,9};inty,x,*ptr;y=1;prt=&a[1];for(x=0;x3;x++)y*=*(ptr+x);A.945B.15C.105D.不确定24、若有说明语句:intI,x[3][4];则不能将x[1][1]的值赋给变量i的语句是________A.i=*(*(x+1)+1)B.i=x[1][1]C.i=*(x[1]+1)D.i=*(*(x+1))25、以下程序段执行结果是_______staticcharx[]=”Program”;char*p;p=x;for(p=x;px+7;p+=2)putchar(*p);A.ProgramB.PormC.ProrD.Por26、执行以下程序段后m的值为_______staticinta[2][3]={{1,2,3},{4,5,6}};intm,*p;p=&a[0][0];m=(*p)*(*(p+2)*(*(p+4));A.24B.48C.15D.2027、设有以下说明语句:structex{intx;floaty;charz;}example;则下面的叙述中错误的是________A.struct是结构体类型的关键字B.example是结构体类型名C.x,y,z都是结构体成员名D.structex是结构体类型28、现有共用体定义如下:union{intI;floata;charc;}ex;装订线(第6页,共9页)则sizeof(ex)的值是_______A.7B.4C.5D.629、若有以下定义,则对data中的成员a的正确引用是_______structex{inta;floatb;}data,*p=&data;A.(*p).data.aB.(*p).aC.p-data.aD.p.data.a30、下列关于C语言文件的细述中正确的是_________A.文件由一系列数据一次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文本或文本文件D.文件由字符序列组成,其类型只能是文本文件二、读程序写结果:(共30分)1、现有以下程序代码main(){inta,b;scanf(“%d”,&b);while(b!=0){a=b%10;b=b/10;printf(“%d”,a);}}程序执行,从键盘上输入8221,则输出结果为___________。2、现有程序完成统计公元1900年到公元2009年的闰年个数。判断闰年的方法是:能被400整除的年是闰年;除此之外,凡是能被4整除,但不能被100整除的年也是闰年。请把下列程序补充完整。main(){intyear,count=0;for(year=1900;year2010;year++)if((___________)||(year%4==0&&__________))______________;printf(“%d”,count);}3、现有以下程序段voidfun(){staticintx=2;(第7页,共9页)chark=’A’;x*=2;k+=1;printf(“%d,%c\n”,x,k);}main(){fun();fun();}执行结果为:__________________。4、现有以下程序段#includestdio.hvoidfun(int*a,int*b){int*k;k=a;a=b;b=k;}main(){inta=3,b=6,*p=&a,*q=&b;fun(p,q);printf(“%d,%d”,a,b);}运行结果为___________________。5、现有以下程序段#includestdio.hvoidsub(int*p,int*n){inti,j=0;for(i=0;i*n;i++)if(*(p+i)%2!=0)p[j++]=p[i];*n=j;}main(){inta[10]={11,12,13,14,15,16,17,18,19,20},n=10,i;sub(a,&n);for(i=0;in;i++)printf(“%d”,a[i]);}(第8页,共9页)运行结果为___________________。三、编程题(每题10分,共30分)1、编写函数voidcountValue(int*a,int*n),功能是:求出1到1000之内能被7或11整除但不能同时被7或11整除的所有整数并存放在数组a中,并通过n返回这些满足条件整数的个数。#include”stdio.h”voidcountValue(int*a,int*n){}voidmain(){intaa[1000],n,k;countValue(aa,&n);for(k=0;kn;k++)if((k+1)%10==0){printf(“%5d”,aa[k];printf(“\n”);}elseprintf(“%5d”,aa[k]);}2、编写函数jsValue(),它的功能是求Fibonacci数列中大于t的最小的一个数,结果由函数jsValue()返回,其中Fibonacci数列F(n)定义为:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)例如:当t=10时,函数jsValue()返回值应为13。#include”stdio.h”intjsValue(intt){答题不超过密封线(第9页,共9页)}voidmain(){intn;n=1000;printf(“n=%d,f=%d\n”,n,jsValue(n));}3、把s字符串中所有的字符左移一个位置,字符串中的第一个字符移到最后。请编写函数chg(char*s)实现程序要求。例如:s字符串原
本文标题:试卷排版方式(模板)
链接地址:https://www.777doc.com/doc-2067908 .html