char poste[]={'A','P','A','P','A','O','P','P','O'};
int nbCafe[]={3,5,2,1,7,1,0,3,2};
int progonly=0;
float progmoyenne=0;
for(i=0;i<9;i++){
if (poste[i]=='P'){
progonly+=nbCafe[i];
progmoyenne=progonly/4.0;}
printf("%f\n",progmoyenne);}
执行给出了这个。(最后一行是平均喝咖啡):
0.000000
0.000000
0.000000
0.000000
0.000000
0.250000
0.250000
1.000000
2.250000
答案 0 :(得分:0)
如果您只想显示平均值,则只需打印平均值即可。将printf移到for循环之外。
for(i=0;i<9;i++)
{
if (poste[i]=='P')
{
progonly+=nbCafe[i];
progmoyenne=progonly/4.0;
}
}
printf("%f\n",progmoyenne);
答案 1 :(得分:0)
将printf
放在for
循环之外。也请使用int i;
答案 2 :(得分:0)
试试这个:
for(cnt=i=0;i<9;i++){
if (poste[i]=='P'){
progonly+=nbCafe[i];
progmoyenne=progonly/(float)++cnt;
printf("%f\n",progmoyenne);
}
}
输出:
$ ./a.out
5.000000
3.000000
2.000000
2.250000