某公司要开发一个飞机票订票系统,其中涉及机票信息,请你为他们定一个结构体Ticket描述机票信息。然后定义若干机票变量,并分别采用.和->两种成员选择方式给成员赋值,并打印出机票信息。机票信息包括:订票时间,班号,起点,终点,起飞时间,座位号,姓名,身份号码,价格。
时间: 2024-06-13 09:08:38 浏览: 7
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 定义结构体Ticket
struct Ticket {
char bookTime[20];
char flightNo[10];
char start[20];
char end[20];
char takeoffTime[20];
char seatNo[10];
char name[20];
char id[20];
float price;
};
int main() {
// 定义机票变量
struct Ticket ticket1, *ticket2;
ticket2 = (struct Ticket*)malloc(sizeof(struct Ticket));
// 使用.成员选择方式给成员赋值
strcpy(ticket1.bookTime, "2021-08-01 10:00");
strcpy(ticket1.flightNo, "CA1234");
strcpy(ticket1.start, "北京");
strcpy(ticket1.end, "上海");
strcpy(ticket1.takeoffTime, "2021-08-10 08:00");
strcpy(ticket1.seatNo, "A01");
strcpy(ticket1.name, "张三");
strcpy(ticket1.id, "110101199001011234");
ticket1.price = 1000.0;
// 使用->成员选择方式给成员赋值
strcpy(ticket2->bookTime, "2021-08-01 10:00");
strcpy(ticket2->flightNo, "CA5678");
strcpy(ticket2->start, "上海");
strcpy(ticket2->end, "北京");
strcpy(ticket2->takeoffTime, "2021-08-15 10:00");
strcpy(ticket2->seatNo, "B02");
strcpy(ticket2->name, "李四");
strcpy(ticket2->id, "110101199002022222");
ticket2->price = 800.0;
// 打印机票信息
printf("机票1信息:\n");
printf("订票时间:%s\n", ticket1.bookTime);
printf("班号:%s\n", ticket1.flightNo);
printf("起点:%s\n", ticket1.start);
printf("终点:%s\n", ticket1.end);
printf("起飞时间:%s\n", ticket1.takeoffTime);
printf("座位号:%s\n", ticket1.seatNo);
printf("姓名:%s\n", ticket1.name);
printf("身份证号:%s\n", ticket1.id);
printf("价格:%.2f\n", ticket1.price);
printf("机票2信息:\n");
printf("订票时间:%s\n", ticket2->bookTime);
printf("班号:%s\n", ticket2->flightNo);
printf("起点:%s\n", ticket2->start);
printf("终点:%s\n", ticket2->end);
printf("起飞时间:%s\n", ticket2->takeoffTime);
printf("座位号:%s\n", ticket2->seatNo);
printf("姓名:%s\n", ticket2->name);
printf("身份证号:%s\n", ticket2->id);
printf("价格:%.2f\n", ticket2->price);
free(ticket2); // 释放内存
return 0;
}
```
--相关问题--:
1. C语言中如何定义结构体?
2. 如何使用malloc