A、stu 是用户定义的结构体类型名
B、struct 是结构体类型的关键字
C、struct student 是用户定义的结构体类型
D、num, score 都是结构体的成员名
A、stu 是用户定义的结构体类型名
B、struct 是结构体类型的关键字
C、struct student 是用户定义的结构体类型
D、num, score 都是结构体的成员名
A、错
B、正确
C、错
D、错
A、cout< <s.score[1]+s.score[2]+s.score[3];>
B、cout< <s.score[0]+s.score[1]+s.score[2];>
C、cout< <s[0].score[0]+s[0].score[1]+s[0].score[2];>
D、cout< <score[0].s[1]+>
B.zhang 是结构体变量名
C.wang 是结构体类型名
D.num, name,score 都是结构体的成员名
B.114
C.214
D.7
【说明】
在某嵌入式处理器上,编写以下两段秸序(编译选项中,存储采用4字节对齐方式)。
程序段1:
struct studentl {
char name [10] ;
long sno;
char sex;
float score [4] ;
*pl, al, bl;
程序段2:
union student2 {
char name [10] ;
long sno;
char sex,
float score [4] ;
*p2, a2, b2;
汉诺塔问题说明:有n个盘子在A处,盘子从小到大,最上面的盘予最小,程序要
把这n个盘子从A处搬到C处,可以在E处暂存,但任何时候都不能出现大的盘子压
在小的盘子上面的情况。
下列是一段求解汉诺塔问题的C语言程序。
include
void move (int n, char a, char c)
{
static int Step=l;
printf ("Step %2d: Disk %d %c..--> %c\n", Step, n, a, c) ;
Step++;
}
void Hanoi (int n, char a, char b, cnar c)
{
if (n>l)
{
Hanoi (n-l, a, c, b) ;
move (n, a. c) ;
Hanoi (n-l, b, a, c) ;
}
else move (n,a,c);
}
void main()
{
Hanoi(3, ’A’, 、B’, 、C ’);
}
【问题1】(3分)
C语言函数的一般格式为:
<函数类型> <函数名> (<参数列表>)
{
<函数体>;
}
简答下述问题,将答案填写在答题纸中对应栏目。
(l)<函数类型>的含义是什么?
(2)<参数列表>的含义是什么?
(3)C语言函数之间的参数如何传递?
【问题2] (6分)
回答问题,将答案填写在答题纸中对应栏目。
(1)sizeof(struct studentl)结果是多少
(2) sizeof(union student2)结果是多少
(3)变量a2在程序段2中定义,写出执亍以下语句后的输出结果。
strcpy (a2. name,¨zhangwei¨);
a2.sex=’f’;
printf ("%s¨, a2 .name);
【问题3](6分)
仔细阅读求解汉诺塔问题的C语言程序,完成其中(1)~(4)空白填空,将答案
填入答题纸的对应栏内。
运行结果为:
Step1:Disk l A---->C
Step 2: (l)
Step 3: Disk I C---->B
Step4: (2)
Step 5: (3)
Step 6: Disk 2 B---->C
Step 7: (4)
structStudent
{intnum;
doublescore;
};
Studentstu[3]={{1001,80},{1002,75},{1003,91}},*p=stu;
则下面引用形式错误的是()。
(A)p->num
(B)(p++).num
(C)(p++)->num
(D)(*p).num
A、i,3
B、n,3
C、f,4
D、l,4
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!