问题:班级竞选班长,共有三个候选人,输入参加选举的人数及每个人选举的内容,输出三个候选人最终的得票数及无效选票数
核心思路:通过一个一维数组来实现,然后用 for 循环实现对数组数据的输入以及输出
运行结果如下:
12
1 5 2 4 6 8 7 3 2 1 1 1
参考代码如下
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i, v0 = 0, v1 = 0, v2 = 0, v3 = 0, n, a[50];
printf ("请输入参加选举的人数:\n");
scanf ("%d",&n);
printf ("请输入 1 or 2 or 3\n");
for (i = 0; i < n; i++)
{
scanf ("%d", &a[i]);
}
for (i = 0; i < n; i++)
{
if (a[i] == 1)
{
v1++;
}
else if (a[i] == 2)
{
v2++;
}
else if (a[i] == 3)
{
v3++;
}
else
{
v0++;
}
}
printf ("选票结果是:\n");
printf ("第一位:%d\n第二位:%d\n第三位:%d\n无效票数:%d\n",v1, v2, v3, v0);
return 0;
}