(1)inta[4]=;其中a[3]的值为(d)。
a.5b.3c.8d.9
2)以下4个数组定义中,(d)是错误的。
n=5;longb[n];
3)对字符数组进行初始化,( b)形式是错误。
5)在数组中,数组名表示(a.)。
a.数组第1个元素的首地址b.数组第2个元素的首地址。
c.数组所有元素的首地址d.数组最后1个元素的首地址。
6)若有以下数组说明,则数值最小的和最大的元素下标分别是(b)。
inta[12]=;
a.1,12b.0,11c.1,11d.0,12
7)若有以下说明,则数值为4的表达式是(d)。
inta[12]=;charc=’a’,d=4,g=3
d'-'c']'d'-c]
8)设有定义:chars[12]="string";则printf("%d",strlen(s));的输出是(a)。
a.6b.7c.11d.12
9)设有定义:chars[12]="string";则printf("%d",sizeof(s));的输出是(d)。
a.6b.7c.11d.12
10)合法的数组定义是(a)。
string";
string";
11)下面的程序中哪一行有错误(d)。
#include<>
main();第a行。
inti;for(i=0;i<5;i++)
scanf("%f",&array[i]);
for(i=1;i<5;i++)
array[0]=array[0]+array[i];/第b行。
printf("%f",array[0]);第c行}
a.第a行b.第b行c.第c行d.没有。
12)下面哪一项是不正确的字符串赋值或赋初值的方式(c)。
string";'s','t','r','i','n','g'};string";
string",str2=12345678";
13)若有以下说明和语句,则输出结果是哪一项(c)。
strlen(s)为求字符串s的长度的函数)
chars[12]="abook!";printf("%d",strlen(s));
a.12b.8c.7d.11
14)若有以下说明和语句,则输出结果是(c)。
charstr=c:\\printf("%s",str);
a.字符串中有非法字符b.\"c:\\c."c:\"d."c:\\
15)若有以下语句,则下面是正确的描述。
charx=123456";
chary=b )
数组与y数组长度相同。数组长度大于y数组长度。
数组长度小于y数组长度。数组和y数组的赋值是非法的。
16)在c 语言中,引用数组元素时,其数组下标的数据类型允许是。c
a)整型常量b)整型表达式。
c)整型常量或整型表达式 d)任何类型的表达式。
17)以下对一维整型数组a 的正确说明是。 d
a)inta(10b)int n=10,a[n];
c) int nd) #define size 10
scanf(“%d”,&nint a[size];
int a[n];
18)若有说明:int a[10];则对a 数组元素的正确引用是。 c
a)a[10] b)a[3.5] c)a(5) d)a[10-10]
19)在c 语言中,一维数组的定义方式为:类型说明符数组名; (c)
a)[整型常量表达式b)[整型表达式]
c)[整型常量] 或[整型表达式d)[常量]
20)以下能对一维数组a 进行正确初始化的语句是。 (c)
a)int a[10]=(0,0,0,0,0b)int a[10]={
c)int a=
4 int i;
5 for(i=0;i<3;i++)scanf(“%d”,&a[i]);
6 for(i=1;i<3;i++)a[0]=a[0]+a[i];
7 printf(“%d”,a[0]);
a)第3 行有错误 b)第7 行有错误。
c)第5 行有错误 d)没有错误。
22)下面程序中有错误9*/的行是(每行程序前面的数字表示行号)。(d)
1 main()
4 int i;
5 scanf(“%d”,&a);
6 for(i=1;i<3;i++)a[0]=a[0]+a[i];
7 printf(“a[0]=%d”,a[0]);
a)3 b)6 c)7 d)5
23)下面程序(每行程序前面的数字表示行号)。 d)
1 main()
4 int i;
5 for(i=0;i<3;i++)scanf(“%f”,&a[i]);
6 for(i=1;i<4;i++)a[0]=a[0]+a[i];
7 printf(“%f”,a[0]);
a)没有错误b)第3 行有错误。
c)第5 行有错误 d)第6 行有错误。
24)对以下说明语句的正确理解是。 (b)
int a[10]=;
a)将5 个初值依次赋给a[1]至a[5]
b)将5 个初值依次赋给a[0]至a[4]
c)将5 个初值依次赋给a[6]至a[10]
d)因为数组长度与初值的个数不相同,所以此语句不正确。
1.变量的指针,其含义是指该变量的___b___
a)值b)地址。
c)名d)一个标志。
2.若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是___d__.
a)a,point,*&ab)&*a,&a,*point
c)*&point,*point,&a d)&a,&*point ,point
3.若有说明;int *p,m=5,n;以下正确的程序段的是___d___
a)p=&nb)p=&n;
scanf("%d",&p); scanf("%d",*p);
c)scanf("%d",&n); d)p=&n;
*p=np=m;
4. 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是___b___
main()
int *p,*q,a,b;
p=&a;printf(“input a:”)
scanf(“%d”,*p);
a)*p表示的是指针变量p的地址。
b)*p表示的是变量a的值,而不是变量a的地址。
c)*p表示的是指针变量p的值。
d)*p只能用来说明p是一个指针变量。
5. 已有变量定义和函数调用语句:int a=25; print_value(&a); 下面函数的正确输出结果是___d___
voidprint_value(int *x)
printf(“%d”,+x);}
a)23b)24 c)25 d)26
6.若有说明:long *p,a;则不能通过scanf语句正确给输入项读入数据的程序段是a
a) *p=&a;scanf("%ld",p);
b) p=(long *)malloc(8);scanf("%ld",p);
c) scanf("%ld",p=&a);
d) scanf("%ld",&a);
7.有以下程序b
#include<>
main()
int m=1,n=2,*p=&m,*q=&n,*r;
r=p;p=q;q=r;
printf("%d,%d,%d,%d",m,n,*p,*q);
C期末考试复习题
c 期末考试复习题。一 选择题。1.在声明类时,下面的说法正确的是 c a.可以在类的声明中给数据成员赋初值 b.数据成员的数据类型可以是register 可以按任意顺序出现 d.没有用 private public protected定义的数据成员是公有成员。2.在一个类的定义中,包含有 c 成员...
C 期末考试复习题
一 选择题。1.在声明类时,下面的说法正确的是 c a.可以在类的声明中给数据成员赋初值 b.数据成员的数据类型可以是register 可以按任意顺序出现 d.没有用 private public protected定义的数据成员是公有成员。2.在一个类的定义中,包含有 c 成员的定义。a.数据 b...
c期末考试复习题
1.程序中主函数的名字为 a.main b.main c.main d.任意标识符。2.关于c 程序的书写,下列不正确的说法是 a.区分大小写 b.一行可以写多条语句 c.一条语句可写成多行。3.能正确表示逻辑关系 a 10 或a 0 的c 语言表达式是 a.a 10 or a 0 b.a 10 a...