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

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上C语言模拟试题 试卷编号:8156所属语言:C语言试卷方案:C语言模拟试卷总分:100分共有题型:5种一、判断 共10题 (共计20分)第1题 (2.0分) 题号:1225在给变量命名时,C语言区分大小写字母,即认为Name和name不是同一个变量.答案:Y第2题 (2.0分) 题号:1279循环结构while、do while、for不可以互相嵌套.答案:N第3题 (2.0分) 题号:1140链表中的任何一个结点,必然要包括一个指针域.答案:Y第4题 (2.0分) 题号:1265在书写C程序时,一行内只能写一条语句,一条语句也不能写在多行上.答案:N第5题 (2.0

2、分) 题号:1280C语言程序中用到的所有变量必须在使用之前进行定义.答案:Y第6题 (2.0分) 题号:1269若定义int a4=1,2,3,4;若超界引用a4则编译时不报错.答案:Y第7题 (2.0分) 题号:19C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。答案:Y第8题 (2.0分) 题号:11通过return语句,函数可以带回一个或一个以上的返回值。答案:N第9题 (2.0分) 题号:24对于数值型数组,C语言中只能逐个引用数组元素而不能一次引用整个数组。答案:Y第10题 (2.0分) 题号:33int i,*p=&i;是正确的C说明。答案:Y二、单项选择

3、共15题 (共计30分)第1题 (2.0分) 题号:87C语言源程序的基本单位是()。A:过程B:函数C:子程序D:标识符答案:B第2题 (2.0分) 题号:110C语言中,char类型数据占()。A:1个字节B:2个字节C:4个字节D:8个字节答案:A第3题 (2.0分) 题号:112下列程序的输出结果是()。main()char c1=97,c2=98;printf("%d %c",c1,c2);A:97 98B:97 bC:a 98D:a b答案:B第4题 (2.0分) 题号:170关于return语句,下列正确的说法是()。A:在主函数和其他函数中均可出现B:必须在

4、每个函数中出现C:可以在同一个函数中出现多次D:只能在除主函数之外的函数中出现一次答案:C第5题 (2.0分) 题号:137下列表达式中不是赋值表达式的是( ).A:a*=bB:x=1C:a+bD:a+答案:C第6题 (2.0分) 题号:94在C语言中,能代表逻辑值“真”的是()。A:TrueB:大于0的数C:非0整数D:非0的数答案:D第7题 (2.0分) 题号:570以下叙述不正确的是()。A:一个C源程序可由一个或多个函数组成B:一个C源程序必须包含一个main函数C:C程序的基本组成单位是函数D:在C程序中,注释说明只能位于一条语句的后面答 案:D第8题 (2.0分) 题号:129以下

5、各标识符中,合法的用户标识符为( ).A:A#CB:mysteryC:mainD:ab*答案:B第9题 (2.0分) 题号:166下列定义数组的语句中不正确的是()。A:int a23=1,2,3,4,5,6;B:int a23=1,4,5;C:int a3=1,4;D:int a=1,2,3,4,5,6;答案:D第10题 (2.0分) 题号:97以下不正确的叙述是()。A:在C程序中所用的变量必须先定义后使用B:程序中,APH和aph是两个不同的变量C:若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变D:当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只

6、能输入实型值答案:D第11题 (2.0分) 题号:139定义双精度实型变量应使用( ).A:long intB:floatC:charD:double答案:D第12题 (2.0分) 题号:627判断char型变量cl是否为小写字母的正确表达式是()。A:'a'<=cl<='z'B:(cl>=a)&&(cl<=z)C:('a'>=cl)|('z'<=cl)D:(cl>='a')&&(cl<='z')答案:D第13题 (2.

7、0分) 题号:3112下列语句定义pf为指向float类型变量f的指针,_是正确的.A:float f, *pf = f;B:float f, *pf = &f;C:float *pf = &f, f;D:float f, pf答案:B第14题 (2.0分) 题号:3114C语言源程序名的后缀是A:exeB:cC:objD:cp答案:B第15题 (2.0分) 题号:711下列选项中正确的语句组是()。A:char s8; s="Beijing"B:char *s; s="Beijing"C:char s8; s="Beijing

