c - 使用二维数组和循环的 c++ 中未显示的百分比

标签 c arrays

<分区>

这是我的代码,请帮帮我,百分比显示 0.00 而不是我想要的。

我想计算百分比,你会通过下面的代码知道这一点......

#include<stdio.h>
#include<conio.h>

int main()
{
int marks[2][3]={80,70,50,90,50,60};
int total[2]={0,0};
float per[2]={0.0f,0.0f};

for (int x=0;x<2;x++)
{
for(int y=0;y<3;y++)
{
printf("[%d][%d]=%d\t",x,y,marks[x][y]);
total[x]=total[x]+marks[x][y];
per[x]=total[x]/300*100;
}

printf("total [%d]=%d",x,total[x]);
printf("\n\npercentage [%d]=%2.2f \n",x,per[x]);
putchar('\n');
}

getch();
return 0;

}

最佳答案

在表达式中

total[x]/300*100

所有涉及的值都是整数,因此结果在分配给 float 组条目之前被截断。

改为例如

total[x]/300.0f*100.0f

关于c - 使用二维数组和循环的 c++ 中未显示的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26098656/

相关文章:

python - 如何对两个数组进行排序以获得平滑度

javascript - 基于对象数组创建垂直列表

c# - 数组作为属性。寻找更简单的方法来填充数组

ios - Swift 中的像素数组到 UIImage

C read() 和 write() while 循环

java - 为什么 GetMethodID() 对不存在的方法不返回 NULL?

c - 如何检查我打开的文件是 block 设备还是字符设备?

c - 带标记和空间奇偶校验的串行通信

c - pow() 是否适用于 C 中的 int 数据类型?

Javascript - 具有共同父属性的对象的集合