C语言模拟测试题一及答案_第1页
C语言模拟测试题一及答案_第2页
C语言模拟测试题一及答案_第3页
C语言模拟测试题一及答案_第4页
C语言模拟测试题一及答案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

模拟题一一、选择题1.下列说法正确的是()。A)main函数必须放在C程序的开头B)main函数必须放在C程序的最后C)main函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的D)main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的2.C语言中不能用来表示整常数的进制是()。A)十进制 B)十六进制 C)八进制 D)二进制3.在下面几组数据类型中,全为最常用的基本数据类型的是哪一组:()。A)整型实型字符型B)整型数组指针C)数组结构体共用体D)指针逻辑型空类型4.C语言规定标识符由()等字符组成。A)字母数字下划线B)中划线字母数字C)字母数字逗号D)字母下划线中划线5.若有说明语句:charc=‘\64’;则变量C包含()。A)1个字符B)2个字符C)3个字符D)说明不合法,C值不确定6.若有如下定义:inta=2,b=3;floatx=3.5,y=2.5;则表达式:(float)(a+b)/2+(int)x%(int)y的值是()。A)2.500000B)3.500000C)4.500000D)5.0000007.设有如下定义和执行语句,其输出结果为()。inta=3,b=3;a=--b+1;printf(“%d%d”,a,b);A)32B)42C)22D)238.以下表达式:2+’a’+i*f,其中i为整型变量,f为float型变量,则表达式的最终数据类型为()。A)intB)floatC)charD)double9.C语言中,运算对象必须是整型数的运算符是()。A)% B)\ C)%和\ D)**10.有如下语句:printf(“%s,%5.3s\n”,“COMPUTER”,“COMPUTER”);执行语句后的最终结果为()。A)COMPUTER,CMP.B)COMPUTER,CMP.C)COMPU,CMP.D)COMPU,CMP.11.能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是()。A)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)B)(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)D)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)12.以下if语句中语法错误的是()。A)if(a>b)printf(“%f”,a);B)if(a>b)printf(“%f”,a);elseprintf(“%f”,b);C)if(a>b)printf(“%f”,a)D)if(a>b)printf(“%f”,b);elseprintf(“%f”,b);elseprintf(“%f”,a);13.程序段如下intk=0;while(k++<=2);printf("last=%d\n",k);则执行结果是last=()。A)2B)3C)4D)无结果14.能表示整数x符合下面两个条件的语句是()。(1)“能被4整除,但不能被100整除”.(2)能被4整除,又能被400整除.A)(x%4==0&&x%100!=0)||x%400==0B)(x%4==0||x%100!=0)&&x%400==0C)(x%4==0&&x%400!=0)||x%100==0D)(x%100==0||x%4!=0)&&x%400==015.下面有关for循环的正确描述是()。A)for循环只能用于循环次数已经确定的情况B)for循环是先执行循环体语句,后判断表达式C)在for循环中,不能用break语句跳出循环体D)for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来16.循环语句中的for语句,其一般形式如下:for(表达式1;表达式2;表达式3)语句其中表示循环条件的是()。A)表达式1B)表达式2C)表达式3D)语句17.若二维数组a有m列,则a[I][j]元素前的数组元素个数为()。A)j*m+iB)i*m+jC)i*m+j-PAGE228D)i*m+j+118.以数组作为函数的参数时传递的数组的首地址,那么实参数组与形参数组之间的数据传递方式为()。A)地址传递B)单向值传递C)双向值传递D)随机传递19.C语言中变量的指针指的是()。A)变量类型B)变量值C)变量值D)变量地址20.将字符串str2连接到字符串str1中应使用()。A)strcpy(str1,str2)B)strcat(str1,str2)C)strcmp(str1,str2)D)strcat(str2,str1)21.设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[10]中,下面语句中能把“China”连接到“Beijing”之后的为()。A)strcpy(str1,str2);B)strcpy(str1,“China”);C)strcat(str1,“China”)D)strcat(“Beijing”,str2);22.若有以下定义:inta[10],*p=a;则*(p+3)表示的是()。A)元素a[3]的地址B)元素a[3]的值C)元素a[4]的地址D)元素a[4]的值23.以下程序的运行结果是()。main(){inta=2,i;for(i=0;i<3;i++)printf(“%4d”,f(a));}f(inta){intb=0,c=3;b++;c++;return(a+b+c);}A)71013B)777C)7911D)78924.若有如下语句:int*p1,*p2;则其中int所指的是()。A)p1的类型B)*p1和*p2的类型C)p2的类型D)p1和p2所能指向变量的类型25.在C语言程序中,若未在函数定义时说明函数类型,则函数默认的类型为()。A)voidB)doubleC)intD)char26.若有如下说明:inta[10]={1,2,3,4,5,6,7,8,9,10};charb=’a’,d,e;则数值为4的表达式是()。A)a[4]B)a[d-b]C)a[‘d’-b]D)a[e-b]27.在说明一个结构体变量时系统分配给它的存储空间是()。A)该结构体中第一个成员所需存储空间B)该结构体中最后一个成员所需存储空间C)该结构体中占用最大存储空间的成员所需存储空间D)该结构体中所有成员所需存储空间的总和28.有如下程序段,在TurboC环境下运行的结果为()。main(){inti=2,p,k=1;intf(inta,intb)p=f(i,++k);{intc;printf(“I=%d,p=%d”,k,p);if(a>b)c=1;}elseif(a==b)c=0;elsec=-1;return(c);}A)1,0B)2,0C)2,-1D)1,129.使用fseek函数可以实现的操作是()。A)改变文件的位置指针的当前位置B)文件的顺序读写C)文件的随机读写D)以上都不对30.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是()。

