回覆列表
  • 1 # 使用者3916807372217

    首先我講一下,你的Caculate()函數里面所用到的price變數沒有定義,因此會提示識別符號price沒有定義。。。

    其次{程式碼塊}這是定義了一個塊所以它裡面的變數只能在塊裡面用,這樣的變數稱之為區域性變數,而你所定義的price在main函式塊裡,所以在你的Caculate()函式塊不能用

    #include

    float price=0; /*可以在這個位置定義一個全域性變數*/

    int main(){

    int Caculate();

    int choice;

    int off=0;

    choice=price/100;

    switch(choice){

    case 0: off=0; break;

    case 1:

    case 2: off=1; break;

    case 3:

    case 4:

    case 5: off=2; break;

    case 6:

    case 7:

    case 8:

    case 9:

    case 10:off=3; break;

    }

    price=price*(10-off)/10;

    printf("The final price is %10.2f",price);

    return 0;

    }

    int Caculate(){

    /*或者在這個位置定義一個float price*/

    do{

    scanf("%f",&price);

    price+=price;

    }

    while(price!=0.0);

    return(price);

    }

  • 中秋節和大豐收的關聯?
  • 如何修改linux計算機名?