您好,欢迎访问三七文档
当前位置:首页 > 高等教育 > 习题/试题 > c语言程序设计基础测试题-答案
.word范文C语言程序设计基础测试题一、单选[1]下面叙述中错误的是____。A.复合语句中定义的函数只在该复合语句中有效B.return()语句中的括号中,可以是变量,常量或有确定值的表达式C.形式参数也是局部变量D.主函数中定义的变量在整个程序中都是有效的[2]下列说法中正确的是____。A.带参数的宏定义中的参数是没有类型的B.宏展开将占用程序的运行时间C.宏定义命令是C语言中的一种特殊语句D.使用#include命令包含的头文件必须以“.h为后缀[3]若函数的形参为一维数组,则下列说法中正确的是____。A.调用函数时的对应实参必为数组名B.形参数组可以不指定大小C.形参数组的元素个数必须等于实参数组的元素个数D.形参数组的元素个数必须多于实参数组的元素个数[4]系统的标准输出设备是____。A.键盘B.硬盘C.内存D.显示器[5]下面叙述中正确的是____。A.全局变量在定义它的文件中的任何地方都是有效的B.全局变量在程序的全部执行过程中一直占用内存单元C.C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式D.说明函数时必须明确其参数类型和返回类型[6]C程序的基本结构单位是____。A.文件B.语句C.函数D.表达式[7]对于定义,char*aa[2]={abcd,ABCD},选项中说法正确的是____。A.aa数组元素的值分别是abcd和ABCDB.aa是指针变量,它指向含有两个数组元素的字符型一维数组C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址D.aa数组的两个元素中各自存放了字符'a'和'A'的地址[8]任何一个C语言的可执行程序都是从____开始执行的。A.程序中的第一个函数.word范文B.main()函数的入口处C.程序中的第一条语句[9]操作系统的作用是()。A.把源程序翻译成目标程序B.进行数据处理C.控制和管理系统资源的使用D.实现软硬件的转换[10]下面几种说法中哪个是正确的?_____________A.else语句需与它前面的if语句配对使用;B.else语句需与前面最接近它的if语句配对使用;C.else语句需与前面最接近它的,且没有和其它else语句配对的if语句配对;D.以上都正确。[11]设整型变量a为5,使b不为2的表达式是___________A.b=a/2B.b=6-(--a)C.b=a%2D.b=a3?2:1[12]下列对数组操作不正确的语句是________A.inta[5];B.charb[]={‘h’,’e’,’l’,’l’,’o’};C.inta[]={2,3,4,5};D.charb[3][]={1,2,3,4,5,6};[13]设A为存放短整型的一维数组,如果A的首地址为P,那么A中第I个元素的地址为A.P+I*2B.P+(I-1)*2C.P+(I-1)D.P+I[14]十进制数100转换成二进制数是A.01100100B.01100101C.01100110D.01101000[15]Windows中,对文件和文件夹的管理是通过来实现的。A.对话框B.剪贴板C.资源管理器或我的电脑D.控制面板【答案】DABDBCDBCCCDDAC二、判断1.微型计算机的核心部件是微处理器。(对)2.在微机性能指标中,CPU的主频越高,其运算速度越快。(对)3.组成微机系统总线的是译码、计数和控制总线。(错)微型计算机三总线:数据总线(DB)、地址总线(AB)、控制总线(CB)4.以二进制形式输出文件,则文件的内容与内存中完全一致(对)5.定义:inta=123;若以ASCII文件的形式存放,则a将在磁盘上占三个字节(对)6.C语言中,switch后的括号内表达式的值可以是整型,字符型,枚举型(对).word范文7.函数的形式参数,在函数未被调用时就不被分配存储空间(对)8.若函数的定义出现在主调函数之前,则可以不必再加说明(对)9.若一个函数没有return语句,则什么值也不会返回(错)10.一般来说,函数的形参和实参的类型应该一致(对)三、填空1.为解决某一特定问题而设计的指令序列称为程序2.处于执行状态的进程,因时间片用完就转换为就绪状态3.计算机硬件的五大基本构包括:运算器、控制器、存储器、输入设备和输出设备4.计算机所能辨认的最小信息单位是位5.计算机能直接识别和执行的语言是机器语言6.编译程序是将计算机高级语言源程序翻译成目标程序的系统软件7.每条指令都必须具有的、能与其他指令相区别的、规定该指令执行功能的部分称为操作码8.目前Windows系统是多用户多任务操作系统。9.操作系统的主要作用是管理系统资源,这些资源包括硬件和软件10.计算机可以处理信息有数值、文字、语言、图像等11.C语言从源程序的书写到上机运行输出结果要经过编辑、编译、连接、执行四个步骤。12.C语言的表达式与语句的区别在于“表达式”未尾加“;”号就成“语句”。13.C语句没有(有、没有)输入、输出语句。14.结构化程序的编写有顺序、分支、循环三种程序结构。15.C语言中,变量的存储类别共有四种,即时自动型、外部型、静态型和寄存器型。表达式10/3*9%10/2的值是3。16.设有“intx=2,y”说明,则逗号表达式“y=x+5,x+y”的值是9。17.设有“intx=1”,则“x0?2*x+1:0”表达式的值是3。.word范文18.变量Y满足以下两条件中的任意一个:①能被4整除,但不能被100整除;②能被400整除。请用逻辑表达式表示所给条件。y%4==0&&y%100!=0||y%400==019.逻辑运算符“&&、||、!”中是短路运算符号是&&、||四、读程序1.阅读函数,根据函数完成的主要功能,补充、完善主函数。floatav(floata[],intn){inti;floats;for(i=0,s=0;in;i++)s=s+a[i];return(s/n);}main(){floata[10];inti;for(i=0;i10;i++)scanf(%f,&a[i]);printf(%f,av(a,10));}2.写出下列程序的输出结果:main(){intx,y,z;x=y=z=-1;printf(x=%d\ty=%d\tz=%d\n,x,y,z);++y&&++x||++z;printf(x=%d\ty=%d\tz=%d\n,x,y,z);x=y=z=-1;++x||y++&&z;printf(x=%d\ty=%d\tz=%d\n,x,y,z);}【答案】x=-1y=-1z=-1x=-1y=0z=0x=0y=0z=-13.下面程序的输出结果是什么?#includestdio.hmain().word范文{intx=3;switch(x){case1:case2:printf(x3\n);case3:printf(x=3\n);case4:case5:printf(x3\n);default:printf(xunknow\n);}}【答案】x=3x3xunknow4.根据源程序,写出相应的数学表达式#include“stdio.h”main(){intx,y;scanf(“%d”,&x);if(x0)y=-1;elseif(x==0)y=0;elsey=1;printf(“x=%d,y=%d\n”,x,y);}【答案】010001xxxy5.分析下列程序所完成的功能。main(){inta,b,c,*pa=&a,*pb=&b,*pc=&c,*p;scanf(%d,%d,%d,pa,pb,pc);if(*pa*pb)p=pa,pa=pb,pb=p;if(*pa*pc)p=pa,pa=pc,pc=p;if(*pb*pc).word范文p=pb,pb=pc,pc=p;printf(%d=%d=%d,*pa,*pb,*pc);}【答案】从小到大排序五、编程1.输入一单精度二维数组a[4][3],计算该二维数组中的最大元素的值及其所在位置(行、列),并输出计算结果。源程序:#includestdio.hvoidmain(){floata[4][3];floatmax;introw,col;inti,j;for(i=0;i4;i++)for(j=0;j3;j++)scanf(%f,&a[i][j]);max=a[0][0];for(i=0;i4;i++){for(j=0;j3;j++)if(a[i][j]max){max=a[i][j];row=i;col=j;}}printf(该二维数组中的最大元素是a[%d][%d]=%f\n,row,col,max);}运行结果:2.N个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入N个学生的信息,要求输出总平均成绩最高的学生信息,包括学号、性别、姓名和平均成绩。源程序:#includestdio.h.word范文#defineN2structstudent{charnum[10];charsex;charname[20];intscore[4];}s[N];voidmain(){inti,j,t;floatave[N]={0};floatmax_ave=0;for(i=0;iN;i++){printf(输入第%d位学生的信息\n,i+1);printf(学号:);scanf(%s,&s[i].num);//&s[i].num等价于&(s+i)-num,下同printf(性别:);scanf(\n%c,&s[i].sex);//注意其中的\n%c,不加\n,性别内容都是空格printf(姓名:);scanf(%s,&s[i].name);printf(四门课的成绩:);scanf(%d%d%d%d,&s[i].score[0],&s[i].score[1],&s[i].score[2],&s[i].score[3]);}for(i=0;iN;i++){for(j=0;j4;j++)ave[i]+=s[i].score[j];ave[i]=ave[i]/4;if(ave[i]max_ave){max_ave=ave[i];t=i;}}printf(总平均成绩最高的学生\n学号:%s\t性别:%c\t\t姓名:%s\t平均成绩:%f\n,s[t].num,s[t].sex,s[t].name,max_ave);}运行结果:.word范文——邹东雪2011-1-1欢迎您的光临,word文档下载后可以修改编辑。双击可以删除页眉页脚。谢谢!单纯的课本内容,并不能满足学生的需要,通过补充,达到内容的完善
本文标题:c语言程序设计基础测试题-答案
链接地址:https://www.777doc.com/doc-5684147 .html