8、"D:char *s; s="Beijing"答案:D三、程序填空 共1题 (共计15分)第1题 (15.0分) 题号:403/*-【程序填空】-功能:输出9*9口诀。-*/#include <stdio.h>void main()int i,j,result;printf("n");/*SPACE*/for (i=1;【?】;i+) /*SPACE*/for(j=1;j<10;【?】)result=i*j;/*SPACE*/printf("%d*%d=%-3d",i,j,【?】);printf("

9、;n");答案:=(答案1)=i<10=或=10>i=(答案2)=j+=或=+j=或=j=j+1=(答案3)=result四、程序改错 共1题 (共计15分)第1题 (15.0分) 题号:14/*- 【程序改错】-功能:输出Fabonacci数列的前20项,要求变量类型 定义成浮点型,输出时只输出整数部分,输出前20项。-*/#include <stdio.h>void fun()int i;float f1=1,f2=1,f3;/*FOUND*/printf("%8d",f1);/*FOUND*/for(i=1;i<=20;i+)f

10、3=f1+f2;/*FOUND*/f2=f1;/*FOUND*/f3=f2;printf("%8.0f",f1);printf("n");void main() void fun();fun();答案:=(答案1)=printf("%8.0f",f1);=或=printf("%f",f1);=或=printf("%8f",f1);=(答案2)=for(i=1;i<20;i+)=或=for(i=1;20>i;i+)=或=for(i=2;i<=20;i+)=或=for(i=2;20

11、>=i;i+)=或=for(i=1;i<=19;i+)=或=for(i=1;19>=i;i+)=(答案3)=f1=f2;=(答案4)=f2=f3;五、程序设计 共1题 (共计20分)第1题 (20.0分) 题号:319/*-【程序设计】-功能:编写函数判断m是否为素数。在main函数中输出了100到200之间所有的素数。-*/#include "stdio.h"void wwjt();int fun(int m)/*Program*/* End */void main() int fun(int m);int m,k=0;for(m=100;m<20

