C语言程序设计模拟试题一0套Word文档下载推荐.docx
- 文档编号:8646807
- 上传时间:2023-05-12
- 格式:DOCX
- 页数:74
- 大小:60.60KB
C语言程序设计模拟试题一0套Word文档下载推荐.docx
《C语言程序设计模拟试题一0套Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言程序设计模拟试题一0套Word文档下载推荐.docx(74页珍藏版)》请在冰点文库上搜索。
voidmain()
{inta=0,b=0,c=0,d=0;
if(a=1)b=1;
c=2;
elsed=3;
printf(“%d,%d,%d,%d\n”,a,b,c,d);
}
其输出结果是()
A.0,1,2,0B.0,0,0,3C.1,1,2,0D.编译有错
5.下面程序的输出结果是()
#include<
voidmain()
{intk=0,m=0,i,j;
for(i=0;
i<
2;
i++)
{for(j=0;
j<
3;
j++)k++;
k=k-j;
}
m=i+j;
printf(“k=%d,m=%d”,k,m);
A.k=0,m=3B.k=0,m=5C.k=1,m=3D.k=1,m=5
6.按C语言的规定,以下不正确的说法是()
A.实参可以是常量、变量或表达式
B.形参可以是常量、变量或表达式
C.实参可以为任意类型
D.形参应与其对应的实参类型一致
7.在C语言中,引用数据元素时,其数组下标的数据类型允许为()
A.整型变量B.整型表达式
C.整型变量或整型表达式D.任何类型的表达式
8.若有说明:
inta[3][4];
,则对a数组元素的正确引用是()
A.a[2][4]B.a[1,3]C.a[1+1][0]D.a
(2)
(1)
9.变量的指针,其含义是指该变量的()
A.值B.地址C.名D.一个标志
10.若有以下说明和语句:
structworker
{intno;
char*name;
}work,*p=&
work;
则以下引用方式不正确的是()
A.work.noB.(*p).noC.p->
noD.work->
no
三、程序阅读题,写出程序结果(每题4分,共20分)
1.有以下程序:
#include<
{charc1,c2;
inta,b;
scanf("
%c,%c"
c1,&
c2);
a=c1+32;
b=c2-2;
printf("
%c,%c\n"
a,b);
%d,%d\n"
c1,c2);
程序运行时,若从键盘输入(第1列开始)
A,d<
回车>
则输出结果是
2.有以下程序:
{inti,sum;
i=5;
sum=109;
while(i)
{sum=sum-i;
i=i-2;
if(i<
=1)break;
printf("
i=%d,sum=%d\n"
i,sum);
程序运行后输出结果是
3.有以下程序:
intmain()
{inti,j,n=4;
for(i=1;
=n;
i++)
{for(j=1;
i;
j++)
printf(“”);
//双引号内为一个空格字符
for(j=1;
j<
=9-2*i;
printf(“*”);
printf(“\n”);
程序运行后输出结果是:
4.有以下程序:
#include"
stdio.h"
#defineN4
intfun(inti)
{staticinta=1;
a=a*i;
returna;
main()
{inti,j;
for(i=1;
=N;
{j=fun(i);
%d\n"
j);
5.有以下程序:
intfun(intb[][4])
{inti,j;
intm[4]={0,0,0,0},*p=m;
for(j=0;
N;
for(i=0;
*(p+j)+=b[i][j];
*(p+i));
{inti,j,k=0;
inta[4][4];
4;
a[i][j]=k++;
fun(a);
四、程序填空题(每题4分,共20分)
1.有以下程序,功能是求出a,b,c三个数的最大值。
{
inta,b,c,max;
max=a;
if(________)max=b;
if(________)max=c;
printf(“最大值=%d\n”,max);
2.任意输入一个数m,判断是否是素数
intm,i,k;
____________;
k=sqrt(m+1);
for(i=2;
i<
k;
i++)
if(m%i==0)break;
if_____________printf(“%disaprimenumber\n”,m);
elseprintf(“%disnotaprimenumber\n”,m);
3.有以下程序,功能是输入数组中10个元素,并求和。
main()
floatA[10],sum=0;
10;
{
scanf(“%f”,__________);
sum+=A[i];
printf(“sum=________”,sum);
4.输入10个浮点数,计算并输出相应的函数值。
x*x+2x+1x<
y=0x=0
3x>
{floatx,y;
scanf(“%f”,&
{if(x<
0);
else;
elsey=3;
printf(“%f\n”,y);
5.函数sort使用冒泡法将一维数组中各元素按值从大到小排序。
voidsort(inta[],intn)
{intk,j,t;
for(k=1;
k<
n;
k++)
for(;
n-k;
j++)
if(){t=a[j];
a[j]=a[j+1];
a[j+1]=t;
五、程序设计题(每题10分,共20分)
1.输入一个整数,判断它能否同时被3,5,7整除,如是则输出YES,否则输出NO。
2.编写程序,在有序的数列中查找某数,若该数在此数列中,则输出它所在的位置,否则输出nofound.。
C语言程序设计模拟试题
(二)
1.为表示关系:
x≤y≤z,应使用的C语言表达式是_____________。
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,则执行"
6.文件使用方式“r”表示________,“w+”表示________。
7.有函数调用fun1(x+y,(y,z),10,fun((x,y―1)));
函数fun1有_______个参数。
1.若x,y均为double型变量,正确的输入函数调用是()
A.scanf(“%f%f”,&
x,&
y);
B.scanf(“%d%d”,&
C.scanf(“%lf%lf”,&
D.scanf(“%lf%lf”,x,y);
2.若x,y,z均为int型变量,则执行以下语句后的输出为()
x=(y=(z=10)+5)-5;
printf(“x=%d,y=%d,z=%d\n”,x,y,z);
y=(z=x=0,x+10);
A.x=10,y=15,z=10B.x=10,y=10,z=10
x=0,y=10,z=0x=0,y=10,z=0
C.x=10,y=15,z=10D.x=10,y=10,z=10
x=10,y=10,z=0x=0,y=10,z=0
3.判断char型变量c1是否为小字字母的正确表达式为()
A.’a’<
=c1<
=’z’B.(c1>
=a)&
&
(c1<
=z)
C.(‘a’<
=c1)||(‘z’>
=c1)D.(c1>
=’a’)&
=’z’)
4.若有说明语句:
intw=1,x=2,y=3,z=4;
则表达式w>
x?
w:
z>
y?
z:
x的值是()
A.4B.3C.2D.1
5.以下程序执行后的输出结果是()
{inti=0,a=0;
while(i<
20)
{for(;
;
)
{if((i%10)==0)break;
elsei--;
i+=11;
a+=i;
printf(“%d”,a);
A.21B.32C.33D.11
6.以下正确的函数定义形式是()
A.doublefun(intx,inty)B.doublefun(intx;
inty)
C.doublefun(intx,y)D.doublefun(intx,y;
7.以下对一维数组a中的所有元素进行正确初始化的是()
A.inta[10]=(0,0,0,0);
B.inta[10]={};
C.inta[]=(0);
D.inta[10]={10*2};
8.以下关于数组的描述正确的是()
A.数组的大小是固定的,但可以有不同类型的数组元素
B.数组的大小是可变的,但所有数组元素的类型必须相同
C.数组的大小是固定的,所有数组元素的类型必须相同
D.数组的大小是可变的,可以有不同类型的数组元素
9.若有定义inta=5;
int*p1,*p2;
,且p1和p2均已指向变量a,下面不能正确执行的赋值语句是()。
A.a=*p1+*p2;
B.p2=a;
C.p1=p2;
D.a=*p1*(*p2);
10.正确的k值是()
enum{a,b=5,c,d=4,e}k;
k=a;
A.0B.1C.4D.6
{charc1,c2,c3,c4,c5,c6;
scanf(“%c%c%c%c”,&
c2,&
c3,&
c4);
c5=getchar();
c6=getchar();
putchar(c1);
putchar(c2);
printf(“\n%c%c\n”,c5,c6);
abc<
45678〈回车〉
则输出结果是
i=10;
sum=0;
{sum=sum+i;
i=i+10;
if(i>
=50)break;
#defineWIDTH4
inti,j;
=WIDTH;
=i;
"
);
for(j=i;
=WIDTH-1;
printf("
*"
\n"
intfunc(intx,inty)
{intz;
z=x+y;
returnz++;
{inti=3,j=2,k=1;
do
{k+=func(i,j);
k);
i++;
j++;
}while(i<
=6);
intfun(int*m)
{int*n;
n=m+3;
return*n;
inta[10]={0,1,2,3,4,5,6,7,8,9};
int*p=a;
{j=fun(p);
p++;
1.有以下程序,功能是交换a,b的值。
inta,b,t;
a=10;
b=20;
printf(“a=%d,b=%d\n”,a,b);
________;
a=b;
________;
2.任意输入一个年数,判断该年是否是润年。
intyear,yn;
if(year%4==0&
year%100!
=0||year%400==0)yn=1;
else__________;
if(yn==0)printf(“%d不是润年\n”,year);
elseprintf(“%d是润年\n”,year);
3.有以下程序,功能是输入二个数组,输出相对应位置元素的积。
intA[5],B[5],s;
5;
scanf(“%d%d”,__________);
s=A[i]*B[i];
printf(“%d\t”,______);
x*x-2x+1x<
3*x+1x>
scanf(“%f”,&
elsey=0;
5.函数DEL是把字符串a中的非大写字母赋值给b。
voidDEL(chara[])
{char*b;
inti=0,j=0;
While(a[i]!
=’\0’)
{if(_______________)b[j++]=a[i];
_________;
/*字符串b结束*/
1.编写输入整数a,b,c,当a为1时显示b和c之和,a为2时显示b与c之差,a为3时显示b*c之积,a为4时显示b/c之商,a为其他数值时不做任何操作的程序。
2.若有说明:
inta[2][3]={{1,2,3},{4,5,6}};
,现要将a的行和列的元素互换后存到另一个二维数组b中,试编程。
C语言程序设计模拟试题(三)
1.若有定义:
doublex[3][5],则x数组中行下标的下限为_________,列下标的下限为__________。
2.设有说明语句"
3.表达式7/2的结果是____________。
表达式7%2的结果是____________。
4.若已知a=1.5,b=15,c=1,则表达式a*b&
c的运算结果是____________。
5.C语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为______________。
6.定义inta[]={1,2,3,4,5,6},*p=a;
表达式(*++p)++的值是____________。
7.已有inti,j;
1.若x为char型变量,y为int型变量,x,y均为有值,正确的输出函数调用是()
A.printf(“%c%d”,x,y);
B.printf(“%c%s”,x,y);
C.printf(“%f%c”,x,y);
D.printf(“%f%d”,x,y);
2.若x是int型变量,y是float型变量,所用的scanf调用语句格式为:
scanf(“x=%d,y=%f”,&
,则为了将数据10和66.6分别赋给x和y,正确的输入应当是()
A.x=10,y=66.6<
B.1066.6<
C.10<
66.6<
D.x=10<
y=66.6<
3.以下的if语句中,不正确的是()
A.if(x>
B.if(x==y)x+=y;
C.if(x!
=y)scanf(“%d”,&
x)elsescanf(“%d”,&
y)D.if(x<
y){x++;
y++;
4.以下关于switch语句和break语句的描述中,正确的是()
A.在switch语句中必须使用break语句
B.break语句只能用于switch语句中
C.在switch语句中,可根据需要用或不用break语句
D.break语句是switch语句的一部分
5.对下面两个循环语句,下面的叙述正确的是()
while
(1);
for(;
);
A.
都是无限循环B.
是无限循环,
错误
C.
循环一次,
错误D.
皆错误
6.在一个源文件中定义的全局变量的作用域为()
A.本文件的全部范围B.本程序的全部范围
C.本函数的全部范围D.从定义该变量的位置开始至本文件结束为止
7.对于所定义的二维数组a[2][3],元素a[1][2]是数组的第()个元素。
A.3B.4C.5D.6
8.字符串”Iamastudent.”在存储单元中占()个字节。
A.14B.15C.16D.17
9.若int(*p)[5];
,其中,p是()。
A.5个指向整型变量的指针
B.指向5个整型变量的函数指针
C.一个指向具有5个整型元素的一维数组的指针
D.具有5个指针元素的一维指针数组,每个元素都只能指向整型量
10.在16位的PC上使用C语言,若有如下定义:
structdata
{inti;
charch;
doublef;
}da;
则变量da占用内存的字节数为()
A.1B.4C.8D.11
%d,%d"
c1=a+3;
c2=b-32;
%c,%d\n"
65,97<
#
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 模拟 试题