c语言结构体作业

更新时间:2024-01-05 21:37:02 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、 当说明一个结构体变量时系统分配给它的内存是A A)各成员所需内存量的总和 B)结构中第一个成员所需内存量 C)成员中占内存量最大者所需的容量 D)结构中最后一个成员所需内存量

2、 以下对结构体类型变量td的定义中,错误的是C A)typedef struct aa B)struct aa

{int n; {int n; fliat m; fliat m; }AA; }; AA td; struct aa td; C)struct yy D)struct yy

{int n; { int n; float m; float m; }aa; }td; Struct yy td;

3、 下列程序的输出结果是B struct abc { int a, b, c; }; main()

{ struct abc s[2]={{1,2,3},{4,5,6}}; int t; t=s[0].a+s[1].b; printf(\} A)5 B)6 C)7 4、 设有如下说明 A typedef struct yy

{ int n; char c; double x;}STD;

则以下选项中,能正确定义结构体数组并赋初值的语句是 A)STD tt[2]={{1,'A',62},{2, 'B',75}}; B)STD tt[2]={1,\C)struct yy tt[2]={{1,'A'},{2, 'B'}};

D)struct yy tt[2]={{1,\

5、 在32位IBM-PC机上使用C语言,若有如下定义 struct data {

int i;

char ch[8];

double f; }b;

则结构变量b占用内存的字节数是C A)13 B)8 C)16

D)8

D)24

6、 已知学生记录描述为 struct student {int no;

char name[20]; char sex; Struct

{int year; int month; int day; }birth;

}; struct student s;

设变量s中的“生日”应是“1984年11月11日”,下列对“生日”的正确赋值方式是D A)year=1984;month=11;day=11;

B)birth.year=1984;birth.month=11;birth.day=11; C)s.year=1984;s.month=11;s.day=11;

D)s.birth.year=1984;s.birth.month=11;s.birth.day=11;

编程题:

1. 获取当前年月日及时间,并做一个每秒刷新时间的功能 2. 按分组讨论点菜系统,定义结构体模板, A、确定保存员工信息的结构体 B、确定保存台桌信息的结构体 C、确定保存菜谱信息的结构体、 D、确定保存点菜信息的结构体

E、根据项目需求考虑还需要哪些结构体

确定完结构体后做以下操作

1)用结构体数组分别定义相应的变量,并分别初始化5个员工、5张台桌、5个菜谱的信息。(员工要分角色)

2)封装3个函数用于打印员工信息、台桌信息、菜谱信息 3)在主函数里调用上面的打印信息,测试打印函数正确性

4)封装一个函数 Staff_Add(),参数返回值自行定义,功能要求往员工结构体数组的最后一个元素增加新员工数据,新员工数据可以在外面主调函数里输入后,把数组传参进来(注意:新添加的结构体信息要保存在结构体数组的哪个位置?) 5)如果以上都做完的同学,可以做一个删除一位员工信息的函数,但是是假删除,不能真把员工信息清除,其实本质是修改员工,可以设置个标志位,作为员工数据有效性的标志,即在职变成离职。若要打印员工信息的时候,要加一个判断,判断该标志位是否有效?有效才显示,无效则表示该员工无效,但数据还是存储在数组里。

本文来源:https://www.bwwdw.com/article/23rx.html

Top