将值排序为适当的组:计数器阵列

时间:2015-10-14 00:26:38

标签: c sorting counter

  #include <stdio.h>
  #include <stdlib.h> 
  #include <math.h>




int main(){

 int i;
 int sales[30]; 
 int arraySize = 0;
 int temp[10] = { 0 };

for (i = 0; i < 30; i++)
    {
        sales[i] = (rand() % 15000) + 1;        between 0 and 15000
    }


    printf("Gross Sales of all 30 Salespeople\n");


for (i = 0; i < 30; i++)
    {
        printf("%d\n", sales[i]);               //Displays Orginal List and Lists all values that were randomly selected
    }


printf("\nWage based on Gross Sales    \n");                        //Displays calculated wages with math equation


for (i = 0; i < 30; i++)
    {
        printf("%f\n", 100 + (float)sales[i] * 0.09);   //Mathematical equation
    }


for (i = 0; i < 30; i++)

while (arraySize >= 0)
{
    {
        if (sales[arraySize] >= 1000)
            temp[9]++;
        else if (sales[arraySize] >= 900)
            temp[8]++;
        else if (sales[arraySize] >= 800)
            temp[7]++;
        else if (sales[arraySize] >= 700)
            temp[6]++;
        else if (sales[arraySize] >= 600)
            temp[5]++;
        else if (sales[arraySize] >= 500)
            temp[4]++;
        else if (sales[arraySize] >= 400)
            temp[3]++;
        else if (sales[arraySize] >= 300)
            temp[2]++;
        else if (sales[arraySize] >= 200)
            temp[1]++;
        else
            temp[0]++;


        arraySize--;

        printf("\n");
        printf("$100-$199 : %d\n", temp[0]);
        printf("$200-$299 : %d\n", temp[1]);
        printf("$300-$399 : %d\n", temp[2]);
        printf("$400-$499 : %d\n", temp[3]);
        printf("$500-$599 : %d\n", temp[4]);
        printf("$600-$699 : %d\n", temp[5]);
        printf("$700-$799 : %d\n", temp[6]);
        printf("$800-$899 : %d\n", temp[7]);
        printf("$900-$999 : %d\n", temp[8]);
        printf(">>>$1000  : %d\n", temp[9]);

        break;
    }
}
return 0;

}

我正在制作一个程序,在一个数组中随机选择30个数字,然后在数字上使用数学方程式,然后根据每个组对数字进行排序。除了将它们分类到每个选择组之外,我已经能够使一切工作正常。我做错了什么,我该如何解决这个问题。顺便说一下,我对编程很新,所以非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

请试试这个:

  for ( i = 0; i < 30; i++ )
      {
          printf("\n sorting sales %d == %d " , i , sales[i] );

    if ( sales[i] >= 1000 )
      temp[9]++;
    else if ( sales[i] >= 900 && sales[i]<=999)
      temp[8]++;
    else if ( sales[i] >= 800 && sales[i]<=899)
      temp[7]++;
    else if ( sales[i] >= 700 && sales[i]<=799)
      temp[6]++;
    else if ( sales[i] >= 600 && sales[i]<=699)
      temp[5]++;
    else if ( sales[i] >= 500 && sales[i]<=599)
      temp[4]++;
    else if ( sales[i] >= 400 && sales[i]<=499)
      temp[3]++;
    else if ( sales[i] >= 300 && sales[i]<=399)
      temp[2]++;
    else if ( sales[i] >= 200 && sales[i]<=299)
      temp[1]++;
    else
      temp[0]++;

}

    printf( "\n" );
    printf( "$100-$199 : %d\n", temp[0] );
    printf( "$200-$299 : %d\n", temp[1] );
    printf( "$300-$399 : %d\n", temp[2] );
    printf( "$400-$499 : %d\n", temp[3] );
    printf( "$500-$599 : %d\n", temp[4] );
    printf( "$600-$699 : %d\n", temp[5] );
    printf( "$700-$799 : %d\n", temp[6] );
    printf( "$800-$899 : %d\n", temp[7] );
    printf( "$900-$999 : %d\n", temp[8] );
    printf( ">>>$1000  : %d\n", temp[9] );
  return 0;
}

//让我们做点什么       for(i = 0; i <30; i ++)       {           printf(&#34;在这里应用一些计算到%d \ n&#34;,sales [i]);       sales [i] = 100 +(float)sales [i] * 0.09; //数学方程式         printf(&#34;它变为%f \ n&#34;,(浮动)sales [i]);       }

protected Upload questionImageUpload = new Upload("Upload question", questionReceiver);