【六六互联】长期出售【美国抗投诉服务器】【欧洲抗投诉服务器】【亚洲抗投诉服务器】

在实际问题中,一组数据往往具有不同的数据类型。例如,在学生登记表中,姓名应为字符型;学号可为整型或字符型;年龄应为整型;性别应为字符型;成绩可为整型或实型。  

显然不能用一个数组来存放这一组数据。因为数组中各元素的类型和长度都必须一致,以便于编译系统处理

结构体数据的简单应用

案例描述】

修改以下代码中的错误:

#include <stdio.h>; 

struct Books{char name[50];int pages,year;}

main()

{   Books book;

    scanf("%s%d%d",book.name,book.pages,book.year);

    printf("%s,%d,%d\n",name,pages,year); }


案例分析

(1)预处理命令不是C语句,不能以分号结尾。

(2)定义结构体类型的变量时,struct关键字不能少。

(3)结构体变量的成员也是变量。scanf函数需要这些变量的地址。

(4)引用结构体变量的成员时,结构体变量的名称不能缺省。

【参考代码】

#include <stdio.h> 

struct Books{char name[50];int pages,year;}

main()

{   struct Books book;

    scanf("%s%d%d",book.name,&book.pages,&book.year);

    printf("%s,%d,%d\n",book.name,book.pages,book.year); }