宅男噜噜噜666在线观看,国产1区二区三区,国产日韩欧美大片,国产超碰97,国产自产视频,99久久国产综合精品色伊,亚洲午夜高清

軟題庫 學(xué)習(xí)課程
當(dāng)前位置:信管網(wǎng) >> 在線考試中心 >> 試題查看
試題題型【分析簡答題】
試題內(nèi)容

試題三(共15分)
閱讀以下說明和C代碼,填補(bǔ)C代碼中的空缺(1)~(5),將解答寫在答題紙的對應(yīng)欄內(nèi)。
【說明】
某市在進(jìn)行市長選舉,該市共分為M個(gè)選區(qū)(1
現(xiàn)已將選票數(shù)據(jù)存入文本文件data.txt,該文件內(nèi)容格式如下:共有M行,每行N+1個(gè)整數(shù),第一個(gè)整數(shù)為選區(qū)編號,隨后為N個(gè)候選者在該選區(qū)所得票數(shù)。
下面的程序先從文件中讀入選票數(shù)據(jù)存入二維數(shù)組data,然后完成下列功能:
a.計(jì)算并顯示每個(gè)競選者獲得的選票數(shù)及占總選票數(shù)的百分比;
b.如果任一競選者獲得的選票數(shù)超過總票數(shù)的50%,則顯示競選者獲勝;
c.如果沒有競選者獲得總選票數(shù)的50%以上,則顯示兩位得票最高的競選者需再進(jìn)行決選。
在下面的程序代碼中,競選者A的編號為1,競選者B的編號為2,以此類推。
【C代碼】
#include
#include
#define M 5      /*選區(qū)數(shù)*/
#define N 4      /*競選者人數(shù) */

int main(int argc, char argv[ ] )
{
FILE *fin;
int data[M+1] [N+1];
/*data[ ][0]存放選區(qū)編號,data[M][J]存放j號競選者得票總數(shù)*/
int MAXP1,cdl;      /*MAXP1、cd1存放得票最多者的票數(shù)和競選者編號*/
int MAXP2,cd2;      /*MAXP2、cd2存放得票次多者的票數(shù)和競選者編號*/
int i,j, totalP;        /*tatalp存放總票數(shù)*/

fin=fopen("data.txt","r");
if(!fin)return -1;
i=0;  j=0;
while(!feof(fin)){                       /* 從文件讀入數(shù)據(jù) */
fscanf(fin,”%d”,&data[i][j]);
(1);
if(j>N)  {j=0;i++;}
}
fclose(fin);

totalP =0;MAXP1=0;MAXP2=0;cd1=0;cd2=0;

for(j=1;j data[M][j]=(2);                       /* 設(shè)置競選者得票總數(shù)初始值 */
for(i=0;i data[M][j] +=data[i][j];
if(data[M][j]>MAXP1)    {
(3); cd2=cd1;
MAXP1=data[M][j]; cd1=j;
}
else
if(data[M][j]> MAXP2){ MAXP2=data[M][j];cd2=j;}
(4);                                       /* 計(jì)算總票數(shù) */
}

for(j=1;j printf("Candidate-%c:%d   ",j+'A'-1,data[M][j]);
printf("%.2lf\n",(double)data[M][j]/totalP);
}
printf("\n");
if((5)>0.5)              /* 判斷得票數(shù)最多者的得票率 */
printf("Winner:Candidate-%c\n",cd1+'A'-1);
else
printf("Result : Candidate-%c PK Candidate-%c\n",cd1+'A'-1,cd2+'A'-1);
system("pause");
return 0;
}

查看答案

相關(guān)試題