/*聲明函數原型*/在函數「Calculate_Duty」:錯誤:嵌套功能被禁止,則使用-fnested函數以重新啓用
浮子Calculate_Duty(INT,INT);
void Print_Duty(float);
INT主(無效)
{
/*聲明所有變量在程序*/
炭more_to_process使用;
int origin,category,quantity,num_ship = 0;
float unit_price;
float cost,duty,total_ship = 0;
float total_duty = 0,tax_rate = 0;
/*開始執行該程序*/
的printf( 「你有更多的海關單據處理類型:Y(是)或N毫無\ n」);
scanf(「%c」,& more_to_process);
,而((more_to_process == 'Y')& &(more_to_process = 'N')!)
{
的printf(「這是什麼類型的商品的來源:1美國,中國2個,巴西3個\ n「);
scanf(「%d」,& origin); (「什麼類別的商品?類型:食品1,衣服2,木材3」);
scanf(「%d」,&類別);
printf(「數量是多少?\ n」);
scanf(「%d」,&數量);
printf(「什麼是單價?\ n 「);
的scanf(」 %F」,& UNIT_PRICE);
total_ship =量* UNIT_PRICE;
/*計算裝運的佔空*/
TAX_RATE = Calculate_Duty(產地,類);
佔空比= TAX_RATE * total_ship;
total_duty + =佔空比;
/*打印發貨的義務*/
的printf( 「原產地\ t類別\ t數量\ t單價\ t出貨\ t稅率\ t稅\ t \ n」);
printf(「%d \ t%d \ t \ t%d \ t \ t%02.f \ t \ t%0.2f \ t%0.2f \ t \ t%0.2f \ t \ n 「,產地,
類別,數量,單位價格,總計,稅率,稅率);
Print_Duty(duty); (「你是否有更多的海關表格可以處理?類型:Y表示是,N表示否)\ n」
scanf(「%c」,& more_to_process);
++ num_ship;
}
printf(「Transaction Summary:\ n」);
printf(「處理的裝運數量=%d \ n」,num_ship);
printf(「收集的總職責= $%0。2F \ n」個,total_duty);
返回0;
}
/*執行功能Calculate_Duty */
浮子Calculate_Duty(INT原點,INT類別)
{
float duty;
switch(o rigin)
{
/*案例1是用於US */
殼體1:
開關(類別)
{
殼體1:
duty = 0;
break;
情況2:
duty = 0;
break;
案例3:
duty = .05;
break;
}
break;
/*案例2是用於中國*/
殼體2:
開關(類別)
{
殼體1:
佔空比= 0.02;
break;
案例2:
duty = .03;
break;
案例3:
duty =。04;
break;
}
break;
/*案例3是用於巴西*/
殼體3:
開關(類別)
{
殼體1:
佔空比= 0.01;
break;
情況2:
duty = .02;
break;
案例3:
duty = .08;
break;
}
return duty;
}
/*執行Print_Duty函數*/
空隙Print_Duty(浮動佔空比)
{
的printf( 「應付金額爲$%0.2F \ n」 個, 義務);
}