i的值增加后成本价变为0

问题描述 投票:0回答:1

我一直在尝试执行以下代码。.但是,我一直得到相同的错误结果,我不知道为什么!我的代码

int main()
{
        char* sel_items[15]={"apple","ball","keyboard","mouse"};   /*Selling items*/
        float sel_profit[15];         /*Selling Profit*/
        float sel_price[15];          /*Selling Price*/
        float cost_price[15];        /*Original Price*/
        int i;
        for(i=0;i<4;i++)
        {                                                                                                                                                                                                                                                     printf("\n\t\t\tENTER %s PRICE: ",sel_items[i]);
                scanf("%f",sel_price);                           /*Selling Price input here*/
                printf("\n\t\t\tENTER %s SELLING PROFIT :",sel_items[i]);  
                scanf("%f",sel_profit);                          /*Selling Profit input here*/
                cost_price[i]=sel_price[i]*sel_profit[i]/100;        /*Original Price*/
                printf("\n\t\t\t\t\tORIGINAL PRICE : %f",cost_price[i]);
     }
return 0;
}

这是程序的输出。

                    *ENTER apple PRICE: 50*

                    ENTER apple SELLING PROFIT :50

                                    ORIGINAL PRICE : 25.000000   /*the loop of first item is coorect*/
                    ENTER ball PRICE: 100

                    ENTER ball SELLING PROFIT :20

                                    ORIGINAL PRICE : 0.000000 /*i dont know what happens in the second loop*/
                    ENTER keyboard PRICE: 56

                    ENTER keyboard SELLING PROFIT :3

                                    ORIGINAL PRICE : -0.000000
                    ENTER mouse PRICE: 244

                    ENTER mouse SELLING PROFIT :4

                                    ORIGINAL PRICE : 0.000000*

通过循环为我提供帮助。当执行第一个循环时,条件变为真,所有相应的指令都将执行,但是在第二个循环后,我不知道会发生什么。请帮忙..

c arrays loops
1个回答
0
投票

您的sel_pricesel_profit是数组,在循环中,您像访问变量一样访问它们,这是错误的。您的for循环应该像这样:-

 for(i=0;i<4;i++)
    {                                                                                                                                                                                                                                                     
            printf("\n\t\t\tENTER %s PRICE: ",sel_items[i]);
            scanf("%f",&sel_price[i]);                           /*Selling Price input here*/
            printf("\n\t\t\tENTER %s SELLING PROFIT :",sel_items[i]);  
            scanf("%f",&sel_profit[i]);                          /*Selling Profit input here*/
            cost_price[i]=sel_price[i]*sel_profit[i]/100;        /*Original Price*/
            printf("\n\t\t\t\t\tORIGINAL PRICE : %f",cost_price[i]);
    }
© www.soinside.com 2019 - 2024. All rights reserved.