編程統計候選人票數。其中有3名候選人分別為li、zhang和wang,共有10名選舉人參加選舉。
程式分析:由于候選人共含有兩個不同型別的資料項--票數與姓名,有多名候選人,所以使用結構體資料組。首先定義結構體陣列,再通過回圈分別接收選舉人投票資訊--候選人姓名,同時將選舉人投票資訊逐一與候選人姓名比較(二重回圈),并分別使用不同的計數器進行計數,最后通過回圈分別輸出候選人姓名及選票數。
uj5u.com熱心網友回復:
你就按照這個要求一步一步來做就可以uj5u.com熱心網友回復:
代碼不長,代參考
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct Candidate
{
char name[20];
int total;
}candidate;
int main()
{
candidate carray[3] = {{"li", 0}, {"zhang", 0}, {"wang", 0}};
int i;
char str[20];
for (i=0; i<10; i++)
{
printf("輸入候選人的姓名:\n");
scanf("%s", str);
if (strcmp(str, carray[0].name) == 0)
carray[0].total++;
else if (strcmp(str, carray[1].name) == 0)
carray[1].total++;
else if (strcmp(str, carray[2].name) == 0)
carray[2].total++;
}
for (i=0; i<3; i++)
{
printf("姓名:%s\t, 票數:%d\n", carray[i].name, carray[i].total);
}
getchar();
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/41214.html
標籤:C語言
