(1)( )是关于C语言数据类型的正确叙述。
A) 枚举类型不是基本类型
B) 变量使用前应定义相应的数据类型
C) 不允许使用空类型
D) 数组不是构造类型
(2) 下列( )对结构类型变量定义是错误的。
A) struct teacher
{ int num;
int age;
};
struct teacher teach1;
B) struct
{ int num;
int age;
} teach1, teach2;
C) struct
{ int num;
int age;
} teacher;
struct teacher teach1;
D) struct teacher
{ int num;
int age;
} teach1;
(3) 若有定义:
char ch;
int j,k;
enum day {sun, mon, tue, wed, thu, fri, sat};
int a[sat];
则( )对下列语句是否符合语法规则的判断是正确的。
sun=0; /*语句1*/
j=mon+tue; /*语句2*/
if (a[mon]>0) j++; /*语句3*/
A) 语句1、2、3均正确
B) 语句2正确,语句1和语句3错误
C) 语句1错误,语句2和语句3正确
D) 语句1、2、3均错误
(4) 若有定义:
struct teacher
{ int num;
char sex;
int age;
} teacher1;
则下面叙述错误的是( )。
A) teacher1是结构类型名
B) struct teacher是用户定义的结构类型
C) num、sex、age都是结构变量teacher1的成员
D) struct是结构类型的关键字
(5) 下列程序段运行后,表达式( )的值为3。
struct point
{ int x;
int y;
} *p;
struct point a[3]={1,2,3,4,5,6};
p=a;
A) p[1].x
B) *(p+2)
C) p[3].x
D) p[2].x
(6) 若有定义:
typedef int NUM[100];
NUM n;
则( )语句是正确的。
A) n[0]=2;
B) NUM=2;
C) NUM=n;
enum c++D) n=2;
(7) 若有定义int a=1,b=2,t=3;
struct data
{ char a;
float b[3];
long c;
}d1;
则变量d1的长度是( )。
A) 4
B) 17
C) 12
D) 15
(8) 若有定义
struct teacher
{ int num;
char name[10];
char sex;
int age;
}t1={2001,”Li Ming”,’M’,35};
则下列( )对结构变量引用是正确的。
A) t1->name
B) t1.name
C) t1.name[0]
D) t1->name[0]
(9) 若有定义enum day{sun,mon,tue,wed,thu,fri,sat};,则枚举常量sun、mon的值分别为( )。
A) 0 1
B) 7 1
C) 7 0
D) 1 2
(10) 若有定义
union u_type
{ int x;
float y[3];
char z;
}a;
则变量a的长度是( )
A) 4
B) 1
C) 15
D) 12
(11)( )对枚举类型的定义是错误的。
A) enum b{1,2,3};
B) enum a{A,B,C};
C) enum d{X=0,Y=5,Z=9};
D) enum c{D=3,E,F};
(12) 以下程序段的运行结果是( )。
union
{ int num1;
int num2;
}s;
s.num1=20;
s.num2=30;
printf(“%d”,s.num1);
A) 2030
B) 20
C) 50
D) 30
(13) 若有定义
Typedef int * INTEGER;
INTEGER p;
则下面叙述正确的是( )
A) p是与INTEGER相同的类型
B) 程序中可用INTEGER定义int类型指针变量
C) p是一个整型变量
D) 程序中可用INTEGER定义int类型变量
(14) 若有定义:enum num{a1,a2=3,a3,a4=0};,则枚举常量a2、a3的值分别为( )。
A) 2 3
B) 3 4
C) 3 3
D) 1 2
(15) 下列程序段的运行结果是( )。
union data
{
int a;
char b;
} data1;
data1.b=’A’;
data1.a++;
union data
{
int a;
char b;
} data1;
data1.b=’A’;
data1.a++;
printf(“%c\n”,data1.b);
A、66
B、65
C、B
D、A
(16) 若已定义:
struct teacher
{ int num;
char name[20];
} t1,*p=&t1;
下列对结构变量t1中成员num合法的引用是( )。
struct teacher
{ int num;
char name[20];
} t1,*p=&t1;
下列对结构变量t1中成员num合法的引用是( )。
A、teacher.num
B、t1->num
C、p->num
D、*p.num
(17) 以下语句正确的是( )。
A、typedef INTEGER int;
B、typedef INTEGER=int;
C、typedef int INTEGER;
D、typedef INTEGER:int;
(18) 下列不属于C语言数据类型的是( )。
A、枚举类型
B、复数类型
C、双精度型
D、长整型
(19) 以下程序段的运行结果是( )。
union
{
int x;
float y;
char c;
} m,n;
m.x=5;
m.y=7.5;
m.c=’A’;
n.x=8;
printf("%d",m.x);
}
A) 5
B) 8
C) 7.5
D) 65
(20) 若已定义:
struct student
{
struct student
{
int num;
float score;
} stu[2]={{101, 85.5},{102, 90.0}},*p=stu;
下列对结构体数组引用错误的是( )。
float score;
} stu[2]={{101, 85.5},{102, 90.0}},*p=stu;
下列对结构体数组引用错误的是( )。
A、(*p).num
B、stu[0].num
C、p[1]->num
D、p->num
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论