结构体与共用体习题

发布时间 : 星期一 文章结构体与共用体习题更新完毕开始阅读

第十一章 结构体与共用体

1、 填空

(1) 为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是指向结点的指针域),请填空。 Struct link

{char data; ; }node;

(2) 以下程序的输出结果是 。 main()

{struct cmplx{int x;int y;} cnum[2]={1,3,2,7}; printf(“%d\\n”,cnum[0].y/cnum[0].x*cnum[1].x);} 2、 选择

(1) 根据以下定义,能输出字母M的语句是

A.printf(“%c\\n”,class[3].name); B.printf(“%c\\n”,class[3].name[1]); C.printf(“%c\\n”,class[2].name[1]); D.printf(“%c\\n”,class[2].name[0]); struct person { char name[9];int age;}; struct person class[10]={ “John”,17, “Paul”,19, “Mary”,18, “Adam”,16,}; (2) 对整个结构能够进行的操作是 。 A. 对结构进行赋值

data next

B. 对结构进行存取 C. 对结构进行运算 D. 对结构进行&操作

(3) 不是结构类型的特点的选项为 。 A. 结构体变量可以有不同类型的成员 B. 结构体中的成员都占有存储空间

C. 结构体变量既可以做函数参数,又可以从函数中返回 D. 结构体变量的成员既可以读又可以写 3、 判断

(1) 能在一个存储区内处理不同的类型的数据叫结构。( ) (2) 在编译时对结构类型不分配空间,只能对变量分配空间。() (3) 结构一旦定义,系统就给它分配所需的内存单元。() 4、 程序设计

(1)设有以下结构类型说明: struct stud

{char num[5],name[10]; int s[4]; double ave; } 请编写:

<1>readrec把30名学生的学号、姓名、四项成绩及平均分放在一个结构体数组中,学生的学号、姓名和四项成绩由键盘输入,然后计算出平均分放在结构提对应的域中。

<2>函数writerec输出30名学生的记录。

<3>main函数调用readrec函数和writerec函数,实现全部程序功能。 (2)编写一个C程序,要求定义一个有关日期的结构体类型变量(包括年、月、日),从键盘为该变量中的各成员输入数据,然后再将输入的日期显示输出。 (3)建立50名学生信息结构,每个学生的信息包括:学号、姓名、出生年月日及平均成绩,要求从键盘上输入50名学生的信息,然后按一行显示一名学生的信息的方式显示50名学生的信息。

(4)建立10名学生的结构,其中包括学生的姓名、性别、学号及五门课的成绩。编一个程序输入10名学生的信息并输出。

联系合同范文客服:xxxxx#qq.com(#替换为@)