文档详情

《C语言程序设计》课件第7章.ppt

发布:2025-02-27约6.63千字共57页下载文档
文本预览下载声明

scanf(“%ld”,u.b);

printf(“b=%d\n”,u.b);

;

printf(c[0]=%c,c[1]=%c,c[2]=%c,c[3]=%c\n,u.c[0],u.c[1],u.c[2],u.c[3]);

}5.下面这段程序的运行结果是。

#includestdio.h

structbook

{

charname[50];

intpages;

};voidmain()

{

structbookbook1={JaneEyre,385};

printf(%s%d,book1.name,book1.pages);

}二、选择题

1.下列结构定义正确的是()。

A.?struct{intx;inty}; B.?structs{intx;inty;};

C.?structs{intx;inty;} D.?structs{intx,inty;};

2.已知:

structx{inta;intb;}y;

则访问结构变量y的成员a的表达式正确的是()。

A.?y.a B.?x.a C.?y-a D.?*y.a3.定义了如下结构:

struct

{

intx;

inty;

}mm;

在main()函数中输出mm的成员值,正确的是()。A.printf(%d,mm);

B.?printf(%d%d,mm);

C.?printf(%d,%d,mm.x,mm.y);

D.?printf(%d,%d,mm-x,mm-y);4.定义了一个个人信息结构体personal,其中嵌套了一个出生年月的结构birth,在主程序中以“XXXX年XX月XX日”格式输出person1的出生年月的语句是()。structbirth

{

intyear;

intmonth;

intday;

};

structpersonal{

charID[18];

charname[10];

charsex;

structbirthdate;

}person1;A.?printf(“%4d%2d%2d”,date.year,date.month,date.day);B.?printf(%4d%2d%2d,person1.date.year,person1.date.month,person1.date.day);

C.?printf(%4d年%2d月%2d日,person1.date.year,person1.date.month,person1.date.day);

D.?printf(%4d%2d%2d,person1.date.year,年,person1.date.month,月,person1.date.day,日);5.一个整型数存储时占两个字节,低字节在左边,高字节在右边,利用联合体的特点取出整型数16961的高字节和低字节,下列程序运行结果正确的是()。unionint_byte

{

charc[2];

intd;

}ib;

voidmain()

{ ib.d=16961;

printf(“%d,%c”,ib.c[0],ib.c[0]);

printf(“,%d,%c”,ib.c[1],ib.c[1]);

}

A.?16,?,61,= B.?61,=,16,?

C.?66,B,65,A D.?65,A,66,B三、编程题

1.定义一个三角形结构,它有3个成员,分别表示三角形的3条边。编写一个函数来判断该3条边是否能构成一个直角三角形的函数,并编写测试程序检验。

2.编写一个工资计算程序,其中有不同的岗位(假设有工人和技术员两个岗位),不同的岗位资金的系数是不同的(假设分别是100和150)。编写一个函数用于计算工资,并编写测试程序检验。一、实训的目的与要求

1.掌握结构体和联合体的定义,理解struct和union是定义的关键字而不是类型;

2.熟悉各种结构、联合类型成员的引用方法;

3.应用结构体变量、指针及数组解决实际问题。【实训】二、实训内容

1.在“学生成绩管理信息系统”中,学生的信息由一个结构类型定义,通过不同的结构数组来存放学生的各种信息,也就是记录,每个结构数组的一个元素就是一条学生记录。假设学生结构成员有学号、姓名

显示全部
相似文档