題目要求
有3個候選人,10個選民,每個選民只能投票選一人,要求編一個統計選票的程序,先後輸入被選人的名字,最後輸出各人得票結果。
思路分析
有一說一,如果題目沒有明確給出要求,說要計算棄權的人數,就別把簡單的問題複雜化,就別畫蛇添足的,算什麼棄權的人什麼鬼的,平時自己練習的時候,可以這麼補充,但是,就題論題,就老老實實做題,把題目作對,代碼寫好,就已經非常棒了
- 得輸入候選人的的名字
- 統計候選人的票數
- 輸出展示候選人的票數
代碼演示
#include<stdio.h>
#include<string.h>
struct P //聲明結構體類型
{
char name[20]; //候選人名字
int count; //候選人票數
}leader[3]={"li",0,"ren",0,"hu",0}; //定義結構體數組並初始化,這裏的名字都是可以自定義的,如果題目有明確要求就按題目要求定義
int main()
{
int i,j;
char leader_name[20];
printf("請輸入候選人名字:\n");
for(i=0;i<10;i++)
{
scanf("%s",leader_name); //輸入選民的選的人的名字
for(j=0;j<3;j++)
{
if(strcmp(leader_name,leader[j].name)==0)
{
leader[j].count++;
}
}
}
printf("統計結果爲:\n");
for(j=0;j<3;j++)
{
printf("%s=%d\n",leader[j].name,leader[j].count); //輸出候選人的票數
}
return 0;
}