void return_ticket(char name[], int num) { int i; for (i = 0; i < num_sights; i++) { if (strcmp(sights[i].name, name) == 0) { sights[i].rest_tickets += num; printf("退票成功!共返还 %d 元。\n", sights[i].price * num); return; } } printf("未找到名为 %s 的景点!\n", name); } int main() { int choice; char name[20]; int price, tickets, num; while (1) { printf("请输入操作代码:\n"); printf("1. 添加景点\n"); printf("2. 查询景点信息\n"); printf("3. 购买门票\n"); printf("4. 退回门票\n"); printf("5. 退出\n"); scanf("%d", &choice); switch (choice) { case 1: printf("请输入景点名称、门票价格和余票数量:\n"); scanf("%s %d %d", name, &price, &tickets); add_sight(name, price, tickets); break; case 2: printf("请输入景点名称:\n"); scanf("%s", name); query_sight(name); break; case 3: printf("请输入景点名称和购票数量:\n"); scanf("%s %d", name, &num); buy_ticket(name, num); break; case 4: printf("请输入景点名称和退票数量:\n"); scanf("%s %d", name, &num); return_ticket(name, num); break; case 5: return 0; default: printf("无效的操作代码!\n"); } } }
时间: 2024-02-15 16:16:39 浏览: 65
01P-Charlotte_Sights_And_Lights
这段代码是一个简单的景点门票管理系统。使用者可以添加景点、查询景点信息、购买门票和退回门票。
在主函数中,使用者可以输入操作代码,选择需要执行的操作。如果选择添加景点,则需要输入景点名称、门票价格和余票数量,程序会将这些信息存储到一个结构体数组中。如果选择查询景点信息,则需要输入景点名称,程序会输出该景点的信息。如果选择购买门票,则需要输入景点名称和购票数量,程序会检查该景点的余票数量是否足够,如果足够则减少余票数量并输出购买成功信息,否则输出购买失败信息。如果选择退回门票,则需要输入景点名称和退票数量,程序会将该景点的余票数量增加并输出退票成功信息。
在这个简单的系统中,使用了结构体和函数等基本的程序设计概念,可以用于入门级别的程序设计学习和练习。
阅读全文