12、0;m+)if(fun(m)printf("%4d",m);k+;if(k%5=0)printf("n");printf("k=%dn",k);wwjt();void wwjt()FILE *IN,*OUT;int iIN,iOUT,i;IN=fopen("in.dat","r");if(IN=NULL)printf("Please Verify The Currernt Dir.It May Be Changed");OUT=fopen("out.dat"

13、;,"w");if(OUT=NULL)printf("Please Verify The Current Dir. It May Be Changed");for(i=0;i<10;i+) fscanf(IN,"%d",&iIN);iOUT=fun(iIN);fprintf(OUT,"%dn",iOUT);fclose(IN);fclose(OUT); 答案:- int i,k=1;if(m<=1) k=0;for(i=2;i<m;i+)if(m%i=0) k=0;return k;-试卷

14、编号:8157所属语言:C语言试卷方案:C语言模拟试卷总分:100分共有题型:5种一、判断 共10题 (共计20分)第1题 (2.0分) 题号:1147一个字符型数据可以用整型数据格式输出,一个整数(只限于与字符相对应的整数)也可以用字符形式输出.答案:Y第2题 (2.0分) 题号:1284在C语言中,void型函数将返回一个void型的数值 .答案:N第3题 (2.0分) 题号:1106C语言的函数可以嵌套定义.答案:N第4题 (2.0分) 题号:15整数 -32100可以赋值给int型和long int型变量。答案:Y第5题 (2.0分) 题号:1229函数嵌套就是在定义函数的函数体中调用

15、被定义的函数本身.答案:N第6题 (2.0分) 题号:1238在C语言中,FLOAT可以被定义为变量名.答案:Y第7题 (2.0分) 题号:1245函数的递归就是反复地进行函数调用.答案:N第8题 (2.0分) 题号:1224在C语言程序中, 同一个问题可以有多种实现算法.答案:Y第9题 (2.0分) 题号:1282字符型数据与整型数据之间可以互相赋值和运算.答案:Y第10题 (2.0分) 题号:1110c程序总是从程序的第一条语句开始执行.答案:N二、单项选择 共15题 (共计30分)第1题 (2.0分) 题号:87C语言源程序的基本单位是()。A:过程B:函数C:子程序D:标识符答案:B第

16、2题 (2.0分) 题号:139定义双精度实型变量应使用( ).A:long intB:floatC:charD:double答案:D第3题 (2.0分) 题号:633对以下说明语句 int a10=6,7,8,9,10; 的正确理解是()。A:将5个初值依次赋给a1至a5B:将5个初值依次赋给a0至a4C:将5个初值依次赋给a6至a10D:因为数组长度与初值的个数不相同,所以此语句不正确答案:B第4题 (2.0分) 题号:655假定int类型变量占用两个字节,其有定义:int x10=0,2,4;,则数组x在内存中所占字节数是()。A:3B:6C:10D:20答案:D第5题 (2.0分) 题

17、号:117在程序设计中,下面关于算法的最恰当描述是( ).A:算法是求解问题的数学计算公式B:流程图是描述算法的唯一方法C:在某一算法中,至少应该有一个输入(或多个输入).D:同一个问题可能有多种实现算法答案:D第6题 (2.0分) 题号:114下列数据中,为字符串常量的是()。A:AB:"house"C:How do you do.D:$abc答案:B第7题 (2.0分) 题号:673C语言规定,函数返回值的类型是由()。A:return语句中的表达式类型所决定B:调用该函数时的主调函数类型所决定C:调用该函数时系统临时决定D:在定义该函数时所指定的函数类型所决定答案:D

18、第8题 (2.0分) 题号:138下列( )不是C语言数据类型中的基本类型.A:整型B:数组类型C:单精度型D:字符类型答案:B第9题 (2.0分) 题号:89以下标识符中,不能作为合法的C用户定义标识符的是()。A:a3_b3B:voidC:_123D:IF答案:B第10题 (2.0分) 题号:586以下选项中合法的实型常 数是()。A:5E2.0B:E-3C:.2E0D:1.3E答案:C第11题 (2.0分) 题号:3130下列说法中错误的是A:一个数组只允许存储同种类型的变量B:如果在对数组进行初始化时,给定的数据元素个数比数组元素个数少时,多余的数组元素会被自动初始化为最后一个给定元素

19、的值C:数组的名称其实是数组在内存中的首地址D:当数组名作为参数被传递给某个函数时,原数组中的元素的值可能被修改答案:B第12题 (2.0分) 题号:604下面不正确的字符串常量是()。A:'abc'B:"12'12"C:"0"D:" "答案:A第13题 (2.0分) 题号:171在C语言的函数中,下列正确的说法是()。A:必须有形参B:形参必须是变量名C:可以有也可以没有形参D:数组名不能作形参答案:C第14题 (2.0分) 题号:3160为表示关系xyz,应使用C语言表达式A:(x>=y)&&

20、amp;(y>=z)B:(x>=y) AND (y>=z)C:(x>=y>=z)D:(x>=z)&(y>=z)答案:A第15题 (2.0分) 题号:155C语言中用于结构化程序设计的三种基本结构是( ).A:顺序结构、选择结构、循环结构B:if、switch、breakC:for、while、do-whileD:if、for、continue答案:A三、程序填空 共1题 (共计15分)第1题 (15.0分) 题号:15/*-【程序填空】-功能:分别求出一批非零整数中的偶数、奇数的平均值,用零作为终止标记。-*/#include <stdi

21、o.h>void main()int x,i=0,j=0;float s1=0,s2=0,av1,av2;scanf("%d",&x);/*SPACE*/while(【?】)if(x%2=0) s1=s1+x;i+;/*SPACE*/【?】s2=s2+x;j+;/*SPACE*/【?】;if(i!=0) av1=s1/i;else av1=0;if(j!=0) /*SPACE*/【?】 ;else av2=0;printf("oushujunzhi:%7.2f,jishujunzhi:%7.2fn",av1,av2);答案:=(答案1)=x

22、 != 0=或=x=(答案2)=else=或=else if(x%2=1)=或=else if(x%2!=0)=或=if(x%2)=(答案3)=scanf("%d",&x)=(答案4)=av2=s2/j四、程序改错 共1题 (共计15分)第1题 (15.0分) 题号:399/*- 【程序改错】- -功能:编写函数fun求20以内所有5的倍数之积。-*/#include <stdio.h>#define N 20int fun(int m)/*FOUND*/int s=0,i;for(i=1;i<N;i+)/*FOUND*/if(i%m=0)/*FO

23、UND*/s=*i;return s;void main() int fun(int m);int sum;sum=fun(5);printf("%d以内所有%d的倍数之积为: %dn",N,5,sum);答案:=(答案1)=int s=1 , i ;=(答案2)=if(i%m=0)=(答案3)=s=s*i;=或=s=i*s;=或=s*=i;五、程序设计 共1题 (共计20分)第1题 (20.0分) 题号:16/*-【程序设计】-功能:编写函数fun求1!+2!+3!+ +n!的和,在main函数中由键盘输入n值,并输出运算结果。请编写fun函数。例如:若n值为5,则结果为

24、153。-*/#include<stdio.h>void wwjt();long int fun(int n)/*Program*/* End */void main() long int fun(int n);int n;long int result;scanf("%d",&n);result=fun(n);printf("%ldn",result);wwjt();void wwjt()FILE *IN,*OUT;int i;int iIN;long int iOUT;IN=fopen("in.dat",&qu

25、ot;r");if(IN=NULL)printf("Please Verify The Currernt Dir.It May Be Changed");OUT=fopen("out.dat","w");if(OUT=NULL)printf("Please Verify The Current Dir. It May Be Changed");for(i=0;i<10;i+) fscanf(IN,"%d",&iIN);iOUT=fun(iIN);fprintf(OUT,&

26、quot;%ldn",iOUT);fclose(IN);fclose(OUT);答案:-int i;float f=1,s=0;for(i=1;i<=n;i+)f=f*i;s=s+f;return s;-试卷编号:8158所属语言:C语言试卷方案:C语言模拟试卷总分:100分共有题型:5种一、判断 共10题 (共计20分)第1题 (2.0分) 题号:27char c="Very Good" 是一个合法的为字符串数组赋值的语句。答案:Y第2题 (2.0分) 题号:1240链表中有的结点可以没有指针域.答案:N第3题 (2.0分) 题号:1145链表是结构体最重

27、要的应用,它是一种非固定长度的数据结构,是一种动态存储技术.答案:Y第4题 (2.0分) 题号:1138语句char a4="this"与char a="this"等价.答案:N第5题 (2.0分) 题号:1102在C程序中 , 函数既可以嵌套定义 , 也可以嵌套调用答案:N第6题 (2.0分) 题号:1235可以使用变量定义数组的长度.答案:N第7题 (2.0分) 题号:1228continue和break语句都能用于switch语句中.答案:N第8题 (2.0分) 题号:1281在循环控制中,可以用continue语句跳出本次循环.答案:Y第9题 (

28、2.0分) 题号:1143在给变量命名时,C语言不区分大小写字母,即认为SUM和sum是同一个变量.答案:N第10题 (2.0分) 题号:1268逻辑运算的三种运算符&&,|,!优先级相同答案:N二、单项选择 共15题 (共计30分)第1题 (2.0分) 题号:200下面关于指针的叙述,正确的是( ).A:指针和地址是两个性质不同的概念B:指针是对结构体变量来定义的C:指针可以指向任何数据类型的变量D:指针变量可以初始化答案:D第2题 (2.0分) 题号:159执行下面程序段从键盘给变量a,b,c输入值,正确的输入格式为( ).int a,c; char b;scanf(&qu

29、ot;%3d %c%2d",&a,&b,&c);A:123,d,45B:123 d 45C:123d45D:a=123b=dc=45答案:C第3题 (2.0分) 题号:131若k为int型变量,则以下程序段的执行结果是()。k=-8567; printf("|%06D|n",k);A:格式描述符不合法,输出无定值B:输出为|%06D|C:输出为|0-8567|D:输出为|-8567|答案:B第4题 (2.0分) 题号:174C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为()。A:voidB:doubleC:intD:char

30、答案:C第5题 (2.0分) 题号:630逻辑运算符两侧运算对象的数据类型()。A:只能是0或1B:只能是0或非0正数C:只能是整型或字符型数据D:可以是任何类型的数据答案:D第6题 (2.0分) 题号:153能正确表示数学不等式0a18的C语言表达式是( ).A:a>=0&a<=18B:a>=0|a<=18C:a>=0&&a<=18D:0a&&a18答案:C第7题 (2.0分) 题号:165关于多路分支语句switch,下面说法不正确的是( ).A:switch语句不能嵌套B:switch语句中可以出现多个空的cas

31、e子句C:凡是能用switch语句实现的分支控制都可以用if语句实现D:一般情况下,当有多路分支时使用switch语句比使用if语句方便答案:A第8题 (2.0分) 题号:114下列数据中,为字符串常量的是()。A:AB:"house"C:How do you do.D:$abc答案:B第9题 (2.0分) 题号:516char str10="China"数组元素个数为()。A:5B:6C:9D:10答案:D第10题 (2.0分) 题号:173C语言执行程序的开始执行点是()。A:程序中第一条可以执行语言B:程序中第一个函数C:程序中的main函数D:包

32、含文件中的第一个函数答案:C第11题 (2.0分) 题号:3563 以下函数的类型是_。fff(float x)return 5;A:与参数x的类型相同B:void 类型C:int类型D:无法确定答案:C第12题 (2.0分) 题号:100以下标识符中,不能作为合法的C用户定义标识符的是()。A:putcharB:_doubleC:_123D:INT答案:A第13题 (2.0分) 题号:577在C语言中,int、char和short三种类型数据在内存中所占用的字节数()。A:由用用户自己定义B:均为2个字节C:是任意的D:由所用机器的机器字长决定答案:D第14题 (2.0分) 题号:130在一

33、个完整的C语言程序中,不能缺少的函数是( ).A:scanf()B:getchar()C:fopen()D:main()答案:D第15题 (2.0分) 题号:170关于return语句,下列正确的说法是()。A:在主函数和其他函数中均可出现B:必须在每个函数中出现C:可以在同一个函数中出现多次D:只能在除主函数之外的函数中出现一次答案:C三、程序填空 共1题 (共计15分)第1题 (15.0分) 题号:8/*-【程序填空】-功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出其和。-*/#include <stdio.h>#include <conio.h>

34、void main()int i,n,sum;sum=0;/*SPACE*/【?】;/*SPACE*/for(i=1; 【?】 ;i+)/*SPACE*/if(【?】)if(i%2=0)sum=sum+i;n+;printf("%6d",i);/*SPACE*/if(【?】) printf("n");printf("ntotal=%d",sum);答案:=(答案1)=n=0=(答案2)=i<=300=或=i<300=或=300>=i=或=300>i=(答案3)=i%7 = 0 | i%17 = 0=或=!(i%

35、7)|!(i%17)=或=!(i%17)|!(i%7)=或=!(i%7&&i%17)=(答案4)=n%5 = 0=或=!(n%5)=或=n/5*5=n四、程序改错 共1题 (共计15分)第1题 (15.0分) 题号:415/*- 【程序改错】-功能:利用递归方法求5!。-*/#include <stdio.h>void main()int fact(int);printf("5!=%dn",fact(5);int fact(int j)int sum;/*FOUND*/if(j =0)/*FOUND*/sum=0;elsesum=j*fact(j

36、-1);/*FOUND*/return j;答案:=(答案1)=if(j=0)=(答案2)=sum=1;=(答案3)=return sum;五、程序设计 共1题 (共计20分)第1题 (20.0分) 题号:360/*-【程序设计】-功能:把20个随机数存入一个数组,然后输出该数组中的最大值。 -*/#include <stdio.h>#define VSIZE 20 void wwjt(); int vectorVSIZE ; int fun(int list,int size) /*Program*/* End */ main() int i; for (i=0;i<VSI

37、ZE;i+)vectori=rand(); printf("Vector%d=%6dn",i,vectori); i=fun(vector,VSIZE); printf("nMaxnum: Vector%d=%6dn",i,vectori);wwjt(); void wwjt() int i,t;FILE *fp ; fp = fopen("out.dat", "w") ;for (i=0;i<VSIZE;i+)fprintf(fp,"Vector%d=%6dn",i,vectori);

38、t=fun(vector,VSIZE);fprintf(fp,"nMaxnum: Vector%d=%6dn",t,vectort);fclose(fp) ; 答案:-int i,max=0; for(i=1; i <size; i+)if(listmax<listi) max=i; return max;-试卷编号:8159所属语言:C语言试卷方案:C语言模拟试卷总分:100分共有题型:5种一、判断 共10题 (共计20分)第1题 (2.0分) 题号:36若有 int i=10,j=2;则执行完i*=j+8;后的值为28。答案:N第2题 (2.0分) 题号:1094设有数组定义: char array ="hello" 则数组 array所占的空间为5.答案:N第3题 (2.0分) 题号:28如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。答案:Y第4题 (2.0分) 题号:1108有如下说明:int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为9的表达式是 *(P+8).答案:Y第5题 (2.0分) 题号:1279循环

温馨提示

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

评论

0/150

提交评论