结构体输出程序的编写主要依赖于所使用的编程语言。以下是几种常见编程语言中如何编写结构体输出程序的示例:
C++
在C++中,可以使用`iostream`库中的`cout`对象来输出结构体的成员。以下是一个示例:
```cpp
include include struct Student { int num; std::string name; char sex; int age; struct Date { int month; int day; int year; } birthday; float score; std::string addr; }; int main() { Student student1 = {10001, "zhangsan", 'm', 23, {12, 12, 2017}, 100, "北京市昌平区马池口吉利大学"}; Student student2 = student1; std::cout << "学号: " << student2.num << std::endl; std::cout << "姓名: " << student2.name << std::endl; std::cout << "性别: " << student2.sex << std::endl; std::cout << "年龄: " << student2.age << std::endl; std::cout << "出生日期: " << student2.birthday.year << " / " << student2.birthday.month << " / " << student2.birthday.day << std::endl; std::cout << "成绩: " << student2.score << std::endl; std::cout << "地址: " << student2.addr << std::endl; return 0; } ``` C 在C语言中,可以使用`printf`函数来输出结构体的成员。以下是一个示例: ```c include typedef struct { int num; char name; char sex; int age; struct Date { int month; int day; int year; } birthday; float score; char addr; } Student; int main() { Student student1 = {10001, "zhangsan", 'm', 23, {12, 12, 2017}, 100, "北京市昌平区马池口吉利大学"}; Student student2 = student1; printf("学号: %d\n", student2.num); printf("姓名: %s\n", student2.name); printf("性别: %c\n", student2.sex); printf("年龄: %d\n", student2.age); printf("出生日期: %d / %d / %d\n", student2.birthday.year, student2.birthday.month, student2.birthday.day); printf("成绩: %.2f\n", student2.score); printf("地址: %s\n", student2.addr); return 0; } ``` Go 在Go语言中,可以使用`fmt`包中的`Println`、`Printf`或`Print`函数来输出结构体的字段值。以下是一个示例: ```go package main import ( "fmt" ) type Person struct { Name string Age int Email string } func main() { p := Person{Name: "John", Age: 25, Email: "john@example.com"} fmt.Println(p) // 打印结构体的值 fmt.Printf("%+v\n", p) // 打印结构体的字段名和值 } ``` 输出格式化 如果需要更格式化的输出,可以实现结构体的`String()`方法来自定义打印格式。以下是一个示例: