6.1结构体类型的定义与实例化
探索验证:(测量结构所占有的存储空间)
程序编程:
#include
struct Data{
int year;
int month;
int day;
};
struct student{
char studName[10];
struct Data StudBirthday;
float height;
float width;
}one;
int main(){
struct student;
struct Data;
printf("%d\t",sizeof(one.height));
printf("%d\t",sizeof(one.StudBirthday.day));
printf("%d\n",sizeof(one));
return 0;
}
结果捉图:
6.2结构体变量及其成员操作
代码6.2
struct Student{
unsigned int num;
char name[20];
char sex;
unsigned char age;
float score;
};
#include
int main(){
struct Student student1={50201,"WangLi",'M',18,89.5};
struct Student student2;
student2=student1;
printf("student1:%u,%s,%c,%u,%5.2f\n",student1.num,\
student1.name,student1.sex,student1.age,student1.score);
printf("student2:%u,%s,%c,%u,%5.2f\n",student2.num,\
student2.name,student2.sex,student2.age,student2.score);
return 0;
}
或:
struct Student{
unsigned int num;
char name[20];
char sex;
unsigned char age;
float score;
}student1={50201,"WangLi",'M',18,89.5},
student2={50201,"WangLi",'M',18,89.5};
#include
int main(){
printf("student1:%u,%s,%c,%u,%5.2f\n",student1.num,\
student1.name,student1.sex,student1.age,student1.score);
printf("student2:%u,%s,%c,%u,%5.2f\n",student2.num,\
student2.name,student2.sex,student2.age,student2.score);
return 0;
}
结果捉图:
改错题:
程序编程:
#include
struct Student{
char studName[15];
char studSex;
struct s{int year;int month;int day;}studBirthday;
}stud={"zhang1",'m',{1978,5,6}};
int main(void){
printf("%s,%c,%d,%d,%d",stud.studName,stud.studSex,stud.studBirthday.year,stud.studBirthday.month,stud.studBirthday.day);
return 0;
}
结果捉图:
6.3结构体数组
代码6.4
程序编程:
#include
#include
#define N 3
struct StudType{
char name[16];
long num;
int age;
char sex;
float score;
};
int main(){
struct StudType stu[N];
int i;
char ch;
char numstr[16];
/*输入数据*/
for(i=0;i
printf("\nenter all data of stu[%d]:\n",i);
gets(stu[i].name);
gets(numstr);
s
中国电力出版社C语言书答案 新概念C语言教程第六章答案张基温著中国电力出版社出版.doc...