(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)  语句123均正确
B)  语句2正确,语句1和语句3错误
C)  语句1错误,语句2和语句3正确
D)  语句123均错误 
(4) 若有定义:
struct teacher
{ int num;
  char sex;
  int age;
} teacher1;
则下面叙述错误的是(  )。
A)  teacher1是结构类型名
B)  struct teacher是用户定义的结构类型
C)  numsexage都是结构变量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};,则枚举常量sunmon的值分别为(  )。
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};,则枚举常量a2a3的值分别为(  )。
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++;
printf(“%c\n”,data1.b);
A66   
B65   
CB   
DA
(16) 若已定义:
struct teacher
{ int num;
  char name[20];
} t1,*p=&t1;
下列对结构变量t1中成员num合法的引用是(  )。
Ateacher.num   
Bt1->num   
Cp->num   
D*p.num
(17) 以下语句正确的是(  )。
Atypedef INTEGER int;   
Btypedef INTEGER=int;
Ctypedef int INTEGER;   
Dtypedef INTEGERint;
(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
{
int num;
float score;
} stu[2]={{101, 85.5},{102, 90.0}},*p=stu;
下列对结构体数组引用错误的是(    )。
A(*p).num   
Bstu[0].num   
Cp[1]->num   
Dp->num

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。