用c语言作答-迎新晚会上,有5个节目,要评选出其中的优秀节目,现在观众输入喜欢的节目编号,编写程序,输出观众最喜欢的节目
时间: 2024-11-15 16:33:59 浏览: 2
在C语言中,我们可以创建一个简单的命令行程序来模拟这种场景。首先,我们需要一个数组存储五个节目的信息,然后循环获取用户的输入并更新最喜欢节目的计数。最后,找出计数最多的节目作为优秀节目。
```c
#include <stdio.h>
#include <string.h>
#define NUM_PROGS 5
char prog_names[NUM_PROGS][30]; // 存储节目名称
int votes[NUM_PROGS]; // 记录每个节目的投票数
// 初始化节目名
void init_programs() {
strcpy(prog_names[0], "节目1");
strcpy(prog_names[1], "节目2");
strcpy(prog_names[2], "节目3");
strcpy(prog_names[3], "节目4");
strcpy(prog_names[4], "节目5");
}
// 主函数
int main() {
init_programs();
int choice;
while (scanf("%d", &choice) == 1 && choice >= 0 && choice < NUM_PROGS) {
votes[choice]++;
printf("谢谢您的投票,您最喜欢的是:%s\n", prog_names[choice]);
}
int max_votes = 0, winner_index = -1;
for (int i = 0; i < NUM_PROGS; i++) {
if (votes[i] > max_votes) {
max_votes = votes[i];
winner_index = i;
}
}
if (winner_index != -1)
printf("恭喜!最优秀的节目是:%s\n", prog_names[winner_index]);
else
printf("没有人获得多数票,所有节目都需要改进!\n");
return 0;
}
```
当运行此程序时,用户需要按照提示输入节目的编号,直到退出为止。最后会显示最受欢迎的节目。如果所有节目的票数相等,则表示没有明显赢家。
阅读全文