C语言程序设计模拟试题3(附答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C 语言程序设计》模拟试卷三 一、填空题。(每空2分,共16分) 1 •在内存中,短整型变量占 _______ 字节,单精度实型变量占 ___________ 字节,字符型变量占 ____________ 字 节。 2•一个C 语言文件就是由若干个 _______________ 组成。
3 •设有以下变量定义,并已赋确定得值 char w; int x; float y; double z;
则表达式:w*x+z-y 所求得得数据类型为 ____________________________ 。 4•若x 为int 类型,请以最简单得形式写岀与逻辑表达式 !x 等价得C 语言关系表达 式 _______________________________ 。
5.若有如下图所示五个连续得 int 类型得存储单元并赋值如下图,a[0]得地址小于a[4]得地址。p 与s 就 是基类型为int 得指针变量。请对以下问题进行填空。
a[0] a[1] a[2] a[3] a[4] (1 )若p 已指向存储单元 a[1]。 是 。 (2)若指针s 指向存储单元a[2],p 二、单项选择题。(每题 通过指针p,给s 赋值,使s 指向最后一个存储单元 a[4]得语句就 指向存储单元a[0],表达式s-p 得值就是 ________________________________ 2分,共40分) 1.设有int x=11; 则表达式(x++ * 1/3) 得值就是(
) A ) 3 B ) 4 C ) 11 D ) 12 2 •下列程序得输岀结果就是() A) 3 B) 3、2 C) 0 main()
{double d=3、2; int x,y; x=1、2; y=(x+3、8)/5、0;
printf( “ %d \n ” , d*y); } 3•下列程序执行后得输岀结果就是 A) 6 6 6、0 6、0
C) 6
6 6、0 6、
7 D) 3、07 (小数点后只写一位)( ) B ) 6 6 6、7 6、7 D ) 6 6 6、7 6、0 main() { double d; float f; long l; int i;
i=f=l=d=20/3; printf("%d %ld %f %f \n", i,l,f,d); scanf("%d", &d); } 4•下列变量定义中合法得就是(
A) short _a=1- 、le-1;
C) long do=0xfdaL;
5.设int x=1, y=1;
A) 0 B) 1 C) 2 6.与
y=(x>0?1:x<0?-1:0);
A) if (x>0) y=1;
else if(x<0)y=-1;
else y=0;
C) y=-1
if(x)
if(x>0)y=1; else
if(x==0)y=0;
else y=-1; 7.以下循环体得执行次数就是( A) 3 B) 2 C) 1 main()
{ int i,j;
for(i=0,j=1; i<=j+1; i+=2, j--)printf( }
B) double b=1+5e2 、5;
D) float 2_and=1-e-3;
得值就是( )。
D) -1
得功能相同得if 语句就是( )
B) if(x)
if(x>0)y=1;
else if(x<0)y=-1;
else y=0;
D) y=0;
if(x>=0)
if(x>0)y=1;
else y=-1;
)。
D) 0
“%d \n ” ,i);
)。
表达式(!x||y--)
8.以下叙述正确得就是(
A) do-while 语句构成得循环不能用其它语句构成得循环来代替。
B) do-while 语句构成得循环只能用break 语句退出。
C) 用do-while 语句构成得循环D) 用do-while 语句构成得循环9.下列程序执行后得输出结果就是
A) G B) H C) I 在while 后得表达式为非零时结束循环。在while 后得表达式为零时结束循环。
)。
D) J
main()
{ int x= ' f ' ; printf( %c \n ” , 'A' +(x- ‘ a' +1)); } 10.执行下面得程序段后, 变量k 中得值为(
A) 不定值B) 33 C) 30 D) 10
int k=3, s[2];
s[0]=k; k=s[1]*10;
11.若已定义:
int a[ ]={0,1,2,3,4,5,6,7,8,9], *p=a, i;
其中0 < i < 9,则对a数组元素不正确得引用就是( ) A) a[p-a] B) *(&a[i]) C) p[i] D) a[10] 12.下列程序执行后得输出结果就是( )。
A) 6 B) 7 C) 8 D) 9
void func(int *a,int b[])
{ b[0]=*a+6; }
main()
{ int a,b[5];
a=0; b[0]=3;
func(&a,b); printf( “%d \n ” ,b[0]);
}
13•下列程序得运行结果就是( )。
A) a=%2,b=%5 B) a=2,b=5
C) a=d, b=d D) a=%d,b=%d
#include
main()
{ int a=2,c=5;
printf( “a=%d,b=%d\n" ,a,c); }
14•下列程序执行后得输出结果就是( )。
A) 3 B) 6 C) 9 D)随机数
main()
{ int a[3][3], *p, i;
P=&a[0][0];
for(i=0; i<9; i++) p[i]=i+1;
printf( “ %d \n ” ,a[1][2]);
}
15.设有数组定义:char array [ ]= “China” ;则数组array 所占得空间为( )
A) 4个字节B) 5个字节C) 6个字节D) 7个字节
16•下列程序得输出结果就是( )。
A) 4 B) 6 C) 8 D) 10
int b=2;
int func(int *a)
{ b += *a; return(b);}
main()
{ int a=2, res=2;
res += func (&a);
printf( “ %d \n ” ,res);
}
17、有以下定义与语句
int a[3][2]={1,2,3,4,5,6,},*p[3];
p[0]=a[1];
则* (p[0]+1)所代表得数组元素就是()
A)a[ 0][1] B)a[1][0] C)a[1][1] D)a[1][2]
18•下列程序得输出结果就是( )。