typedef struct NODE
{ int num;struct NODE *next
} OLD;
下列叙述中正确的是( c )。
A)以上的说明形式非法
B)NODE是一个结构体类型
C)OLD是一个结构体类型
D)OLD是一个结构体变量
请源慎衡选择-> A B C D 2、以下对C语言中联合类型数据的正确叙述是(c)。
A)定义了联合变量后,即可引用该变量或该变量中的任意成员
B)一个联合变量中可以同时存放其所有成雹做员
C)联合中的各个成员使用共同的存储区域
D)在向联合中的一个成员进行赋值时,联合中其他成员的值不会改变
请选择-> A B C D 3、下列程序的输出结果为( b )。
main()
{union un
{char *name
int age
int pay
} s
s.name="zhaoming"
s.age=32
s.pay=3000
printf("%d\n",s.age)
}
A)32
B)3000
C)0
D)不确定
请选择-> A B C D 4、若有如下说明,且int类型占两个字节,则正确的叙述为( a )。
struct st
{int a
int b[2]
}a
A)结构体变量a与结构体成员a同名,定义是合法的
B)程序只在执行到该结构体时才为结构孝吵体st分配存储单元
C)程序运行时为结构体st分配字节存储单元
D)类型名struct st可以通过extern关键字提前引用
请选择-> A B C D 5、已知一个文件中存放若干工人档案记录,其数据结构如下:
struct a
{char number [100]
int age
float p[6]}
定义一个数组:
struct a number[10]
假定文件已正确打开,不能正确地从文件中读入名工人数据到数组b中的是( b)。
A)fread(b,sizeof(struct a),10,fp)
B)for(i=0i<10i++)
fread(b[i],sizeof(struct a),1,fp)
C)for(i=0i<10i++)
fread(b+i,sizeof(struct a),1,fp)
D)for(i=0i<5i+=2)
fread(b+i,sezeof(struct a),2,fp)
请选择-> A B C D 6、下面程序的输出结果是(c)。
typedef union { long x[1]
int y[4]
char z[10]
}M
M t
main()
{printf("%d\n",sizeof(t))
}
A)32
B)26
C)10
D)4
请选择-> A B C D 7、设有以下说明,则不正确的叙述是( c )。
union un
{int a
char b
float c
}arr;
A)arr所占的内存长度等于成员c的长度
B)arr的地址和它的各成员的地址都是同一地址
C)arr可以作为函数参数
D)不能在定义arr时对它初始化
请选择-> A B C D 8、以下程序的输出结果是( c )。
typedef union{long a[1]
int b[3]
char c[10]
} S
S t
main()
{printf(“%d\n”,sizeof(t))}
A)32
B)16
C)10
D)20
请选择-> A B C D 9、下面程序的输出结果是()。
typedef union {double x[3]
int y[4]
char z[10]
}M
M t
main()
{printf("%d\n",sizeof(t))}
A)32
B)26
C)24
D)4
请选择-> A B C D 10、下面程序的输出结果为( c )。
main()
{union{ unsigned int t
unsigned char c
}u
u.c='a'
printf("%c\n",u.t)
}
A)
B)a
C)x61
D)产生语法错误
请选择-> A B C D
这一段程序返慧族片断漏弊定义了一个名为 "struct" 的结构体,结构体中有两个成员变量碧培,分别为 "b" 和 "i"。在这段程序中,还使用了 "typedef" 关键字来定义类型别名,也就是说,"struct" 将可以被简写成 "int"。这种方式可以简化程序书写,并使程序更易于阅读。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)