答案:1). 0
40.表达式'b'+5+'\x42'+011+0x10的值是【1】。答案:1). 194
41.下列语句输出的结果是【1】。
unsigned int
b=65535;printf("%d",b);
答案:1). -1
42.若char w,int x,float y,double
z;则表达式w*x+z-y的结果为【1】
类型。
答案:1). double 或双精度
43.设有以下定义的语句:
int a[3][2]={10,20,30,40,50,60},
(*p)[2];
p=a;
则*(*(p+2)+1)值为【1】。
答案:1). 60
44.设x和y均为int型变量,且
x=1,y=2,则表达式1.0+x/y的值为
【1】。
答案:1). 1.0 或1
45.c语言表达式!(4>=6)&&(3<=7)
的值是【1】。答案:1). 1
46.getchar()函数只能接收一个
【1】。答案:1). 字符
47.结构体是不同数据类型的数
据集合,作为数据类型,
必须先说明结构体【1】,再说明
结构体变量。答案:1). 类型
48.下列程序的运行结果是【1】。
void main(){unsigned x1; int
b=-1;x1=b;printf("%u",x1);}
答案:1). 65535
49.int x=2,y=3,z=4; 则表达
式!(x+y)>z的值为【1】.
答案:1). 0
50.字符串比较的库函数是【1】,
只写函数名即可。
答案:1). strcmp
51.C语言中,二维数组在内存中
的存放方式为按【1】优先存放。
答案:1). 行
52.在C语言中,最小整型数是
【1】。答案:1). -32768
53.设char a,b;若想通过a&& b运
算保留a的第1位和第6位的值,
则b的二进制数是【1】。
答案:1). 10000100
54.假设有条件int x=1,y=2,z=3;
则表达式z+=x>y?++x:++y的值是
【1】。答案:1). 6
55.求字符串长度的库函数是【1】,
只写函数名即可。答案:1). strlen
56.int x=2,y=3,z=4; 则表达式
x+y&&x=y的值为【1】.
答案:1). 1
将数组a的首地址赋给指针变量
p的语句是【1】。
答案:1). p=a;
58.'\72'在内存中占【1】个字节。
答案:1). 1
59.表达式
'B'+15+'\x41'+011+0x10的值是
【1】。答案:1). 171
60.若x和n均是int型变量,且x
和n的初值均为5,则计算表达式
x+=n++ 后x的值为
【1】,n的值为【2】。
答案:1). 10 2). 6
61.按内存排列顺序, 数组char
a[2]中的所有元素是a[1]和【1】。
答案:1). a[0]
62.int x; x=-3+4%-5*3, 则x的
值为【1】。答案:1). 9
63.若a,b和c均是int型变量,则
计算表达式a=(b=4)+(c=2) 后,a
值为【1】,
b值为【2】,c值为【3】。
答案:1). 6, 2). 4, 3). 2
64.调用fopen 函数打开一文本
文件,在"使用方式"这一项中,
为追加而打开需填入【1】。
答案:1). a 或a+
65.已知a=13,b=6, !a的十进制数
值为【1】。答案:1). 0
66.已知a=10,b=15,c=1,d=2,e=10,
则表达式a++&&e++&&c++的值
为【1】.答案:1). 1
67.设a,b,c,t为整型变量,初值为
a=3,b=4,c=5,执行完语句
t=!(a+b)+c-1&&b+c/2
后,t的值是【1】。答案:1). 1 68.x=5,y=8时,c语言表达式5-2>=x-1<=y-2的值是【1】。
答案:1). 1
69.当a=1,b=2,c=3时,执行以下程序段后b=【1】。
if (a>c) b=a;
a=c;
c=b;
答案:1). 2
70.当a=1,b=2,c=3时,执行以下程序段后c=【1】。
if (a>c) b=a;
a=c;
c=b;
答案:1). 2
71.int x=2,y=3,z=4; 则表达式x+y>z的值为【1】。答案:1). 1 72.'\x43'在内存中占【1】个字节。答案:1). 1
73.已知a=13,b=6, !a的十进制数值为【1】。答案:1). 0 74.int x; x=3*4%-5/6, 则x的值为【1】。答案:1). 0
75.已知i=5,写出语句i*=i+1; 执行后整型变量i 的值是【1】。答案:1). 30
76.设w=5;w+= -2;则w的值为【1】。答案:1). 3
77.已知a=13,b=6, a&&b的十进制数值为【1】。答案:1). 1 78.c语言程序的三种基本结构是:顺序结构,选择结构,【1】结构。答案:1). 循环
79.int x=2;z=-x+++1; 则x的值为【1】。答案:1). 3
80.执行语句char s[3]="ab",*p;p=s;*(p+2)的值是【1】。答案:1). '\0'
81.设x=2.5,a=7,y=4.7,算术表达式x+a%3*(int)(x+y)%2/4的值为【1】。答案:1). 2.5
82.预处理命令行都必须以【1】号开始。答案:1). #
83.设int x=1/4;则x的值为【1】。
答案:1). 0
84.若所用变量都已正确定义,请
填写以下程序段的输出结果
【1】。
for(i=1;i<=5;i++);
printf("OK\n");
答案:1). OK
85.设x 的值为15,n 的值为2,
则表达式x%=(n+3) 运算后x
的值是【1】。答案:1). 0
86.int x=2,y=3,z=4; 则表达式
x+y&&z的值为【1】.答案:1). 1
87.设有一个名为"myfile.c"的c
程序,其主函数为main(int
argc,char *argv[]),如果在执行时,
输入的命令行为myfile aa bb cc
↙
则形式参数argc的值是【1】。
答案:1). 4
88.已知i=5;写出语句i+=012;
执行后整型变量i 的十进制值
是【1】。答案:1). 15
89.表达式"random(1000)"的运
算结果产生0 到999之间的某
个整数,使
用该系统函数前应调用【1】函
数进行初始化。
答案:1). randomize()
90.为了避免嵌套条件语句的二
义性,C语言规定else与其前面最
近的【1】语句配对。答案:1). if
91.若s是int型变量,且s=6,则下
面表达式的值是【1】。
s%2+(s+1)%2
答案:1). 1
92.以下do-while语句中循环体
的执行次数是【1】。
a=10;
b=0;
do { b+=2; a-=2+b; } while
(a>=0);
答案:1). 3
93.if(!a)中的表达!a等价于【1】。
答案:1). a==0
94.strcat()函数原型在【1】中。
答案:1). string.h
95.int a=1,b=2,c=3; 执行语句
a=b=c;后a的值是【1】。
答案:1). 3
96.已知x=2,y=2 则表达式
x*=y+8的值为【1】。答案:1). 20
97.若有以下数组a,数组元
素:a[0]~a[9],其值为
9 4 12 8 2 10 7 5
1 3
该数组可用的最大下标值是
【1】。
答案:1). 9
98字符串"1\\t\x43\abx44"的长
度是【1】。答案:1). 9
99.已知a=13,b=6, a%b的十进
制数值为【1】。答案:1). 1
100.int x=2,y=2,z=0; 则表达式
x==y>z的值为【1】.答案:1). 0
101.表达式-3%5的值为【1】。
答案:1). -3
102.C程序在执行过程中,不检查
数组下标是否【1】。
答案:1). 越界
103.设i,j,k均为int型变量,则执
行完下面的for循环后,k的值为
【1】。
for(i=0,j=10;i<=j;i++,j--)
k=i+j;
答案:1). 10
104.C语言的三种基本结构是
【1】结构、选择结构、循环结
构。
答案:1). 顺序
105.字符串"a\x44\\101b"的长度
是【1】。
答案:1). 7
106.int x=2;z=x++-1; 则x的值为
【1】。答案:1). 3
107.int x=2;z=++x+1; 则x的值为
【1】。答案:1). 3
108.int x; x=-3+4%5-6, 则x的值为【1】。答案:1). -5 109.已知a=10,b=15,c=1,d=2,e=0,则表达式c==b>e的值为【1】. 答案:1). 1
110.在c程序中,可以通过三种运算方式为指针变量赋地址值,它们是【1】,=,malloc。答案:1). & 111.函数调用语句func((e1,e2),(e3,e4,e5))中含有【1】个实参。答案:1). 2 112.在c语言中,格式输入操作是由库函数在C语言中,格式输入操作是由库函数
【1】完成的,格式输出操作是由库函数【2】完成的。
答案:1). scanf 2). printf 113.写出语句b=(a=6,a*3); 执行后整型变量b的值是【1】。答案:1). 18
114.已知a=13,b=6,a/b的十进制数值为【1】。答案:1). 2 115.调用fopen 函数打开一文本文件,在"使用方式"这一项中, 为输出而打开需填入【1】。
答案:1). w 或w+
116.设x=5>1+2,x的值为【1】。答案:1). 1
117.int x=2;z=x++-1; 则z的值为【1】。答案:1). 1
118.已知a=10,b=15,c=1,d=2,e=0,则表达式a*b&&c 的值为【1】.答案:1). 1
119.在C语言中,最大整型数是【1】。答案:1). 32767
120.已知i=5, 写出语句a=(i>5)?0:1; 执行后整型变量 a 的值是【1】。答案:1). 1 121.若有以下数组a,数组元素:a[0]~a[9],其值为
9 4 12 8 2 10 7 5 1 3
该数组的元素中,数值最大的元素的下标值是【1】。答案:1). 2 122.以下程序段要求从键盘输入
字符,当输入字母为'Y' 时,执行
循环体,则括号内应填写【1】。
ch=getchar();
while(ch ____ 'Y')/*在括号中填
写*/
ch=getchar();
答案:1). ==
123."\71"在内存中占【1】个字
节。
答案:1). 2
124.表达式
'A'+5+'\101'+020+0x10的值是
【1】。答案:1). 167
125.已知a=13,b=6, a&b的十进
制数值为【1】。答案:1). 4
126.gets()函数的原型在【1】中。
答案:1). stdio.h
127.字符串"123\\abc\t\101cd"
的长度是【1】。答案:1). 11
128.设x=2&&2||5>1,x的值为
【1】。答案:1). 1
129."a"在内存中占【1】个字节。
答案:1). 2
130.表达式i++ 相当于表达式
【1】。答案:1). i=i+1 或i=1+i
131.已知a=10,b=15,c=1,d=2,e=0,
则表达式(c==b)>e的值为【1】.
答案:1). 0
132.int x=2,y=3,z=4; 则表达式
x+(y>!z)的值为【1】.
答案:1). 3
133.在c程序中,只能给指针赋
NULL值和【1】值。
答案:1). 地址
134.若有以下数组a,数组元
素:a[0]~a[9],其值为
9 4 12 8 2 10 7 5
1 3
该数组中下标最大的元素的值
是【1】。答案:1). 3
135.字符串"\1234\\t\x43\\bcd"
的长度是【1】.答案:136. 1). 9
136.当a=1,b=2,c=3时,执行以下
程序段后a=【1】。
if (a>c) b=a;
a=c;
c=b;
答案:1). 3
137.假设所有变量都为整型,表
达式(a=2,b=5,a>b?a++:b++,a+b)
的值是【1】。答案:1). 8
138.int x=y=4,z=2;x=y==z; 则x的
值为【1】。答案:1). 0
139.若有定义:char s[ ]="china";
则Turbo C系统为数组s开辟【1】
个字节的内存单元。答案:1). 6
140.int x; x=(3+4)%5-6, 则x的
值为【1】。答案:1). -4
141.若输入字符串:abcde<回车>,
则以下while循环体将执行【1】
次。
While((ch=getchar())=='e')
printf("*");
答案:1). 0
142.设x的值为15,n的值为2,
则表达式x%=(n+=3)运算后x的
值是【1】。答案:1). 0
143.C语言表达式!(3<6)||(4<9)
的值是【1】。答案:1). 1
144.字符串"abc\103\\bcd"的长
度是【1】。答案:1). 8
145.int x=2,y=3,z=4; 则表达式
x+y>z&&y==z的值为【1】。
答案:1). 0
146.执行以下程序段后, s的值是
【1】。
int a[]={5,3,7,2,1,5,3,10},s=0,k;
for(k=0;k<8;k+=2)
s+=*(a+k);
答案:1). 16
147.sin()函数的原型在头文件
【1】中。
答案:1). math.h
148.'a'在内存中占【1】个字节。
答案:1). 1
149.执行下列语句后,*(p+1)的值
是【1】。
char s[3]="ab",*p;
p=s;
答案:1). b
150.已知a=10,b=15,c=1,d=2,e=0,则表达式a+b>10||a+b<0的值为【1】.答案:1). 1
151.执行语句char str[81]="abcdef";后,字符串str结束标志存储在str[【1】]
(在括号内填写下标值)中。
答案:1). 6
152.C语言中调用【1】函数来打开文件。
答案:1). fopen 或fopen() 153.若有以下数组a,数组元素:a[0]~a[9],其值为
9 4 12 8 2 10 7 5 1 3
该数组的元素中,数值最小的元素的下标值是【1】。答案:1). 8 154.c语言表达式5>2>7>8的值是【1】。答案:1). 0
155feof(fp)函数用来判断文件是否结束,如果遇到文件结束,函数值为【1】。答案:1). 非0值156.若宏定义为:#define y(x) 2+x,则表达式a=3*y(3)的值为【1】。答案:1). 9
157.C语言中,数组元素的下标下限为【1】。答案:1). 0
158.定义int a[2][3];表示数组a 中的元素个数是【1】个。
答案:1). 6
159.以下程序的输出结果为【1】。#include "stdio.h"
void main(){int a;for(a=0;a<10;a++);printf("%d",a );}
答案:1). 10
160.设x=2,表达式x>=60==1的值为【1】。答案:1). 0
161.若有以下定义,则计算表达式y+=y-=m*=y后的y值是【1】。int m=5,y=2;答案:1). -16 162.已知a=13,b=6, a/b的十进
制数值为【1】。答案:1). 2
163.若int x=6;则x+=x-=x*x表达
式最后x的值是【1】。
答案:1). -60
164.表达式
'A'+10+'\103'+010+0x10的值是
【1】。答案:1). 166
165.已知a=13,b=6, a|b的十进
制数值为【1】。答案:1). 15
166.在C语言中的实型变量分为
两种类型,它们是float型和【1】
型。答案:1). double
167.若有定义:int a=10,b=9,c=8;
接着顺序执行下列语句后,变量
b中的值是【1】。
c=(a-=(b-5));
c=(a%11)+(b=3);
答案:1). 3
168.下面程序段的输出结果是
【1】。
int
a=12;a=a&052;printf("%o\n",a);
答案:1). 10
168.若宏定义为:#define y(x) 2/x,
则表达式a=4+3*y(3)的值为【1】。
答案:1). 6
170.执行下列语句后,z 的值是
【1】。int x=4,y=25,z=5; z=y/x*z;
答案:1). 30
171.已知i=5,写出语句a=i++;
执行后整型变量a的值是【1】。
答案:1). 5
172.fopen()函数的原型在头文件
【1】中。答案:1). stdio.h
173.表达式a+=b 相当于表达式
【1】。答案:1). a=a+b 或a=b+a
174.表达式
'a'+10+'\102'+010+0x11的值是
【1】。答案:1). 198
175.设k=(a=2,b=3,a*b),则k 的值
为【1】。答案:1). 6
176.表达式
'B'+15+'\x41'+020+0x10的值是
【1】。答案:1). 178
177.假设变量a,b均为整型,表达
式
(a=5,b=2,a>b?a++:b++,a+b)
的值是【1】。答案:1). 8
178.若有以下数组a,数组元
素:a[0]~a[9],其值为
9 4 12 8 2 10 7 5
1 3
该数组中下标最大的元素的值
是【1】。答案:1). 3
179.表达式i++ 相当于表达式
i=【1】。答案:1). i+1 或1+i
180.设有一个名为"my.c"的c程
序,其主函数为main(int argc,char
*argv[]),如果在执行时,输入的命
令行为my aa bb↙
则形式参数argc的值是【1】。
答案:1). 3
181.fabs()函数的原型在【1】中。
答案:1). math.h
182.已知i=5,写出语句
a=(a=i+1,a+2,a+3); 执行后整型
变量 a 的值是【1】。
答案:1). 9
183."\72"在内存中占【1】个字
节。
答案:1). 2
184.C语言把文件看作是一个
【1】的序列。
答案:1). 字符或字节
185.设x=72,表达式x=(x>=60)的
值为【1】。答案:1). 1
186.静态变量和外部变量的初始
化是在【1】阶段完成的,而自动
变量的赋值是
在【2】时进行的。
答案:1). 编译2). 函数调用
187.下面程序段的输出结果是
【1】。
int
a=12;a=a&052;printf("%d\n",a);
答案:1). 8
188.若宏定义为:#define y(x) 5%x,
则表达式a=4+3*y(2)的值为【1】。答案:1). 5
189.VC编译系统提供对C程序的编辑、编译、连接和运行环境,可以不在该环境下进行的是【1】。
答案:1). 编辑和运行
190.连接字符串的库函数名是【1】。答案:1). strcat
191.若宏定义为:#define y(x) 2*x,则表达式a=4*3+y(2)的值为【1】。答案:1). 16
192.if(a)中的表达a等价于【1】。答案:1). a!=0
193.int a=1,b=2,c=3; 执行语句a += b *= c;后a的值是【1】。
答案:1). 7
194.程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次。答案:1). 0
195.字符串"\t\x42\\bcd\n"的长度是【1】答案:1). 7
196.写出表达式 1.234&&5.982 的值是【1】。答案:1). 1 197.字符串"\1011234\\at"的长度是【1】。答案:1). 8 198.若a是int型变量,且a的初值为6,则计算表达式a+=a-=a*a 后a的值为【1】。答案:1). -60 199.C语言中的字符变量用保留字【1】来说明。答案:1). char 200.设a=3,b=4,c=4,则表达式a+b>c&&b==c&&a||b+c&&b==c 的值为【1】。答案:1). 1 201.以下程序的输出结果为【1】。#include "stdio.h" main(){int a=010,j=10;printf("%d,%d\n",++a, j--);}答案:1). 9,10
202.已知i=5.6;写出语句a=(int)i; 执行后变量i 的值是【1】。答案:1). 5.6
203.设x=4<4-!0,x的值为【1】。答案:1). 0
204.已知i=5;写出语句a=--i; 执行后整型变量 a 的值是【1】。
答案:1). 4
205.int x=2;z=++x+1; 则z的值为
【1】。答案:1). 4
206.字符串"\t\\x43\102\bcd"的
长度是【1】。答案:1). 9
207.static int
a[3][3]={{1,2,3},{4,5,6},{7,8,9}};其
中a[1][2]的值为【1】。
答案:1). 6
208.表达式
10+'\x41'+'\101'+0x10的值是
【1】。
答案:1). 156
209.输入整型变量a的值。
int a; scanf("%d",【1】);
答案:1). &a
210.if(!a)中的表达!a等价于【1】。
答案:1). a==0
211.若有以下数组a,数组元
素:a[0]~a[9],其值为
9 4 12 8 2 10 7 5 1
3
该数组的元素中,数值最大的元
素的下标值是【1】。答案:1). 2
212.当a=3,b=2,c=1;时,执行以下
程序段后c=【1】。
if(a>b) a=b;
if(b>c) b=c;
else c=b;
c=a;
答案:1). 2
213.若有以下定义和语句:
int a[5]={1,3,5,7,9},*p;
p=&a[2];
则++(*p)的值是【1】。
答案:1). 6
214.已知a=13,b=6, a^b的十进
制数值为【1】。答案:1). 11
215.若a是int型变量,则计算表
达式a=25/3%3 后a的值为【1】。
答案:1). 2
216.设i,j,k均为int型变量,则执
行完for循环
for(i=0,j=10;i<=j;i++,j--) k=i+j;
后,k的值为【1】。答案:1). 10
217.调用fopen 函数打开一文
本文件用来读取数据,在函数形
参"使用模式"这一项中,
应该填入【1】。答案:1). r 或r+
218.若有定义:char c='\010'; 则
变量C中包含的字符个数为【1】。
答案:1). 1
219.TC编译系统提供对C程序的
编辑、编译、连接和运行环境,
可以不在该环境下进行的是
【1】。
答案:1). 编辑和运行
220.已知a=13, a<<2的十进制数
值为【1】。答案:1). 52
221.设x和y均为int型变量,则
以下for循环中的scanf语句最多
可执行的次数是【1】。
for
(x=0,y=0;y!=123&&x<3;x++)
scanf ("%d",&y);
答案:1). 3
222.C语言中调用【1】函数来关
闭文件。
答案:1). fclose 或fclose()
223.一个C源程序中至少应包括
一个【1】函数。答案:1). main
224.sqrt()函数的原型在头文件
【1】中。答案:1). math.h
225.若宏定义为:#define y(x) 2+x,
则表达式a=4*y(2)的值为【1】。
答案:1). 10
226.函数的定义不可以嵌套,但
函数的调用【1】嵌套。
答案:1). 可以
227.执行下面两个语句,输出的
结果是【1】。char
c1=97,c2=98;printf("%d %c",c1,c2
);答案:1). 97 b
228.已知a=13,b=6, a>>2的十
进制数值为【1】。答案:1). 3
229.设a=3,b=4,c=5,则表达
式!(a+b)+c-1&&b+c/2的值为
【1】。
答案:229. 1). 1
230.执行下列语句后,b 的十进制值是【1】。
int x=240,y=15,b;
char z='A';
b=(( x && y ) && ( z < 'a' ));
答案:1). 1
231.int x=4,y=z=2;z=x==(y=z); 则z的值为【1】。答案:1). 0 232.设a、b、c为整型数, 且a=2、b=3、c=4, 则执行完以下语句: a*=16+(b++)-(++c);
后,a的值是【1】。答案:1). 28 233.已知a=13,b=6, a||b的十进制数值为【1】。答案:1). 1 234.若有以下数组a,数组元素:a[0]~a[9],其值为
9 4 12 8 2 10 7 5 1 3
该数组可用的最小下标值是【1】。
答案:1). 0
235.复制字符串的库函数是【1】,只写函数名即可。
答案:1). strcpy
236.C语言中,数组名是一个不可变的【1】量,不能对它进行加减和赋值运算。答案:1). 地址237.设有以下结构类型说明和变量定义,则变量a在VC环境下内存所占字节数是【1】。
struct stud
{ char num[6];
int s[4];
double ave;
} a,*p;
答案:1). 30
238.设有一个名为"test.c"的c程序,其主函数为main(int argc,char *argv[]),如果在执行时,输入的命令行为test 1 22 33 44 ↙
则形式参数argc的值是【1】。答案:1). 5 getchar()函数的原型在【1】中。
答案:1). stdio.h
240.已知a=13,b=6, a&b的十进
制数值为【1】。答案:1). 4
241.int x=2;x*=y=z=4; 则x的值
为【1】。答案:1). 8
242.若宏定义为:#define y(x) x%2,
则表达式a=3*y(4)的值为【1】。
答案:1). 0
243.int x=2,y=3,z=4; 则表达式
x+y>!z的值为【1】.答案:1). 1
244.int a=1,b=2,c=3; 表达式
(a&b)||(a|b) 的值是【1】。
答案:1). 1
245.函数调用时的实参和形参之
间的数据是单向的【1】传递。
答案:1). 值
246.C语言源程序的基本单位是
【1】。答案:1). 函数
247.已知i=5,写出语句i-=0x12;
执行后整型变量i 的值是【1】。
答案:1). -13
248.int x; x=-3+4*5-6, 则x的
值为【1】。答案:1). 11
249.strlen()函数的原型在【1】中。
答案:1). string.h
250.设(k=a=5,b=3,a*b),则k值为
【1】。答案:1). 5
251.若有以下定义和语句:
int a[4]={0,1,2,3},*p;
p=&a[2];
则*--p的值是【1】。
答案:1). 1
252.设a,b,t 为整型变量,初值为
a=7,b=9,执行完语句t=(a>b)?a:b
后,t 的值是【1】。答案:1). 9
253.当a=3,b=2,c=1;时,执行以下
程序段后a=【1】。
if(a>b) a=b;
if(b>c) b=c;
else c=b;
c=a; 答案:1). 2
254.int x=2,y=3,z=4; 则表达式
x||y+z的值为【1】.
答案:1). 1
『判断』共10题
1.用fopen("file","r+");打开
的文件"file"可以进行修改。
答案:Y
2.语句scanf("%7.2f",&a);是
一个合法的scanf函数。
答案:N
3.结构体类型只有一种。
答案:N
4.C程序中有调用关系的所有函
数必须放在同一个源程序文件
中。
答案:N
5.在Turbo C中,下面的定义和
语句是合法的:
file
*fp;fp=fopen("a.txt","r");
答案:N
6.若有定义和语句:
int
a[3][3]={{3,5},{8,9},{12,35
}},i,sum=0;
for(i=0;i<3;i++)
sum+=a[i][2-i];则sum=21.
答案:Y
7.若有宏定义:#define S(a,b)
t=a;a=b;b=t由于变量t没定义,
所以此宏定义是错误的。
答案:N
8.int i=20;switch(i/10){case
2:printf("A");
case 1:printf("B");}的输出结
果为A。
答案:N
9.char c[]="Very Good"; 是一
个合法的为字符串数组赋值的
语句。
答案:Y
10.共同体变量所占的内存长度
等于最长的成员的长度。
答案:Y
『单项选择』共20题
1.设有以下语句, 若0列选项中对字符串的非法引用是()。
char
str[4][2]={"aaa","bbb","ccc ","ddd"},*strp[4];
int j;
for (j=0;j<4;j++)
strp[j]=str[j];
A:strp B:str[k]
C:strp[k] D:*strp
答案:A
2.经下列语句定义后,
sizeof(x),sizeof(y),sizeof(a),sizeof(b)在
微机上的值分别为()。
char x=65;
float y=7.3;
int a=100;
double b=4.5;
A:2,2,2,4 B:1,2,2,4
C:1,4,2,8 D:2,4,2,8
答案:C
3.数组名作为实参数传递给函数时,数组名被处理为()。A:该数组的长度 B:该数组的元素个数
C:该数组的首地址 D:该数组中各元素的值
答案:C
4.C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为()。
A:void B:double
C:int D:char
答案:C
5.C语言中的文件的存储方式有()。
A:只能顺序存取 B:只能随机存取(或直接存取)
C:可以顺序存取,也可随机存取D:只能从文件的开头进行存取答案:C
6.下列字符序列中,不可用作C 语言标识符的是()。A:b70 B:#ab C:symbol
D:a_1
答案:B
7.以下运算符中,优先级最高的
运算符是()。
A:*= B:>= C:(类型) D:+
答案:C
8.若有以下程序段:int a=3,b=4;
a=a^b;b=b^a;a=a^b;则执行以
上
语句后,a和b的值分别是()。
A:a=3,b=4 B:a=4,b=3
C:a=4,b=4 D:a=3,b=3
答案:B
9.以下程序的输出结果为()。
main()
{int i=010,j=10;
printf("%d,%d\n",++i,j--);
}
A:11,10 B:9,10 C:010,9
D:10,9
答案:B
10.以下函数调用语句中实参的
个数是()。
func((e1,e2),(e3,e4,e5));
A:2 B:3 C:5 D:语法错误
答案:A
11.设j和k都是int类型,则for
循环语句
for(j=0,k=-1;k=1;j++,k++)
printf("****\n");()。
A:循环结束的条件不合法 B:是
无限循环
C:循环体一次也不执行 D:循环
体只执行一次
答案:B
12.以下不符合C语言语法的赋
值语句是()。
A:j++; B:j=j=5;
C:k=2*4,k*4; D:y=float(j);
答案:D
13.变量p为指针变量,若p=&a,
下列说法不正确的是()。
A:&*p==&a B:*&a==a
C:(*p)++==a++
D:*(p++)==a++
答案:D
14.fgets(str,n,fp)函数从文
件中读入一个字符串,以下正确
的叙述是()。
A:字符串读入后不会自动加入
'\0'
B:fp是file类型的指针
C:fgets函数将从文件中最多读
入n-1个字符
D:fgets函数将从文件中最多读
入n个字符
答案:C
15.若有以下定义:char
s='\092'; 则该语句()。
A:使s的值包含1个字符
B:定义不合法,s的值不确定
C:使s的值包含4个字符
D:使s的值包含3个字符
答案:B
16.设有如下定义: struct sk
{int a; float b;} data,*p;
若要使p指向data中的a域,正确
的赋值语句是()。
A:p=(struct sk*)&data.a;
B:p=(struct sk*) data.a;
C:p=&data.a; D:*p=data.a;
答案:A
17.以下标识符中,不能作为合
法的C用户定义标识符的是()。
A:a3_b3 B:void C:_123
D:IF
答案:B
18.以下不符合C语言语法的赋
值语句是()。
A:a=1,b=2 B:++j; C:a=b=5;
D:y=(a=3,6*5);
答案:A
19.执行下列语句后变量x和y的
值是()。
y=10;x=y++;
A:x=10,y=10 B:x=11,y=11
C:x=10,y=11 D:x=11,y=10
答案:C
20.若有下列定义,则对a数组元素地址的正确引用是()。
int a[5],*p=a;
A:*(p+5) B:*p+2
C:*(a+2) D:*&a[5]
答案:C
『单项选择』共50题
1.以下程序段的输出结果为()。for(i=4;i>1;i--)
for(j=1;j
putchar('#');
A:无;B:######;C:#;D:###
答案:B
2.若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),
则以下程序段的执行结果是()。ch='a'; k=12;
printf("%x,%o,",ch,ch,k); printf("k=%%d\n",k);
A:因变量类型与格式描述符的
类型不匹配,输出无定值
B:输出项与格式描述符个数不符,输出为零值或不定值
C:61,141,k=%d;D:61,141,k=%1 2
答案:C
3.以下程序的运行结果是()。main()
{ int n;
for(n=1;n<=10;n++)
{
if(n%3==0) continue;
printf("%d",n);
}
}
A:12457810; B:369
C:12; D:1234567890
答案:A
4.下列运算符中优先级最高的
是()。
A:<;B:+;C:&&;D:!= 答案:B
5.下列程序的输出为()。
main()
{ int y=10;
while(y--);
printf("y=%d\n",y);
}
A:y=0; B:while构成无限循环
C:y=1 D:y=-1
答案:D
6.C语言中的文件类型只有()。
A:索引文件和文本文件两种
B:ASCII文件和二进制文件两种
C:文本文件一种
D:二进制文件一种
答案:B
7.在C语言的函数中,下列正确
的说法是()。
A:必须有形参
B:形参必须是变量名
C:可以有也可以没有形参
D:数组名不能作形参
答案:C
8.两个指针变量不可以()。
A:相加;B:比较
C:相减;D:指向同一地址
答案:A
9.以下不能对二维数组a进行正
确初始化的语句是
A:int a[2][3]={0};
B:int a[][3]={{1,2},{0}};
C:int
a[2][3]={{1,2},{3,4},{5,6}}
;
D:int a[][3]={1,2,3,4,5,6};
答案:C
10.以下叙述中不正确的是()。
A:C语言中的文本文件以ASCⅡ
码形式存储数据
B:C语言中对二进制文件的访问
速度比文本文件快
C:C语言中,随机读写方式不适
用于文本文件
D:C语言中,顺序读写方式不适
用于二进制文件
答案:D
11.若fp已正确定义并指向某个
文件,当未遇到该文件结束标志
时函数
feof(fp)的值为()。
A:0;B:1;C:-1;D:一个非0值
答案:A
12.fseek函数的正确调用形式
是()。
A:fseek(文件类型指针,起始点,
位移量)
B:fseek(fp,位移量,起始点)
C:fseek(位移量,起始点,fp)
D:fseek(起始点,位移量,文件
类型指针)
答案:B
13.执行下列语句后变量x和y的
值是()。
y=10;x=y++;
A:x=10,y=10;B:x=11,y=11
C:x=10,y=11;D:x=11,y=10
答案:C
14.切换编辑窗和信息窗的命令
键是()。
A:F2;B:F3;C:F6;D:F9
答案:C
15.一个算法应该具有“确定性”
等5个特性,下面对另外4个特性
的描述
中错误的是()。
A:有零个或多个输入;B:有零个
或多个输出
C:有穷性;D:可行性
答案:B
16.以下不正确的if语句形式是
()。
A:if(x>y&&x!=y);B:if(x==y)
x+=y;
C:if(x!=y) scanf("%d",&x)
else scanf("%d",&y);
D:if(x答案:C
17.执行下列语句后,a和b的值
分别为()。 int a,b; a=1+'a'; b=2+7%-4-'A';
A:-63,-64;B:98,-60
C:1,-60;D:79,78
答案:B
18.char h,*s=&h;可将字符H通
过指针存入变量h中的语句是()。
A:*s=H;;B:*s='H';;C:s=H;;D:
s='H'
答案:B
19.在定义构造数据类型时,不
能()。
A:说明变量;B:说明存储类型
C:初始化;D:末尾不写分号
答案:D
20.若要说明一个类型名STP,使得定义语句STP s等价于char
*s,
以下选项中正确的是()。
A:typedef STP char *s;
B:typedef *char STP;
C:typedef stp *char;
D:typedef char* STP;
答案:D
21.fwrite函数的一般调用形式
是()。
A:fwrite(buffer,count,size, fp);
B:fwrite(fp,size,count,buff er);
C:fwrite(fp,count,size,buff er);
D:fwrite(buffer,size,count, fp);
答案:D
22.以下标识符中,不能作为合
法的C用户定义标识符的是()。A:For;B:Printf;C:WORD;D:siz eof
答案:D
23.C语言允许函数类型缺省定义,此时函数值隐含的类型是()。A:float;B:int;C:long;D:doub
le
答案:B
24.a,b为整型变量,二者均不
为0,以下关系表达式中恒成立
的是()。
A:a*b/a*b==1;B:a/b*b/a==1
C:a/b*b+a%b==a;D:a/b*b==a
答案:C
25.以下叙述中正确的是()。
A:C程序中注释部分可以出现在
程序中任意合适的地方
B:花括号“{“和”}”只能作为函数
体的定界符
C:构成C程序的基本单位是函数,
所有函数名都可以由用户命名
D:分号是C语句之间的分隔符,
不是语句的一部分
答案:A
26.C语言中,文件由()。
A:记录组成;B:由数据行组成
C:由数据块组成;D:由字符(字
节)序列组成
答案:D
27.C语言中函数调用的方式有
()。
A:函数调用作为语句一种
B:函数调用作为函数表达式一
种
C:函数调用作为语句或函数表
达式两种
D:函数调用作为语句、函数表达
式或函数参数三种
答案:D
28.以下正确的描述是:在C语言
程序中()。
A:函数的定义可以嵌套,但函数
的调用不可以嵌套
B:函数的定义不可以嵌套,但函
数的调用可以嵌套
C:函数的定义和函数的调用均
不可以嵌套
D:函数的定义和函数的调用均
可以嵌套
答案:B
29.在C语言中,要求运算数必须
是整型或字符型的运算符是()。
A:&&;B:&;C:!;D:||
答案:B
30.以下标识符中,不能作为合
法的C用户定义标识符的是()。
A:putchar;B:_double;C:_123;
D:INT
答案:A
31.以下不能正确定义二维数组
的选项是()。
A:int a[2][2]={{1},{2}};
B:int a[][2]={1,2,3,4};
C:int a[2][2]={{1},2,3};
D:int a[2][]={{1,2},{3,4}};
答案:D
32.下面说明不正确的是()。
A:char a[10]="china";
B:char a[10],*p=a;p="china"
C:char *a;a="china";
D:char a[10],*p;p=a="china"
答案:D
33.以下对C语言函数的描述中,
正确的是()。
A:C程序必须由一个或一个以上
的函数组成
B:C函数既可以嵌套定义又可以
递归调用
C:函数必须有返回值,否则不能
使用函数
D:C程序中有调用关系的所有函
数必须放在同一个程序文件中
答案:A
34.经下列语句定义后,
sizeof(x),sizeof(y),
sizeof(a),sizeof(b)在
微机上的值分别为()。
char x=65;
float y=7.3;
int a=100;
double b=4.5;
A:2,2,2,4;B:1,2,2,4;C:1,4,2
,8;D:2,4,2,8
答案:C
35.以下叙述正确的是()。A:do-while语句构成的循环不
能用其它语句构成的循环来代替.
B:do-while语句构成的循环只
能用break语句退出.
C:用do-while语句构成的循环,在while后的表达式为非零时结束循环.
D:用do-while语句构成的循环,在while后的表达式为零时结束循环
答案:D
36.设C语言中,int类型数据占2个字节,则short类型数据占()。A:1个字节;B:2个字节;C:4个字节;D:8个字节
答案:B
37.int a=1,b=2,c=3;
if(a>c)b=a;a=c;c=b;则c的值
为()。
A:1;B:2;C:3;D:不一定
答案:B
38.int a=3,b=2,c=1;
if(a>b>c)a=b; else a=c; 则a 的值为()。
A:3;B:2;C:1;D:0
答案:C
39.设a=12,且a定义为整型变量。执行语句a+=a-=a*=a;后a的值为()。
A:12;B:144.C:0;D:132
答案:C
4.当定义一个结构体变量时,系统分配给它的内存是()。
A:各成员所需内存量的总和
B:结构中第一个成员所需内存
量
C:结构中最后一个成员所需内
存量
D:成员中占内存量最大者所需
的容量答案:A
41.若有定义:char
*p1,*p2,*p3,*p4,ch;则不能正
确赋值的程序语句为()。
A:p1=&ch; scanf("%c",p1);
B:p2=(char
*)malloc(1);scanf("%c",p2);
C:*p3=getchar();
D:p4=&ch;*p4=getchar();
答案:C
42.以下标识符中,不能作为合
法的C用户定义标识符的是()。
A:a3_b3;B:void;C:_123;D:IF
答案:B
43.设j和k都是int类型,则for
循环语句()。
for(j=0,k=0;j<=9&&k!=876;j+
+) scanf("%d",&k);
A:最多执行10次;B:最多执行9
次
C:是无限循环;D:循环体一次也
不执行
答案:A
44.以下可作为函数fopen中第
一个参数的正确格式是()。
A:c:user\text.txt;B:c:\user
\text.txt
C:"c:\user\text.txt";D:"c:\
\user\\text.txt"
答案:D
45.下面选择中正确的赋值语句
是(设char a[5],*p=a;)()。
A:p="abcd";;B:a="abcd";
C:*p="abcd";;D:*a="abcd";
答案:A
46.若二维数组a有m列,则在
a[i][j]前的元素个数为()。
A:j*m+I;B:i*m+j;C:i*m+j-1;D
:i*m+j+1
答案:B
47.C语言中,double类型数据占
()。
A:1个字节;B:2个字节;C:4个字
节;D:8个字节
答案:D
48.设有数组定义: char array
[ ]="China"; 则数组 array所
占的
空间为()。
A:4个字节B:5个字节;C:6个字
节D:7个字节
答案:C
49以下运算符中,优先级最高的
运算符是()。
A:?:;B:++;C:&&;D:,
答案:B
50若a=1,b=2则 a|b的值是()。
A:0;B:1;C:2;D:3
答案:D
『多项选择』共30题
1.以下叙述正确的是()。
A:C语言严格区分大小写英文字
母
B:C语言用";"作为语句分隔符
C:C程序书写格式自由,一行内
可以写几个语句,一个语句也可
以写在几行上.
D:可以使用/*…*/对C程序中的
任何部分作注释;答案:ABCD
2.以下描述正确的是()。
A:调用函数时,实参可以是表达
式
B:调用函数时,实参与形参可以
共用内存单元
C:调用函数时,将为形参分配内
存单元
D:调用函数时,实参与形参的类
型必须一致;答案:ACD
3.若以下选项中的变量已正确
定义,则不正确的赋值语句是
()。
A:x1=26.8%3;B:x=3*x+x
C:x3=0x12;D:x4=1+2=3;
答案:AD
4.下列选项中是C语言合法标志
符的有()。
A:good_morning;B:main
C:stdio.h;D:8abc
答案:AB
5.以下4个选项中,可以看作是一条语句的有()。
A:{;};B:a=0,b=0,c=0;
C:if(a>0);;D:if(b==0)
m=1;n=2;答案:ABC
6.以下对switch语句和break语句中描述错误的有()。
A:在switch语句中必须使用break语句
B:break语句只能用于switch语句
C:在switch语句中,可以根据需要使用或不使用break语句
D:break语句是switch语句的一部分;答案:ABD
7.以下描述正确的是()。
A:使用while和do-while循环时,循环变量初始话的操作应在循环体语句之前完成
B:while循环是先判断表达式,后执行循环语句
C:do-while和for循环均是先执行循环语句,后判断表达式
D:for,while和do-while循环中的循环体均可以由空语句构成
答案:ABD
8.以下关于typedef的叙述正确的是()。
A:用typedef可以定义各种类型名,但不能用来定义变量
B:用typedef可以增加新类型C:用typedef只是将已存在的类型用一个新的名字来代表
D:使用typedef便于程序的通用答案:ACD
9.以下不符合C语言语法的实型常量是()。
A:1.2E0.5;B:3.14.159E C:.5E-3;D:E15 ;答案:ABD 10.已定义c为字符型变量,则下列语句中错误的是()。
A:c='97';;B:c="97";
C:c=97;;D:c="a";;答案:ABD 11.若a,b,c,d都是int型变量
且初值为0,以下选项中正确的
赋值语句是()。
A:a=b=c=d=100;B:d++;
C:c+b;;D:d=(c=22)-(b++);
答案:ABD
12.以下关于数组描述错误的是
A:数组的大小是固定的,但可以
有不同的类型的数组元素
B:数组的大小是可变的,但所有
数组元素的类型必须相同
C:数组的大小是固定的,所有数
组元素的类型必须相同
D:数组的大小是可变的,可以有
不同的类型的数组元素
答案:ABD
13.以下正确的if语句形式是
()。
A:if (x>y && x!=y);
B:if (x==y) x+=y;
C:if (x!=y) scanf("%d",&x)
else scanf("%d",&y);
D:if (x答案:ABD
14.以下叙述中正确的是()。
A:一个C源程序可由一个或多个
函数组成
B:一个C源程序必须包含一个
main()函数
C:C源程序的基本组成单位是函
数
D:在C源程序中,注释说明只能
位于一条语句的最后;答案:ABC
15.以下合法的十六进制数是
()。
A:oxff;B:0Xabc
C:0x01;D:0X9X;答案:BC
16.以下对C语言中的函数描述
不正确的有()。
A:可以嵌套定义,不可以嵌套调
用
B:不可以嵌套定义,可以嵌套调
用
C:可以嵌套定义,也可以嵌套调
用
D:嵌套定义和嵌套调用都不允
许;答案:ACD
17.设有以下定义
int a=0;
double b=1.25;
char c='A';
#define d 2
则下面语句中正确的是()。
A:a++;;B:b++;C:c++;;D:d++;
答案:ABC
18.对do-while语句描述正确的
是()。
A:do-while语句构成的循环可
以使用break语句退出循环
B:do-while语句构成的循环必
须使用break语句退出循环
C:do-while语句构成的循环,当
while中的表达式值为非零时结
束循环
D:do-while语句构成的循环,当
while中的表达式值为零时结束
循环;答案:AD
19.以下可以定义为用户标识符
的有()。
A:scanf;B:short;
C:_3com_;D:int
答案:AC
20.以下选项中不是C语言合法
整数的是()。
A:10110;B:0386
C:0Xffa;D:x2a2
答案:BD
21.以下叙述正确的是()。
A:预处理命令行都必须以"#"开
始
B:在程序中凡是以"#"开始的语
句行都是预处理命令行
C:C程序在执行过程中对预处理
命令行进行处理
D:#define ABCD是正确的宏定义
答案:ABD
22.以下选项中不合法的字符常
量是()。
A:"B";B:'\010';C:68;D:D 答案:ACD
23.以下用户标识符,其中合法的是()。
A:return;B:f2_G3
C:A3-3;D:abc
答案:BD
24.以下选项中,合法的字符常量是()。
A:'\t';B:'\17'
C:"n";D:'\xaa'
答案:ABD
25.以下选项中合法的表达式是A:0<=x<100;B:i=j==0
C:(char)(65+3);D:x+1=x+1 答案:ABC
26.在定义int a[2][3];之后,对a的引用正确的有()。
A:a[0][2];B:a[1,3]
C:a[1>2][!1];D:a[2][0]
答案:AC
27.以下描述错误的是()。A:continue语句的作用是重新开始一次循环体的执行
B:只能在循环体内和switch语句体内使用break语句
C:在循环体内使用break语句和continue语句的作用相同
D:从多重循环嵌套中退出是,只能使用goto语句;答案:CD 28.以下对二维数组a进行正确初始话的是()。
A:static char
word[]='Turbo\0';
B:static char
word[]={'T','u','r','b','o' ,'\0'};
C:static char
word[]={"Turbo\0"};
D:static char
word[]="Turbo\0";
答案:BCD
29.有定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);
语句使变量x得到数值11,变量y
得到数值12,下面四组输入形式
中,
正确的有()。
A:11 12<回车>
B:11,<空格>12<回车>
C:11,12<回车>
D:11,<回车> 12<回车>答案:BCD
30下列对逻辑运算符两侧的运
算对象的数据类型描述不正确
的是()。
A:只能是0或1
B:只能是0或非0正数
C:可以是整型或字符型数据
D:可以是任何类型的数据
答案:ABD
『试卷编号:10183』
一、填空共5题
1.int x=4,y=z=2;z=x==(y=z); 则z
的值为【1】。答案:1). 0
2.设a,b,t 为整型变量,初值为
a=7,b=9,执行完语句t=(a>b)?a:b
后,t 的值是【1】。答案:1). 9
3.设x=72,表达式x=(x>=60)的值
为【1】。答案:1). 1
4.sqrt()函数的原型在头文件【1】
中。答案:1). math.h
5.int x=2;z=-x+++1; 则z的值为
【1】。
答案:1). -1
二、判断共5题
1.若有说明int c;则
while(c=getchar());是正确的C语
句。答案:Y
2.结构体类型只有一种。答案N
3.若有宏定义:#define S(a,b)
t=a;a=b;b=t由于变量t没定义,
所以此宏定义是错误的。答案N
4.参加位运算的数据可以是任何
类型的数据。答案:N
5.若有int i=10,j=2;则执行完
i*=j+8;后ⅰ的值为28。答案:N
三、单项选择共10题
1.若有下列定义,则对a数组元
素地址的正确引用是()。
int a[5],*p=a;
A:*(p+5);B:*p+2
C:*(a+2);D:*&a[5]
答案:C
2.在C语言的函数中,下列正确
的说法是()。
A:必须有形参
B:形参必须是变量名
C:可以有也可以没有形参
D:数组名不能作形参
答案:C
3.若有说明:int a[3][4];则数组a
中各元素()。
A:可在程序的运行阶段得到初
值0
B:可在程序的编译阶段得到初
值0
C:不能得到确定的初值0
D:可在程序的编译或运行阶段
得到初值0
答案:C
4.设C语言中,int类型数据占2
个字节,则short类型数据占()。
A:1个字节;B:2个字节
C:4个字节;D:8个字节
答案:B
5.若变量a与i已正确定义,且i
已正确赋值,合法的语句是()。
A:a==1;B:++i;
C:a=a++=5;;D:a=int(i);
答案:B
6.若有说明:int a[10];则对a数组
元素的正确引用是()。
A:a[10];B:a[3,5]
C:a(5);D:a[10-10]
答案:D
7.若a为int类型,且其值为3,
则执行完表达式a+=a-=a*a后,a
的值是()。
A:-3;B:9;C:-12;D:6
答案:C
8.若有说明:int *p,m=5,n;以下正确的程序段是()。
A:p=&n;scanf("%d",&p);
B:p=&n;scanf("%d",*p)
C:scanf("%d",&n);*p=n;
D:p=&n;*p=m;
答案:D
9.以下叙述中不正确的是()。A:C语言中的文本文件以ASCⅡ码形式存储数据
B:C语言中对二进制文件的访问速度比文本文件快
C:C语言中,随机读写方式不适用于文本文件
D:C语言中,顺序读写方式不适用于二进制文件
答案:D
10.经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微机上的值分别为()。
char x=65;
float y=7.3;
int a=100;
double b=4.5;
A:2,2,2,4;B:1,2,2,4
C:1,4,2,8;D:2,4,2,8
答案:C
四、多项选择
1.以下对二维数组a进行正确初始话的是()。
A:static char word[]='Turbo\0'; B:static char word[]={'T','u','r','b','o','\0'};
C:static char word[]={"Turbo\0"}; D:static char word[]="Turbo\0";
答案:BCD
2.以下描述正确的是()。
A:调用函数时,实参可以是表达式
B:调用函数时,实参与形参可以共用内存单元
C:调用函数时,将为形参分配内存单元
D:调用函数时,实参与形参的类型必须一致
答案:ACD
3.continue语句功能正确的描述
是()
A:终止当前所在的循环
B:结束本轮循环,开始下一轮循
环
C:跳过循环体下面的语句
D:只能用在3种循环语句的循环
体中
答案:BCD
4.有说明语句char
str[]={"football"};正确的描述是()
A:数组str的长度是9
B:strlen(str)的值是8
C:str[4]的值是98
D:str[8]的值是0
答案:ABCD
5.下列中是C语言的合法标识符
的有()
A:good_morning;B:main
C:stdio.h;D:8abc
答案:AB
五、程序填空
1.功能:用函数调用方式,实现
字符串的复制。
void string_copy(char *str_from,
char *str_to)
{
int i=0;
/***********SPACE**********
*/
for(;
(*(【?】)=*(str_from+i))!='\0'; i++) ;
}
main()
{
static char array_str1[20]="I am
a teacher.";
char array_str2[20];
/***********SPACE**********
*/
【?】(array_str1, array_str2);
/***********SPACE**********
*/
【?】
("array_str2=%s\n",array_str2);
}
答案:
1). str_to+i 或i+str_to
2). string_copy
3). printf
2.功能:从读入的整数数据中,
统计大于零的整数个数和小于
零的
整数个数。用输入零来结
束输入,程序中用变量i统计大
于
零的整数个数,用变量j
统计小于零的整数个数。
#include
void main(void)
{
int n,i,j;
printf("Enter INT number,with
0 to end\n");
i=j=0;
scanf("%d",&n);
while(n!=0)
{
/***********SPACE**********
*/
if(n>0) i=【?】;
/***********SPACE**********
*/
if(n<0) j=【?】;
/***********SPACE**********
*/
scanf("%d",【?】);
}
printf("i=%4d\nj=%4d\n",i,j);
C语言试卷及答案
《C语言程序设计》考试试卷(答案) 一、填空题(每小空1分,共10分) 1.C语言程序的三种基本结构是顺序结构、选择结构、循环结构。 2.一个C程序有且仅有一个main( ) 函数。 3.C语言描述“x和y都大于或等于z”的表达式是x>=z && y>=z。 4.C语言可以用来实现循环的结构化语句是while、do while、for。 5.数组名表示数组在内存的首地址。 6.int a=3,*p=&a;*p+2的值是5。 二、单项选择题(每小题2分,共70分) 1.__B___是C语言合法的常量。 (A).45(B)078 (C)25.6e3.4 (D)‘xy’2.一个程序的执行是从 A 。 (A)本程序的main函数开始,到main函数结束 (B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 (C)本程序的main函数开始,到本程序文件的最后一个函数结束。 (D)本程序文件的第一个函数开始,到main函数结束。 3.以下叙述正确的是 C 。 (A)在C程序中,main函数必须位于程序的最前面。 (B)C程序每行中只能写一条语句。 (C)C语言本是没有输入输出语句。 (D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误。 4.以下叙述不正确的是 D 。 (A)逗号运算符的运算级最低。 (B)ABC和abc是两个不同的变量。 (C)若a和b类型相同,在执行a=b后,b的自身值不变。 (D)‘a’和“a”是完全等价的常量。 5.int x=3,y=2;则表达式x+=x*=y+8的值为 C 。 (A)28 (B)30 (C)60(D)17 6.设x=2.7,a=8,y=4.9,算术表达式x+a%3*(int)(x+y)%5/3的值为 B 。 (A)2.7 (B)3.7(C)4.7 (D)4.03 7.执行下面两个语句后,输出的结果为__D___。 char c1=98; printf(“%d %c”,c1,c1-32); (A)97 66 (B)98 b (C)b 66 (D)98 B 8.执行下面语句后的结果为 C 。 y=10;x=y++; (A)x=10,y=10 (B)x=11,y=11 (C)x=10,y=11(D)x=11,y=10 9.Char w;int x;float y;double z;则表达式w*x+z-y值的数据类型是A 。 (A)double (B)char (C)int (D)float 10.C语言中要求操作数必须是整数的运算符是 B 。
c语言试题及答案
1、以下正确的说法是( B ) (A) 用户若需要调用标准库函数,调用前必须重新定义 (B) 用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C) 系统根本不允许用户重新定义标准库函数 (D) 用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是( A ) (A) double fun(int x, int y) (B) double fun(int x; int y) (C) double fun(int x, int y); (D) double fun(int x,y); 3、以下正确的函数形式是( D ) (A) double fun(int x, int y) { z=x+y; return z;} (B) fun(int x,y) { int z; return z;} (C) fun(x,y) { int x,y; double z; z=x+y; return z;} (D) double fun(int x, int y) { double z; z=x+y; return z;} 4、以下正确的说法是( A ) 在C语言中 (A) 实参和与其对应的形参各占用独立的存储单元 (B) 实参和与其对应的形参共占用一个存储单元 (C) 只有当实参和与其对应的形参同名时才共占用存储单元 (D) 形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是( A ) 该函数 (A) 没有返回值 (B) 返回若干个系统默认值 (C) 能返回一个用户所希望的函数值 (D) 返回一个不确定的值 6、以下不正确的说法是( B ) C语言规定 (A) 实参可以是常量、变量和表达式 (B) 形参可以是常量、变量和表达式 (C) 实参可以为任意类型 (D) 形参应与其对应的实参类型一致 7、以下正确的说法是( C ) (A) 定义函数时,形参的类型说明可以放在函数体内 (B) return后边的值不能为表达式 (C) 如果函数值的类型与返回值类型不一致,以函数值类型为准 (D) 如果形参与实参的类型不一致,以实参类型为准 8、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是( B ) (A) 地址传递 (B) 单向值传递 (C) 由实参传给形参,再由形参传回给实参 (D) 由用户指定传递方式
c 试题及答案
一、单项选择题 1、下列哪个类型的对象是https://www.wendangku.net/doc/2014923396.html,在非连接模式下处理数据内容的主要对象? (D ) A. Command B. Connection C. DataAdapter D. DataSet 2、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型, 如果类型省略,则定义为( A )。 A. int B. sbyte C. uint D. ulong 3、创建数据库连接使用的对象是( A )。 A. Connection B. Command C. DataReader D. DataSet 4、C#中导入某一命名空间的关键字是( A )。 A. using B. use C.import D. include 5、一般情况下,异常类存放在什么命名空间中?( B )。 A. 生成异常类所在的命名空间 B. System.Exception命名空 间 C. System.Diagnostics命名空间 D. System命名空间 6、若将数据库中的数据填充到数据集,应调用SqlDataAdapter的( C )方 法。 A. Open B. Close C. Fill D. Update 7、若将数据集中所作更改更新回数据库,应调用SqlAdapter的(A )方法。 A. Update B. Close C. Fill D. Open 8、在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的( A ) 成员,来指定操作系统打开一个现有文件并把文件读写指针定位在 文件尾部。 A. Append B. Create C. CreateNew D. Truncate 9、在菜单项File中,为将F设为助记符,应将该菜单项的Text属性设置为 (B )。 A. @File B.&File C. %File D._File 10、指定操作系统读取文件方式中的FileMode .Create的含义是( D)。 A. 打开现有文件 B. 指定操作系统应创建文件,如果文件存在,将出现异常 C. 打开现有文件,若文件不存在,出现异常 D. 指定操作系统应创建文件,如果文件存在,将被改写 11、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型,如果类型省略,则定义为( D )。 A. uint B. sbyte C. ulong D. int 12、当运行程序时,系统自动执行启动窗体的( C )事件。 A. Click B.DoubleClick C. Load D. Activated
(完整版)C语言试题及答案解析
C语言 一、选择题(第题2分,共20分) 1.一个C程序的执行是从 A 。 A) 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序文件的第一个函数开始,到本程序main函数结束 D) 本程序的main函数开始,到本程序文件的最后一个函数结束 2.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 C 。 x=(i=4,j=16,k=32) A) 4 B) 16 C) 32 D) 52 3.设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为 C 。 A) 0~255 B) 0~32767 C) 0~65535 D) 0~2147483647 4.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 D 。 A) float B) char C) int D) double 5. putchar函数可以向终端输出一个 D 。 A) 整型变量表达式 B) 实型变量值 C) 字符串 D) 字符或字符型变量值 6. printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式 B ;如果字符串长度小于5,则输出按方式 C 。 A) 从左起输出该字符串,右补空格 B) 按原字符长从左向右全部输出 C) 右对齐输出该字符串,左补空格 D) 输出错误信息 7.判断char型变量ch是否为大写字母的正确表达式是 C 。 A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’) C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch) 8.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是 B 。 if(x>y) z=x; x=y; y=z; A) x=10, y=20, z=30 B) x=20, y=30, z=30 C) x=20, y=30, z=10 D) x=20, y=30, z=20 9.以下程序段______C__. x=-1; do{ x=x*x; } while(!x); A)是死循环 B)循环执行二次 C)循环执行一次 D)有语法错误 10.以下正确的描述是___B____. A)continue语句的作用是结束整个循环的执行
C期末考试题及答案
C期末考试题及答案 Revised at 2 pm on December 25, 2020.
一、填空题(每空0.5分,共30分) 1、世界坐标系简称__WCS_用户自定义坐标系简称__UCS_。 2、工作空间的切换:“工具”/“工作空间”或“工作空间”工具栏。 3、工具栏包括30种,系统默认的显示工具栏包括:“标准”、“属性”、“绘图”和“修改”等工具栏。 4、多线的对正方式有_上(T)_、_无(Z)_和_下(B)_。 5、文字标注包括标注单行文字和标注多行文字。 6、渲染环境是指在渲染对象时进行的雾化和深度设置。 7、漫游和飞行用户可以通过键盘和鼠标来控制视图显示,并创建导航动画。 8、编辑实体的边的种类:压印边、复制边、着色边。 9、动态块是通过自定义夹点或自定义特性定义的块。在图形中使用动态块,用户可以随时对组成块的对象进行修改。 10、三维实体是具有体积、质量、重心、回转半径、惯性距等特征的三维对象。 11、在AutoCAD 2007中,用户可以创建的光源有电光源、聚光灯光源和平行光光源。 12、相切、相切、半径法是指:通过指定圆的两个切点和半径来绘制圆。 13、绘制圆环的步骤中,先输入圆环的内径和外径,后确定圆环的中心点。 14、计算机辅助设计是:工程技术人员在CAD系统的辅助下,根据产品的设计程序进行设计的一项新技术。 15、菜单栏包括11种,每一种菜单中都含有四种显示情况:命令后跟右三角 、后跟省略号、后跟快捷键或功能键或命令呈灰色。 16、要对图形对象进行编辑就必须选中图形对象,在AutoCAD 2007中,选择对象的方法很多,常用的有_直接拾取_、矩形框选择_、_不规则区域选择_和快速选择。 17、在设置显示精度时,如果设置的精度越高,即分辨率就越高,计算机计算的时间 也越长,显示图形的速度也就越慢。 18、三维基本实体的种类包括:多段体、长方体、楔体、圆柱体、圆锥体、球体、圆环体、棱锥面。 19、布尔运算中只留重复的一部分的运算是交集运算。从一个图形中去掉与另一个图形重复部分的运算是差集运算。
C语言全部题目及答案
C语言全部题目及答案 SANY GROUP system office room 【SANYUA16H-
C语言全部题目及答案 Exercise 1: Programming Environment and Basic Input/Output 1.Write a program that prints “This is my first program!” on the screen. (a)Save this program onto your own disk with the name of e2-1a; (b)Run this program without opening Turbo C; (c)Modify this program to print “This is my second program!”, then save it as e2-1b. Please do not overwrite the first program. 2.Write a program that prints the number 1 to 4 on the same line. Write the program using the following methods: (a)Using four “printf” statements. (b)Using one “printf” statement with no conversion specifier(i.e. no ‘%’). (c)Using one “printf” statement with four conversion specifiers 3.(a) Write a program that calculates and displays the number of minutes in 15 days. (b) Write a program that calculates and displays how many hours 180 minutes equal to. (c) (Optional) How about 174 minutes?
C语言试题及答案
第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的 C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的 C 语言字符型常量。
C语言试题及答案
一、单项选择题 1. 软件危机具有下列表现( d )。 I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住 III. 软件常常不可维护IV. 软件成本逐年上升 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。 A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段 3. 下列属于软件的特点的是(D )。 A. 软件是一种逻辑实体,具有抽象性 ~ B. 软件在使用过程中没有磨损、老化的问题 C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高 D. 以上都正确 4. 软件工程的出现是由于(D )。 A. 软件危机的出现 B. 计算机硬件技术的发展 C. 软件社会化的需要 D. 计算机软件技术的发展 5. 软件开发技术不包含( d )。 A. 软件开发方法学 B. 软件工程环境 C. 软件工具 D. 软件质量度度量 6. 软件工程的课程特点( D )。 【 I. 学科理论及其知识应用的多维性 II. 工程化 III. 浓厚的方法学色彩 IV. 实践性、指导性强 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 7. 下列属于应用软件的是( b )。 I. 计算机辅助教学软件II. 软件测试工具 III. 办公自动化软件IV. 工程与科学计算软件
A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 8. 需求分析阶段最重要的技术文档是( b )。 - A. 设计说明书 B. 需求规格说明书 C. 可行性分析报告 D. 用户手册 9. 以下关于数据流图的说法错误的是( c )。 A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储 B. 数据流图是用作结构化分析的一种工具 C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成 D. 数据流图的绘制采用自上向下、逐层分解的方法 10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( c )。 A. 数据库设计 B. 数据通信 C. 数据定义 D. 数据维护 11. 需求分析阶段的研究对象是( b )。 ¥ A. 系统分析员要求 B. 用户要求 C. 软硬件要求 D. 系统要求 12. 结构化方法的基本原则是( b )。 A. 模块化 B. 抽象与分解 C. 信息隐蔽 D. 逐步求精 13. 耦合度最高的是(b)耦合。 A. 环境 B. 内容 C. 控制 D. 数据 14. 内聚程度较低的是( a )内聚。 A. 偶然 B. 通讯 C. 顺序 D. 时间 15. 对一个程序来说,组成系统的模块数目( b ),则开发成本越小。 A. 越多 B. 越少 C. 顺序 D. 时间> 16. 画软件结构图时应注意调用关系只能是(B )。 A. 从下到上 B. 从上到下 C. 从左到右 D. 从右到左 17. 程序流程图中的箭头代表( b )。 A. 数据流 B. 控制流 C. 顺序流 D. 调用 18. 软件测试是软件质量保证的重要手段,下述( B )是软件测试的最基础环节。
C语言期末考试题含答案
C语言期末考试题含答 案 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]
《C 语言程序设计》期末试卷 一、单项选择题(10x2’=20’) 1、以下叙述正确的是( ) A )C 语言的源程序不必通过编译就可以直接运行。 B ) C 语言中的每条可执行语句最终都将被转换成二进制的机器指令。 C )C 语言源程序经编译形成的二进制代码可以直接运行。 D )C 语言中的函数不可以单独进行编译。 2、一个C 语言的源程序中( ) A )必须有一个主函数 B )可能有多个主函数 C )必须有除主函数外其它函数 D )可以没有主函数 3、以下不能定义为用户标识符的是( ) A )scanf B )Void C )_3com D )int 4、若以下选项中的变量已正确定义,则正确的赋值语句是( ) A )x1=%3; B )1+2=x2; C )x3=0x12; D )x4=1+2=3; 5、设有定义:float a=2,b=4,h=3;以下C 语言表达式中与代数式h b a *)(21 的计算结果不. 相符的是( ) A )(a+b)*h/2 B )(1/2)*(a+b)*h C )(a+b)*h*1/2 D )h/2*(a+b) 6、C 语言中用于结构化程序设计的3种基本结构是( ) A )顺序结构、选择结构、循环结构 B )if 、switch 、break C )for 、while 、do-while D )if 、for 、continue
7.在while(!x)语句中的!x与下面条件表达式等价的是() A) x!=0 B) x==1 C) x!=1 D) x==0 8、有以下程序: #include <> void main(){ int i=1,j=1,k=2; if( (j++||k++)&&i++ ) printf(“%d,%d,%d\n”,i,j,k);} 执行后的输出结果是() A)1,1,2B)2,2,1C)2,2,2D)2,2,3 9、有以下程序: #include <> void main(){ int i,s=0; for(i=1;i<10;i+=2) s+=i+1; printf(“%d\n”,s);} 程序执行后的输出结果是() A)自然数1~9的累加和B)自然数1~10的累加和 C)自然数1~9中奇数之和D)自然数1~10中偶数之和 10、有以下函数定义: void fun(int n,double x){……} 若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是() A)fun(int y,double m); B)k=fun(10,; C)fun(x,n); D)void fun(n,x); 二、填空题(10x2’=20’) 11、C语言描述“x和y都大于或等于z”的表达式是:。 12、函数定义时涉及的基本要素是:、、。
C试题及答案一
C++程序设计模拟试卷(一) 一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中 只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无 分。 1. 编写C++程序一般需经过的几个步骤依次是() A. 编辑、调试、编译、连接 B. 编辑、编译、连接、运行 C. 编译、调试、编辑、连接 D. 编译、编辑、连接、运行 答案:B 解析:经过编辑、编译、连接和运行四个步骤。编辑是将C++源程序输入计算机的过程,保 存文件名为cpp。编译是使用系统提供的编译器将源程序cpp生成机器语言的过程,目标文件为 obj,由于没有得到系统分配的绝对地址,还不能直接运行。连接是将目标文件obj转换为可执行 程序的过程,结果为exe。运行是执行exe,在屏幕上显示结果的过程。 2. 决定C++语言中函数的返回值类型的是() A. return语句中的表达式类型 B. 调用该函数时系统随机产生的类型 C. 调用该函数时的主调用函数类型 D. 在定义该函数时所指定的数据类型 答案:D 解析:函数的返回值类型由定义函数时的指定的数据类型决定的。A项的表达式的值要转换 成函数的定义时的返回类型。 3. 下面叙述不正确的是() A. 派生类一般都用公有派生 B. 对基类成员的访问必须是无二义性的 C. 赋值兼容规则也适用于多重继承的组合 D. 基类的公有成员在派生类中仍然是公有的 答案:D 解析:继承方式有三种:公有、私有和保护。多继承中,多个基类具有同名成员,在它们 的子类中访问这些成员,就产生了二义性,但进行访问时,不能存在二义性。赋值兼容规则是指 派生类对象可以当作基类对象使用,只要存在继承关系,所以单继承或多继承都适用。基类中的 公有成员采用私有继承时,在派生类中变成了私有成员,所以D项错误。 4. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体 也就是() A. 类 B. 对象 C. 函数体 D. 数据块 答案:A 解析:类即数据和操作的组合体,数据是类的静态特征,操作是类具有的动作。 5. 在公有派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中 的() A. 私有成员 B. 公有成员 C. 保护成员 D. 保护成员或私有成员 答案:A 解析:在派生类中基类的保护或者基类公有都可以直接访问,基类的私有成员只能是基类 的成员函数来访问。所以选择A项。 6. 对基类和派生类的关系描述中,错误的是() A. 派生类是基类的具体化 B. 基类继承了派生类的属性 C. 派生类是基类定义的延续 D. 派生类是基类的特殊化 答案:B 解析:派生类的成员一个是来自基类,一个来自本身,所以派生类是基类的扩展,也是基 类的具体化和特殊化,派生类是对基类扩展。B项基类不能继承派生类成员,所以错误。 7. 关于this指针使用说法正确的是() A. 保证每个对象拥有自己的数据成员,但共享处理这些数据的代码
完整版C试题及答案
C++考试试卷 1. 已知:char *s=S456; 则cout<>s; C) char *s1=abcd,*s2=efghijk;strcpy(s1,s2); D) char *s=abcdefg; cout<<*s; 4. C++中,关于构造函数和析构函数,正确的描述是()。 A) 在定义类时,必须自定义构造函数和析构函数,在创建对象时自动调用构造函数,在释放对象时自动调用析构函数 B) 构造函数和析构函数均可以重载 C) 已知类Student以及Student *p; 在使用p=new Student;时自动调用无参构造函数创建动态对象,在delelte p;时自动调用析构函数释放动态对象 D) 构造函数和析构函数都可以成为虚函数 )。关于拷贝构造函数的描述正确的是(5. A) 通常的拷贝构造函数的参数是对象的指针类型 B) 如果不自定义拷贝构造函数,系统提供默认的拷贝构造函数 C) 如果有自定义的构造函数,系统就不再提供拷贝构造函数 D) 如果需要用已有对象为新创建的对象初始化时,就必须自定义拷贝构造函数 6. 有关静态成员的描述错误的是()。 A) 某个类的静态数据成员由该类的所有对象所共享 B) 类的公有静态数据成员既可以用类的对象访问,也可以直接用作用域运算符“::”通过类名来访问 C) 静态数据成员既可以是私有成员,也可以是公有成员 D) 类中一旦定义了静态数据成员,就必须定义静态成员函数,以便对静态数据成员进行操作
C语言试题及答案
C语言试题及答案 Company number【1089WT-1898YT-1W8CB-9UUT-92108】
第1章C语言概述习题1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成
C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 37 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言 的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。
C语言考试题及答案
一、单项选择题:(10分,每题2分) 1.char *p[10];该语句声明了一个: c 。 A)指向含有10个元素的一维字符型数组的指针变量p B)指向长度不超过10的字符串的指针变量p C)有10个元素的指针数组p,每个元素可以指向一个字符串 D) 有10个元素的指针数组p,每个元素存放一个字符串 2.若int x;且有下面的程序片断,则输出结果为: D 。 for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "**%d\n", x); } A) ##3B) **3C) **3D)##3**4 **4 ##4 ##4**5 ##5 ##5 **5 3.在while(!x)语句中的!x与下面条件表达式等价的是:D 。 A) x!=0 B) x==1 C) x!=1 D) x==0 4.已知 struct point { int x; int y; }; struct rect { struct point pt1; struct point pt2; }; struct rect rt; struct rect *rp = &rt; 则下面哪一种引用是不正确的__D______。 A) r t.pt1.x B) (*rp).pt1.x C) r p->pt1.x D) rt->pt1.x 5.若二维数组a有m行n列,则下面能够正确引用元素a[i][j]的为: C 。 A) *(a+j*n+i) B) *(a+i*n+j) C) *(*(a+i)+j) D) *(*a+i)+j CDDDC 二、分析程序并写出运行结果。(25分,每题5分) 1. #include main()
c语言试题及答案
c语言试题及答案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998
1、以下正确的说法是(B) (A)用户若需要调用标准库函数,调用前必须重新定义 (B)用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C)系统根本不允许用户重新定义标准库函数 (D)用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是(A) (A)doublefun(intx,inty) (B)doublefun(intx;inty) (C)doublefun(intx,inty); (D)doublefun(intx,y); 3、以下正确的函数形式是(D) (A)doublefun(intx,inty){z=x+y;returnz;} (B)fun(intx,y){intz;returnz;} (C)fun(x,y){intx,y;doublez;z=x+y;returnz;} (D)doublefun(intx,inty){doublez;z=x+y;returnz;} 4、以下正确的说法是(A ) 在C语言中 (A)实参和与其对应的形参各占用独立的存储单元 (B)实参和与其对应的形参共占用一个存储单元
(C)只有当实参和与其对应的形参同名时才共占用存储单元 (D)形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是(A) 该函数 (A)没有返回值 (B)返回若干个系统默认值 (C)能返回一个用户所希望的函数值 (D)返回一个不确定的值 6、以下不正确的说法是(B) C语言规定 (A)实参可以是常量、变量和表达式 (B)形参可以是常量、变量和表达式 (C)实参可以为任意类型 (D)形参应与其对应的实参类型一致 7、以下正确的说法是(C) (A)定义函数时,形参的类型说明可以放在函数体内 (B)return后边的值不能为表达式 (C)如果函数值的类型与返回值类型不一致,以函数值类型为准 (D)如果形参与实参的类型不一致,以实参类型为准
C试题及答案
C#模拟练习 一.选择填空 1. 面向对象的语言具有继承性、多态性和____性。 A) 封装 B) 拆箱 C) 封闭 D) 逻辑 2. 以下叙述正确的是____ A) 接口中可以有虚方法。 B) 一个类可以实现多个接口。 C) 接口可以被实例化。 D) 接口中可以包含已实现的方法。 3. .当整数a赋值给一个object对象时,整数a将会被____。 A)拆箱 B)丢失 C) 装箱 D)出错 4. float f=-123.567F; int i=(int)f;i的值现在是_____? A) 123f B) 123.56 C) -123f D)-123 5. 委托声明的关键字是____。 A) delegate B) delete C) public D)interface 6. 在.Net中所有可序列化的类都被标记为____。 A) (serializable) B) [serializable] C) serializable D) serialize 7. C#中的索引器类型应该是_____类型。 A)整型 B)字符型 C)任意类型 D)数组8.在c#中using关键字的作用是_____ A)定义命名空间 B)新建实例 C)调用类 D)引入命名空间9.在c#中new关键字的作用是_____ A)新建对象实例 B)定义命名空间 C)调用类 D)引入命名空间 10.在c#中利用sealed修饰的类_____。 A)密封,不能继承 B)密封,可以继承 C)表示基类 D)表示抽象类 二.阅读程序,指出划线部分的含义或功能 ① using ; ②namespace ConAAAA { ③ class FirstThread { public void Task() { ("This is a Task"); } static void Main(string[] args) { ④FirstThread ft = new FirstThread(); Thread t1 = new Thread(new ThreadStart); (); ⑤(); } } } 三.写出下列程序的运行结果。 1.namespace TestAAA { class TestArray
c语言试卷含答案
一、选择题(26分) 1. 正确的C语言标识符是(A)。 A._buy_2 B.2_buy C.?_buy D.buy? 2. 以下选项中,合法转义字符的选项是(A)。 A.’\\’ B.’\018’ C.’xcb’ D.’\ab 3、下列语句中,错误的是(B ) A、#define PI B、#include <>; C、if(2); D、for(;;) if(1) break; 4、能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是() A、 a>=10 or a<=0 B、 a>=0|a<=10 C、 a>=10 &&a<=0 D、 a>=10‖a<=0 5、以下对break语句使用的正确描述是() A、可以出现在程序中的任何位置 B、只能出现在循环结构中或switch结构中 C、只能出现在switch结构中 D、只能出现在循环结构中 6. C语言程序的基本单位是(C)。 A.程序行 B.语句 C.函数 D.字符7、已知各变量的类型说明如下:() int m=6,n, a, b; unsigned long w=8;
double x=, y=; 则以下符合C语言语法的表达式是(A)。 A.a+=a-=(b=2)*(a=8) B. n=n*3=18 C.x%3 D.y=float (m) 8、已有定义:char x[]=“ab”,y[ ]={‘a’,’b’ };,以下叙述中正确的是( C) A、数组x和y的长度相同 B、x数组长度小于y数组长度 C、x数组长度大于y数组长度 D、上述说法都不对 9、设有定义“int x=3,y,*p=&x”,则下列语句中使y不为3的语句是(D ) A、y=*&x B、y=*p C、y=x D、y=&x 10、设x、y、z均为int型变量,则执行语句:x=y=3;z=++x||++y;后,y的值为() A、不定值 B、4 C、3 D、1 11.有如下程序段: int x1,x2; char y1,y2; scanf(”%d%c%d%c”,&x1,&y1,&x2,&y2); 若要求x1、x2、y1、y2的值分别为10、20、A、B,正确的数据输入是(A)。 (注: └┘ 代表空格) A.10A └┘20B B.10 └┘ A20B C.10 └┘A └┘ 20 └┘ B D.10A20 └┘ B 12.有如下程序段,对应正确的数据输入是(A)。 float a,b; scanf(”%f%f”, &a,&b);
C试题及答案
C++程序设计模拟试卷(五) 一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中 只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无 分。 1.静态成员函数没有() A.返回值 B.this指针 C.指针参数 D.返回类型 答案:B 解析:静态成员函数是普通的函数前加入static,它具有函数的所有的特征:返回类型、 形参,所以使用静态成员函数,指针可以作为形参,也具有返回值。静态成员是类具有的 属性,不是对象的特征,而this表示的是隐藏的对象的指针,因此静态成员函数没有this指针 。静态成员函数当在类外定义时,要注意不能使用static关键字作为前缀。由于静态成员函数在 类中只有一个拷贝(副本),因此它访问对象的成员时要受到一些限制:静态成员函数可以直接 访问类中说明的静态成员,但不能直接访问类中说明的非静态成员;若要访问非静态成员时,必 须通过参数传递的方式得到相应的对象,再通过对象来访问。 2.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管 理操作的函数是() A.友元函数 B.虚函数 C.构造函数 D.析构函数 答案:C 解析:定义构造函数作用就是初始化对象,而析构函数释放对象空间。虚函数用于完成多 态性,友元增加访问方便性。 3.所有在函数中定义的变量,都是() A.全局变量 B.局部变量 C.静态变量 D.寄存器变量 答案:B 解析:变量存储类可分为两类:全局变量和局部变量。 (1)全局变量:在函数外部定义的变量称为全局变量,其作用域为:从定义变量的位置开始 到源程序结束。全局变量增加了函数之间数据联系的渠道,全局变量作用域内的函数,均可使用 、修改该全局变量的值,但是使用全局变量降低了程序的可理解性,软件工程学提倡尽量避免使 用全局变量。 (2)局部变量:在函数内部定义的变量称为局部变量,其作用域为:从定义变量的位置开始 到函数结束。局部变量包含自动变量(auto)静态变量(static)以及函数参数。 auto变量意味着变量的存储空间的分配与释放是自动进行的。说明符auto可以省略。函数中 的局部变量存放在栈空间。在函数开始运行时,局部变量被分配内存单元,函数结束时,局部变 量释放内存单元。因此,任两个函数中的局部变量可以同名,因其占有不同的内存单元而不影响 使用。这有利于实现软件开发的模块化。 static变量是定义在函数体内的变量,存放在静态存储区,不用栈空间存储,其值并不随存 储空间的释放而消失。 4.假定AB为一个类,则执行“ABa(2),b[3],*p[4];”语句时调用该类构造函数的次数 为() A.3 B.4 C.5 D.9 答案:B 解析:a(2)调用1次带参数的构造函数,b[3]调用3次无参数的构造函数,指针没有给它 分配空间,没有调用构造函数。所以共调用构造函数的次数为4。 5.如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则 可表示为() A.a.operator++(1) B.operator++(a) C.operator++(a,1) D.a.operator++() 答案:D
c 试题及答案
c试题及答案 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-
一、单项选择题 1、下列哪个类型的对象是在非连接模式下处理数据内容的主要对象(D ) A. Command B. Connection C. DataAdapter D. DataSet 2、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型, 如果类型省略,则定义为( A )。 A. int B. sbyte C. uint D. ulong 3、创建数据库连接使用的对象是( A )。 A. Connection B. Command C. DataReader D. DataSet 4、C#中导入某一命名空间的关键字是( A )。 A. using B. use D. include 5、一般情况下,异常类存放在什么命名空间中( B )。 A. 生成异常类所在的命名空间 B. 命名空间 C. 命名空间 D. System命名空间 6、若将数据库中的数据填充到数据集,应调用SqlDataAdapter的( C )方 法。 A. Open B. Close C. Fill D. Update 7、若将数据集中所作更改更新回数据库,应调用SqlAdapter的(A )方法。 A. Update B. Close C. Fill D. Open 8、在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的( A ) 成员,来指定操作系统打开一个现有文件并把文件读写指针定位在 文件尾部。 A. Append B. Create C. CreateNew D. Truncate 9、在菜单项File中,为将F设为助记符,应将该菜单项的Text属性设置为 (B )。 A. @File B.&File C. %File 10、指定操作系统读取文件方式中的FileMode .Create的含义是( D)。 A. 打开现有文件 B. 指定操作系统应创建文件,如果文件存在,将出现异常 C. 打开现有文件,若文件不存在,出现异常 D. 指定操作系统应创建文件,如果文件存在,将被改写 11、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型,如果类型省略,则定义为( D )。 A. uint B. sbyte C. ulong D. int 12、当运行程序时,系统自动执行启动窗体的( C )事件。 A. Click C. Load D. Activated 13、若要使命令按钮不可操作,要对( B )属性进行设置。 A. Visible B. Enabled C. BackColor D. Text