C程序设计模拟试题5答案
- 格式:doc
- 大小:93.50 KB
- 文档页数:16
C程序设计模拟试题5
《C程序设计》模拟试题五
一、 单项选择题(每小题1.5分,共60分)。
1 C语言中最简单的数据类型包括___ B)_____。
A)整型、实型、逻辑型 B)整型、实型、字符型
C)整型、字符型、逻辑型 D)整型、实型、逻辑型、字符型
2 C语言中,运算对象必须是整型数的运算符是___ A)_____。
A)% B), C)%和, D)**
3 在C语言中,能代表逻辑值"真"的是___ D)_____。
A)true B)大于0的数 C)非0整数 D)非0的数
4 下述对C语言字符数组的描术中错误的是____ C)____。
A)字符数组可以存放字符串
B)字符数组中的字符串可以整体输入、输出
C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值
D)不可以用关系运算符对字符数组中的字符串进行比较
5 设有如下定义:
int x=10,y=3,z;
则语句
printf(“%d\n”,z=(x%y,x/y));
的输出结果是____ D)____。
A)1 B)0
C)4 D)3
6 以下程序的输出结果是___ D)_____。
main()
{int x=10,y=10;
printf(“%d %d\n”,x--,--y);
}
A)10 10 B)9 9
C)9 10 D)10 9
7 以下说法中正确的是___ C)_____。
A)C语言程序总是从第一个的函数开始执行
B)在C语言程序中,要调用的函数必须在main()函数中定义
C)C语言程序总是从main()函数开始执行
D)C语言程序中的main()函数必须放在程序的开始部分
8 执行下面的程序后,a的值为________。
main()
{int a,b;
for (a=1,b=1;a<=100;a++)
{if(b==20)break;
if(b%3==1)
{b=3;
continue;
}b-=5;
}
}
A)7 B)8 C)9 D)10
9 以下程序段的输出结果是___ C)_____。
int x=3;
do
{printf(“%3d”,x-=2);}
while(!(--x));
A)1 B)3 0 C)1 -2 D)死循环
10 定义如下变量:
int n=10;
则下列循环的输出结果是____ D)____。
while(n>7)
{n--;
printf(“%d\n”,n);
}
A)10 B)9 C)10 D)9
9 8 9
8
8 7 8
7
7 6
11 两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是___ D)_____。
main()
{int x;
scanf(“%d”,&x);
if(x>5) printf(“%d”,x);
else printf(“%d\n”,x--);
}
A)7和5 B)6和3 C)7和4 D)6和4
12 执行以下程序后,y的值是________。
main ()
{int a[]={2,4,6,8,10};
int y=1,x,*p;
p=&a[1];
for(x=0;x<4;x++)
y =*(p+x);
printf(“%d\n”,y);
}
A)17 B)18 C)19
D)20
13 下列程序执行后输出的结果是___3 3_____。
int d=1;
fun (int p)
{int d=5;
d =p ;
printf(“%d”,d);
}
main()
{int a=3;
fun(a);
d =a ;
printf(“%d\n”,d);
}
A)8 4 B)9 6 C)9 4 D)8 5
14 C语言提供的合法的数据类型关键字是___ B)_____。
A)Double B)short C)integer D)Char
15 在C语言中,合法的长整型常数是__ A)______。
A)0L B)4962710 C)0.054838743 D)2.1869e10
16 表达式:10!=9的值是____ C)____。
A)true B)非零值 C)0 D)1
17 若有说明和语句:
int a=5;
a;
此处表达式a的值是__ C)______。
A)7 B)6 C)5 D)4
18 在下列选项中,不正确的赋值语句是___ A)_____。
A)t; B)n1=(n2=(n3=0));
C)k=i==j; D)a=bc=1;
19 若有说明:int i,j=7,*p=&i;,则与i=j;等价的语句是___ B)_____。
A)i=*p; B)*p=*&j; C)i=&j; D)i=**p;
20 不能把字符串:Hello!赋给数组b的语句是___ B)_____。
A)char b[10]={'H','e','l','l','o','!'};
B)char b[10];b="Hello!";
C)char b[10];strcpy(b,"Hello!");
D)char b[10]="Hello!"
21 以下程序的输出结果是____ B)____。
A)6 B)6789 C)'6' D)789
main()
{char a[10]="6789",*p;
p=a;
printf(“%s\n”,p);
22 以下程序的输出结果是____ C)____。
A)2 0 B)3 1 C)3 2 1 0 D)2 1 0
main()
{int n=4;
while(n>0){n--;printf(“%d ”,n);}
}
23 以下程序运行后,输出结果是___ D _____。
A)84 B)99 C)95 D)33
int d=1;
fun (int p)
{int d=5;
d=p;
printf(“%d”,d);
}
main()
{itn a=3;
fun(a);
d=a;
printf(“%d\n”,d);
}
24 在下列选项中,没有构成死循环的程序值是____ C)____。
A)int i =100;
while(1)
{i=i%3;
if (i>100)break;
}
B)for (;;);
C)int k=1000;
do {k;} while(k>1000);
D)int s=36;
while (s);--s;
25 阅读以下程序:
main()
{int x;
scanf("%d",&x);
if(x--<5)printf("%d",x);
else printf("%d",x++);
}
程序运行后,如果从键盘上输人5,则输出结果是____ B)____。
A)3 B)4 C)5 D)6
26 C语言标准库函数"fgets(string,n,fp)"的功能是____ B) ____。
A)从文件fp中读取长度为n的字符串存入指针string指向的内存
B)从文件fp中读取长度不超过n-1的字符串存入指针string指向的内存
C)从文件fp中读取n个字符串存入指针string指向的内存
D)从文件fp中读取不超过长度为n的字符串存入指针string指向的内存
27 以下程序的输出结果是____ A) ____。
main()
{ char c='z';
printf("%c",c-25);
}
A)a B)Z C)z-25 D)y
28 下面程序的输出是___ D)_____。
main( )
{
char x=040;
printf("%d\n",x=x<<1);
}
A)100 B)160 C)120 D)64
29 若有说明:int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是__ B)______。
A)i=*p; B)p*=*&j; C)i=&j; D)i=**p;
30 以下定义语句中,错误的是____ D)____。
A)int a[]={1,2}; B)char *a[3];
C)char s[10]="test"; D)int n=5,a[n];
31 以下程序的输出结果是___ C)_____。
main()
{int i, a[10];
for(i=9;i>=0;i--)a[i]=10-i;
printf("%d%d%d",a[2],a[5],a[8]);
}
A)258 B)741 C)852 D)369
32下面程序的输出是____ D)____。
main()
{
struct cmplx{int x;int y;}
cnum[2]={1,3,2,7};
printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].x);
}
A)0 B)1 C)3 D)6
33 以下程序的输出结果是__ A)______。
main()
{int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]) ;
}
A)0650 B)1470 C)5430 D)输出值不定
34 以下选项中,不能正确赋值的是___ A)_____。
A)char s1[10];s1="Ctest";
B)char s2[]={'C', 't', 'e', 's', 't'};
C)char s3[20]="Ctest";
D)char *s4="Ctest\n"
35 以下程序的输出结果是___D) ____
main()
{int a, b;
for(a=1, b=1; a<=100; a++)