C模拟题及答案Word格式文档下载.docx
- 文档编号:17031812
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:10
- 大小:20.03KB
C模拟题及答案Word格式文档下载.docx
《C模拟题及答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C模拟题及答案Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
printf(“Over!
\n”);
A.2B.3C.Over!
D.1
8、对二维数组a初始化为:
inta[][2]={1,2,3,4,5,6};
则a第一维的大小是()。
A.2B.3C.4D.不能确定
9、若x、i、j、k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为()。
A.4B.16C.32D.52
10、执行函数调用“fun('
)”得到的返回值为()。
intfun(charch)
{return(ch>
='
0'
&
ch<
9'
);
}
A.-1B.0C.1D.2
11、以下数组的定义形式正确的是()。
A.intk=5,a[k];
B.inta[];
C.charc[]={'
};
D.chara(10);
12、若有语句“inta[10],*p=&
a[2];
”,则执行语句“p=p+4;
”后,p指向的数组元素是()。
A.a[4]B.a[5]C.a[6]D.a[7]
13、表示关系x<
=y<
=z的C语言表达式为()。
A.(x<
=y)&
(y<
=z)B.(x<
=y)AND(y<
=z)
C.(x<
=z)D.(x<
14、下面不正确的字符常量是()。
A.“c”B.‘\\’’C.‘’D.‘K’
15、若有定义:
chara;
intb;
floatc;
doubled;
,则表达式a*b+d-c值的类型为()。
A.floatB.doubleC.charD.int
16、定义inta[9],*p=a;
不能表示a[1]地址的是()。
A.p+1B.a+1C.a-1D.&
a[1]
17、下列关于C程序的说法错误的是()。
A.一个程序必须有一个main函数B.函数体用一对花括号“{}”来标识
C.每个语句必须用分号结束D.main函数的类型必须是void
18、下列选项中,不能作为C语言标识符的是()。
A.studentB.sumC.IntD.double
19、if语句中的表达式()。
A.必须是逻辑表达式B.必须是关系表达式
C.只能是逻辑表达式或关系表达式D.可以是任意的表达式
20、要判断x是否满足表达式“-1≤x≤1”,正确的C语言表达式是()。
A.x>
=-1||x<
=1B.x>
=-1&
x<
=1C.-1<
=x<
=1D.-1≤x≤1
21、若有定义“floatx,*p=&
”,以下能正确输入一个值给x的语句是()。
A.scanf("
%f"
p);
B.scanf("
%lf"
&
p);
C.scanf("
D.scanf("
x);
22、以下选项中,对变量的定义和初始化正确的是()。
A.inta,p=&
a;
B.inta,*p=a;
C.inta,*p=&
D.inta,*p=*a;
23、C语言中,若对函数类型未加显示说明,则函数类型隐含为()。
A.intB.doubleC.voidD.int*
24、以下程序段的功能是()。
inta=5,b=9;
a=a+b;
b=a-b;
a=a-b;
A.把a和b从小到大排序交换a和b的值B.
C.只是做了加、减运算,无特定功能D.求a、b的和与差
25、关于形参的说法正确的是()。
A.形参用于接收主调函数传递的数据B.函数中可以定义与形参同名的变量
C.形参的改变可以传递给实参D.不必分别指定每个形参的类型
26、若有定义“chars1[20],s2[]="
China"
;
”,为使s1的值与s2相同,下列选项中正确的是()。
A.s1=s2;
B.strcat(s1,s2);
C.strcpy(s1,s2);
D.strcpy(s2,s1);
27、设有如下程序,则输出结果是()。
chars1[10]=“abcd”,s2[10]=“efg”;
intk;
for(k=0;
s2[k]!
=‘\0’;
k++)s2[k]=s1[k];
puts(s2);
A.abcdefgB.efgabcdC.abcefgD.abc
28、以下函数声明中,正确的是()。
A.intplay(a,b);
B.intplay(inta,b);
C.intplay(inta,intb);
D.play(a,b)
29、下列关于函数的描述错误的是()。
A.c程序是由函数组成的B.c程序中的函数是各自独立的
C.main函数可以调用其它的函数D.在main函数中可以嵌套定义别的函数
30、下列变量名定义不正确的是()。
A.a4B.d#C._varD._2f
31、C语言可以用来实现循环的结构化语句是、和。
32、C语言程序的基本单位是函数,C语言程序从main()开始执行。
33、字符串以___\0___作为结束标记。
34、结构化程序的三种基本控制结构是顺序结构、_____选择_______结构和循环结构。
35、若有定义“inta[3][4];
”,则该数组的最后一个元素是_a[2][3]___________。
36、若要定义一个符号常量PI表示π,请补充该预处理命令:
___#define____PI3.14
37、算法的表示方法一般有自然语言表示法、传统流程图、NS图、伪代码等。
38、C语言中的基本数据类型有、整型、字符和实型。
39、若有定义“inta[][4]={{1,2},{0,3,4},{5}};
”,则数组a[1][3]的值为0。
40、只有一个“;
”组成的语句,称为______空语句。
41、charc[8]=”hello”;
则该字符串的长度为___5_____。
42、C语言中的换行符是_____\0_______。
43、若a是int型变量,则计算表达式a=25/3%3后,a的值为2。
44、用关键字__________来定义一个实型变量。
45、若有定义:
intw[10]={1,2,3,4,5,6,7,8,9,10},*p=w;
,在不移动指针p条件下,通过指针p引用值为98的数组元素的表达式是p[5]或*(p+5)。
46、下列输入语句要给int型变量a输入一个值:
scanf("
%d"
____&
a________);
47、专门用来存放其它变量地址的一种特殊变量称为__指针__________变量。
48、下面程序是计算1、4、7……100之和,请填空。
<
=100,s=s+i
#include<
stdio.h>
voidmain()
main()
{ints,i;
s=0;
for(i=1;
i+=3)
printf("
s=%d\n"
s);
}
49、下面程序是将10个数按从小到大的顺序排序,请填空。
i=9-I,a[i]=a[i+1]
{inta[10];
inti,j,t;
input10numbers:
\n"
for(i=0;
i<
10;
i++)
a[i]);
for(j=0;
j<
9;
j++)
for(i=0;
if(a[i]>
a[i+1])
{t=a[i];
a[i+1]=t;
}
thesortednumbers:
for(i=0;
i++)printf("
%d"
a[i]);
50、下面程序是从键盘输入一个大写字母,要求改用小写字母输出,请填空。
{
charc1,c2;
c1=getchar();
%c,%d\n"
c1,c1);
c2=c1+32;
c2,c2);
c1=getcher(),c2=ci+32
51、下面程序是输入三个字符串,找出最小的并输出,请填空。
3,s2
#include<
string.h>
voidmain()
{inti;
chars1[3][10],s2[10];
//数组s2用来存放最小字符串
Input3Strings:
i++)
gets(s1[i]);
//输入三个字符串
if(strcmp(s1[0],s1[1])>
0)
strcpy(s2,s1[1]);
else
strcpy(s2,s1[0]);
if(strcmp(s2,s1[2])>
strcpy(s2,s1[2]);
Theleafstringis:
%s\n"
);
52、从键盘读入一个百分制成绩,将其转换为对应的五级制并输出。
请填空。
intscore;
scanf("
score);
//输入一个0-100之间的分数
____switch________(score/10)
{case10:
case9:
A\n"
break;
case8:
B\n"
case7:
C\n"
case6:
D\n"
_____default_______:
E\n"
53、下面的程序段是用冒泡法对数组a中的10个整数按从小到大排序。
inta[10]={8,6,4,9,7,3,5,1,2,0},i.j,t;
for(i=0;
i<
i++)
for(j=0;
j<
__i<
9-_i________;
j++)
if(____________)
{t=a[j];
a[j]=a[j+1];
a[j+1]=t;
54、下面程序是输入一个整数,若是大于5且小于10的,则输出“5<
AND<
10"
,请填空。
x,X>
5&
0,
#include"
stdio.h"
{intx;
if()
5<
10\n"
55、下列程序段要从键盘输入两个变量x、y的值,并交换x和y。
intx,y,temp;
%d%d"
____&
x________);
temp=x;
____x&
y________;
y=temp;
x=%d,y=%d\n"
x,y);
56、下面的程序段用于输出101到200之间的所有素数。
intm,k,i;
for(m=101;
m<
=200;
m+=2)
{k=(int)sqrt(m);
//或者k=m/2
for(i=2;
=k;
if(_____m%i==0_______)
break;
if(i==___k+1_________)
printf("
%-4d"
m);
57、输出所有的水仙花数。
水仙花数是指一个3位数,其各位数字的立方和等于该数本身,例如153=13+53+33。
inta,b,c,i;
for(i=100;
=999;
{a=i/100_________;
b=i%100/10;
c=i%10;
if(i==____________a*a*a+b*b*b+c*c*c)
i);
58、写出程序运行结果。
7483
{intn=2736,d;
do
{d=n%10;
printf(“%d”,d+1);
n=n/10;
}while(n!
=0);
}
59、main()6,4,2
{,
intk,a[6]={1,2,3,4,5,6};
for(k=5;
k>
=0;
k--)
if(a[k]%2==0)
a[k]);
60、写出程序运行结果。
12,81,21,72
{inta,b,c,d;
a=11;
b=80;
c=10+a++;
d=++b-9;
printf(“%d,%d\n%d,%d\n”,a,b,c,d);
61、main()7
inta=1,b=0;
for(
a<
3
a++)
switch(a)
case1:
b--;
case2:
b++;
case3:
b+=3;
break;
printf(“%d\n”,b);
62、输入10个整数,把它们存放在数组a中,然后求出这10个数中的最大数与最小数以及这2个数在数组中的下标,最后输出最大数、最小数及其下标。
{inta[10],i,max,min,maxpos,minpos;
//maxpos,minpos分别用来存放最大数和最小数的下标
for(i=0;
10;
scanf(“%d”,&
a[i]);
max=;
min=;
for(i=1;
{//此处需要自己添加相应的代码
printf(“maxpos=%d\n”,max,maxpos);
printf(“min=%d,minpos=%d\n”,min,minxpos);
}}
printf(“max=%d,maxpos=%d\n”,max,maxpos);
63、编写程序,输入10个整数,按从小到大的顺序排序后输出。
#include<
#defineN10
voidmain()
{
64、用指针编写函数:
insert(s1,s2,f),其功能是在字符串s1中的指定位置f处插入字符串s2。
65、输入十个整数,存放在数组list中,然后用指针法从后向前输出该数组中的整数。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟 答案