C 如何为数组中的数字范围设置显示值?

C 如何为数组中的数字范围设置显示值?,c,C,本质上,我有一个形式为(20,20)的矩阵。此数组中的数字范围为0到2.00,我的目标是为特定范围设置显示值(即0-0.4将显示为“1”,0.4-0.8将显示为“2”…1.6-2.0将显示为“5”) 然而,我正在努力实现这一目标,我在这一特定部分的代码如下: //set display values for classification map { if(rawData[rowIndex][columnIndex]<=0.4)

本质上,我有一个形式为(20,20)的矩阵。此数组中的数字范围为0到2.00,我的目标是为特定范围设置显示值(即0-0.4将显示为“1”,0.4-0.8将显示为“2”…1.6-2.0将显示为“5”) 然而,我正在努力实现这一目标,我在这一特定部分的代码如下:

    //set display values for classification map
        {
            if(rawData[rowIndex][columnIndex]<=0.4)
                printf("1");
            else if(rawData[rowIndex][columnIndex]<=0.8)
                printf("2");
            else if(rawData[rowIndex][columnIndex]<=1.2)
                printf("3");
            else if(rawData[rowIndex][columnIndex]<=1.6)
                printf("4");
            else if(rawData[rowIndex][columnIndex]<=2.0)
                printf("5");
            else printf("ERROR");
        }
        printf("\n");
    }
}
//设置分类图的显示值
{
如果(rawData[rowIndex][columnIndex]那么:

int value;
if ( rawData[rowIndex][columnIndex] > 2.0 
   || rawData[rowIndex][columnIndex] < 0) {
   printf("ERROR");
} else {
  value = (int)ceil(rawData[rowIndex][columnIndex]/0.4);
  if ( value == 0 )
     value = 1;
  printf("%d", value);
}
int值;
如果(原始数据[rowIndex][columnIndex]>2.0
||原始数据[rowIndex][columnIndex]<0){
printf(“错误”);
}否则{
值=(int)ceil(原始数据[rowIndex][columnIndex]/0.4);
如果(值==0)
数值=1;
printf(“%d”,值);
}

您的代码有什么问题?您的输入、预期输出和实际输出是什么?@SouravGhosh这两者之间有什么关系?@Nelxiost抱歉?什么不相关?这是关于FP数学的,对吗?类似的,是的,尽管特定的输入、预期输出和实际输出是错误的。我建议使用
ceil()
而不是添加一个,并为零创建一个特例。