A)EOFB)0C)非零值D)NULL二、填空题1.为表示关系:x≤y≤z,应使用的C语言表达式是_____(x<=y)________。2.字符串是以__________为结束标志的一维字符数组。有定义:chara[]="";则a数组的长度是____________。3.设inta;floatf;doublei;则表达式10+'a'+i*f值的数据类型是___________。4.设有说明语句"inta[3][4]={{1,2},{3,4,5},{6,7,8}};"则a[0][2]的初始化值为_____________,a[2][2]的初始化值为______________。5.假定p所指对象的值为25,p+1所指对象的值为46,则执行"(*p)++;"语句后,p所指对象的值为___________6.程序由主要由__________、_________组成。7.有函数调用fun1(x+y,(y,z),10,fun((x,y―1)));函数fun1有_______个参数。三、程序阅读题1.下面程序可求出1~1000的自然数中所有的完数(因子和等于该数本身的数)请填空。main(){intm,n,s;for(m=2;m<1000;m++){____(1)____;for(n=1;n<=m/2;n++)if(__(2)___)s+=n;if(__(3)___)printf(“%d\n”,m);}}2..用起泡法对十个数由大到小排序。main(){inta[11],i,j,t;printf(“input10numbers:\n”);for(i=1;i<11;i++)scanf(“%d”,&a[i]);printf(“\n”);for(j=1;j<=9;j++)for(i=1;_(4)__;i++)if(__(5)___){t=a[i];a[i]=a[i+1];__(6)__;}printf(“thesortednumbers:\n”);for(i=1;i<11;i++)printf(“%d”,a[i]);}写出下面程序的执行结果3.#include<stdio.h>main(){charc=‘A’+‘10’-‘5’;printf(“c=%c\n”,c);}4.#include<stdio.h>main(){inta,b,c;a=1;b=2;c=3;if(a>b)if(a>c)printf(“%d\n”,a);elseprintf(“%d\n”,b);printf(“over\n”);}5.main(){chara[6][6],i,j;for(i=0;i<6;i++)for(j=0;j<6;j++){if(i<j)a[i][j]=‘#’;elseif(i==j)a[i][j]=‘’;elsea[i][j]=‘*’;}for(i=0;i<6;i++){for(j=0;j<6;j++)printf(“%c”,a[i][j]);printf(“\n”);}}6.main(){inti=2,x=5,j=7;fun(j,6);printf(“i=%d;j=%d;x=%d\n”,i,j,x);}fun(inti,intj){intx=7;printf(“i=%d;j=%d;x=%d\n”,i,j,x);7.#include<stdio.h>main(){inti,j;int﹡p,﹡q;i=2;j=10;p=&i;q=&j;﹡p=10;﹡q=2;printf(〞i=%d,j=%d\n〞,i,j);}8.structstru{intx;charc;};main(){structstrua={10,’x’},*p=&a;func(p);printf(“%d,%c”,a.x,a.c);}func(structstru*b){b->x=20;b->c=’y’;}四、编程题1.把输入的整数(最多不超过5位)按输入顺序的反方向输出,例如,输入数是12345,要求输出结果是54321,编程实现此功能。2.编一程序,从键盘输入10个整数并保存到数组,要求找出最小的数和它的下标,然后把它和数组中最前面的元素对换位置。3.编写一个函数计算一个字符串的长度,输入输出在主函数内完成。(使用指针)参考答案:一、选择题:1~5DDAAA6~10BADAB11~15BCCAD16~20BDADB21~25CBBDC26~30CDBAC二、填空题:1.(x<=y)&&(y<=z)2.'\0',03.double4.0,85.266.数据结构,算法7.4三、程序阅读题:1.(1)s=0(2)m%n==0(3)s==m2.(4)i<=10-j(5)a[i]>a[i+1](6)a[i+1]=t3.c=F4.over5.#####*####**###***##****#*****6.i=7;j=6;x=7<cr>i=2;j=7;x=5;<cr>7.i=10,j=28.10,x四、编程题:1.这是一种答案,可以不使用循环,使用switch语句来做。#include<stdio.h>main(){intn=1,m=0,k,mod_mn=1;printf(“PleaseInputmvalue:\n”);scanf(“%d”,&m);n=1;for(k=0;

温馨提示

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

评论

0/150

提交评论