例38:有三個候選人,每個選民只能投給一個人,要求用C語言編一個統計選票的程式,先后輸入備選人的的名字,最后輸出各人的得票結果,
解題思路:需要設計一個結構陣列,陣列中包含3個元素,每個元素中的資訊應包括候選人的姓名和得票數,
源代碼演示:
#include<stdio.h>//頭檔案
#include<string.h>//引入strcmp
struct people//定義結構體變數
{
char name[20];//定義字符陣列
int number;//定義整型變數
} leader[3]={"li",0,"zhang",0,"sun",0}; /*陣列的定義和參考不一樣,把姓賦給陣列name 把0賦給 shu*/
int main()//主函式
{
int i,j;//定義整型變數
char leader_name[20];//定義字符陣列
for(i=1;i<10;i++)//for回圈,回圈9次
{
printf("請輸入人名\n");//提示陳述句
scanf("%s",leader_name);//鍵盤輸入名字
for(j=0;j<3;j++)
if(strcmp(leader_name,leader[j].name)==0)//比較兩個字串,如果名字相等
{
leader[j].number++;//票數加1
}
}
printf("結果是:\n");//提示陳述句
for(i=0;i<3;i++)//for回圈
{
printf("%s票數:%d\n",leader[i].name,leader[i].number);//輸出名字和票數
}
return 0;//主函式回傳值為0
}
編譯運行結果如下:
請輸入人名
li
請輸入人名
zhang
請輸入人名
sun
請輸入人名
sun
請輸入人名
li
請輸入人名
li
請輸入人名
li
請輸入人名
sun
請輸入人名
sun
結果是:
li票數:4
zhang票數:1
sun票數:4
--------------------------------
Process exited after 23.01 seconds with return value 0
請按任意鍵繼續. . .
C語言統計投票的結果
更多案例可以go公眾號:C語言入門到精通
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/237158.html
標籤:其他
