您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 2007级《面向过程程序设计(C语言)》试卷A
第1页共4页课程名称:面向过程程序设计(C语言)(A卷闭卷)适用专业年级:计07级,通信07级考试时间:100分钟题号一二三四五六七八九十总分统分人签名题分36162028100得分考生注意事项:1、本试卷共4页,试卷如有缺页或破损,请立即举手报告以便更换。2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。3、答案全部做在答题纸上,并写在密封线内和纸卷正面,否则不记分。一、单选题(每题1.5分,共36分)1、设有如下的变量定义:inti=8,k,a,b;unsingedlongw=5;doublex=1,42,y=5.2;则以下符合C语言语法的表达式是()。A.a+=a-=(b=4)*(a=3)B.x%(-3)C.a=a*3=2D.y=float(i)2、表达式(a=3*5,a*5),a+5的值是多少()。A.20B.80C.不能确定D.153、设有inti=10,j=10;则printf(%d,%d\n,++i,j--)的输出是()。A.11,10B.910C.109D.10,94、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()。main(){intx;scanf(%d,&x);if(x++5)printf(%d,x)elseprintf(%d\n,x--);}A.7和5B.6和3C.7和4D.6和45、以下能对二维数组a进行正确初始化的语句是()。A.inta[2][]={{1,0,1}{5,2,3}};B.inta[][3]={{1,2,3},{4,5,6}};C.inta[2][4]={{1,2,3},{4,5},{6}};D.inta[][3]={{1,0,1}{},{1,1}};6、能正确表示逻辑关系:a≥=10或a≤0的C语言表达式是()。A.a=10ora=0B.a=0||a=10C.a=10&&a=0D.a=0||a=107、定义如下变量和数组:inti;intx[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是()。for(i=0;i3;i++)printf(%d,x[i][2-1]);A.159B.147C.258D.3698、下面有关for循环的正确描述是()。A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来9、以下程序的输出结果是()。main(){intx=2,y=-1,z=2;if(xy)if(y0)z=0;elsez+=1;printf(%d\n,z);}A.3B.2C.1D.010、已知函数的调用形式:fread(buffer,size,count,fp);其中buffer代表的是()。A.一个整数,代表要读入的数据项总数B.一个文件指针,指向要读的文件C.一个指针,指向要读入数据的存放地址D.一个存储区,存放要读的数据项11、对以下说明语句的正确理解是()。inta[10]={6,7,8,9,10};A.将5个初值依次赋给a[1]至a[5]B.B.将5个初值依次赋给a[0]至a[4]C.将5个初值依次赋给a[6]至a[10]D.因为数组长度与初值的个数不相同,所以此语句不正确12、下面程序段的运行结果是chara[]=lanuage,*p;p=a;while(*p!='u'){printf(%c,*p-32);p++;}A.LANGUAGEB.languageC.LAND.langUAGE湖南工业大学考试试卷纸系(院)课程名称班级姓名学号密封线湖南工业大学考试试卷纸系(院)课程名称班级姓名学号密封线第2页共4页13、以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是()。main(){int*p,*q,a,b;p=&a;printf(inputa:);scanf(%d,*p);}A.*p表示的是指针变量p的地址B.*p表示的是变量a的值,而不是变量a的地址C.*p表示的是指针变量p的值D.*p只能用来说明p是一个指针变量14、以下程序的输出结果是()。main(){inta=5,b=4,c=6,d;printf(%d\n,d=ab?(ac?a:c):(b));}A.5B.4C.6D.不确定15、在说明语句:int*f();中,标识符f代表的是()。A.一个用于指向整型数据的指针变量B.一个用于指向一维数组的行指针C.一个用于指向函数的指针变量D.一个返回值为指针型的函数名16、变量的指针,其含义是指该变量的()。A.值B.地址C.名D.一个标志17、以下说法中正确的是()。A.C语言程序总是从第一个函数开始执行B.在C语言程序中,要调用的函数必须在main()函数中定义C.C语言程序总是从main()函数开始执行D.C语言程序中的main()函数必须放在程序的开始部分18、设有如下的程序段:charstr[]=”Hello”;char*ptr;ptr=str;执行上面的程序段后,*(ptr+5)的值为()。A.'O'B.‘\0’C.不确定的值D.'O'的地址19、语句typedeflongclass的作用是()。A.建立了一种新的数据类型B.定义了一个整型变量C.定义了一个长整型变量D.定义了一个新的数据类型标识符20、算法的表示方法有()。A.自然语言,传统流程图,N-S流程图,伪代码,计算机语言B.高级语言,汇编语言,机器语言C.C语言,QBASIC语言,InterDevD.图形图像法,描述法,编程法21、下列程序的输出结果是()。main(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf(%d\n,d*y);}A.3B.3.2C.0D.3.0722、有如下程序:#includestdio.hmain(){intn=9;while(n6){n--;printf(”%d”,n);}}该程序段的输出结果是()。A.987B.876C.8765D.987623、若有说明inta[3][4];则a数组元素的非法引用是()。A.a[0][2*1]B.a[1][3]C.a[4-2][0]D.a[0][4]24、分析以下程序的运行结果()。#includestdio.hfunc(inta,intb){inttemp=a:a=b;b=temp;}main(){intx,y;x=10;y=20;func(x,y);printf(”%d,%d\n”,x,y);}A.10,20B.10,10C.20,10D.20,20二、填空题(每空1分,共16分)1、用来引用特定数组元素的数字称为。2、一个函数一般由两部分组成:它们分别是函数说明部分和__________。3、C语言中的标识符只能由三种字符组成,它们是字母,__________和__________。4、已知charch;则判断ch是英文字符的逻辑表达式是_______________。5、设x和y均为int型变量,且x=1,y=2,则以下表达式:0+x/y的值为_____________。6、标准库函数_________接收从键盘输入的数据。7、假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为____________。湖南工业大学考试试卷纸系(院)课程名称班级姓名学号密封线8、在C语言中(以16位PC机为例),一个char型数据在内存中所占的字节数为1字节;一个float型数据在内存中所占的字节数为_________;一个int型数据在内存中所占的字节数为________。9、数字符号0的ASCⅡ码十进制表示为48,数字符号8的ASCⅡ码十进制表示为__________。10、C语言中最简单的数据类型是整型、____________、______________。11、若有以下定义:doubleW[10];则w数组元素下标的上限为————,下限为————。12、在c语言中,逻辑运算符&&,||,!的优先级别按从高到低的顺序是______________。三、程序分析题(每小题2分,共20分)1、写出该程序运行的结果________。fun(intp){intd=5;d+=p++;printf(%d,,d);}main(){inta=3;intd=1;fun(a);d+=a++;printf(%d\n,d);}2、程序的输出为________。#includestdio.hmain(){inty=10;while(y--);printf(y=%d\n,y);}3、下面程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其它元素不变。请填空。#includestdio.h#includestring.hvoidmain(){chara[]=clanguage,t;inti,j,k;k=strlen(a);for(i=0;i=k-2;i+=2)for(j=i+2;j=k;_______________)if(_______________){t=a[i];a[i]=a[j];a[j]=t;}puts(a);printf(\n);}4、写出该程序运行的结果________。main(){inti,j,m,n;i=8;j=10;m=++i;n=j++;printf(%d,%d,%d,%d,i,j,m,n);}5、写出该程序运行的结果________。main(){charst='A';inti=10;st=st+i;i=st%i;printf(%C,%d\n,st,i);}(已知字母A的ASCII码为65)6、若inti=10;,则执行下列程序后,变量i的正确结果是________。switch(i){case9:i+=1;case10:i+=1;case11:i+=1:default:i+=1;}7、从键盘输入一个大写字母,要求改用小写字母输出,程序如下,请填空。#includestdio.hmain(){charc1,c2;____________________;printf(%c,%d\n,c1,c1);___________________;printf(%c,%d\n,c2,c2);}8、把100-200之间的不能被3整除的数输出,请填空。main(){intn;__________________;{if(n%3==0)___________________;printf(%d,n);}}第3页共4页湖南工业大学考试试卷纸系(院)课程名称班级姓名学号密封线9、求(1+2!+……20!)程序如下;main{floats=0,t=1;intn;for(n=1;n=20;n++){__________________;__________________;}printf(1+2!+……20!=%e\n,s);}10、若从键盘输入58,则以下程序输出的结果是____________。main(){inta;scanf(%d,&a);if(a50)printf(%d,a);if(a40)printf(%d,a);if(a30)printf(%d,a);}四、程序设计题(每小题7分,共28分)1、编程序求1~40的平方根的和并输出结果。(保留小数点两位)2、计算在0至80的范围内有多少个数,其每位数的乘积小于每位数的和。3、程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(inta[][N],intn),函数的功能是:使数组右上半三角元素中的值乘以m。4、已知学生的记录由学号、姓名、3门课程的成绩构成,共8名学生,编写程序,实现从键盘输入8名学生的数据,从显示器输出这8名学生的数据(包括学号、姓名、3门课程的成绩).(学生记录要求用结构体定义)。第4页共4页湖南工业大学考试试卷纸系(院)课程名称班级姓名学号密封线
本文标题:2007级《面向过程程序设计(C语言)》试卷A
链接地址:https://www.777doc.com/doc-3081340 .html