在我的功課,我被要求寫同時使用if和switch語句比較由客戶對以下細節支付的淨額程序編譯器拋出一個錯誤情況下,標籤不降低恆定
購買金額(100-200),然後給5%的折扣。
購買金額(200-500),然後給7.5%的折扣。
購買金額(500-800),然後給予10%的折扣。
購買金額(1000以上),然後給予15%的折扣。
這是我能想出的,但同時compliling它給我的錯誤,如
第10行:錯誤:案件標籤不降低到整型常量 13號線:錯誤:案件標籤不減少到整數常量 第17行:錯誤:':'標記之前的預期表達式。 任何人都可以請幫助我這個。我不是正確遵循了問題或者有別的東西,我做錯了
#include<stdio.h>
main()
{
int pa = 200;
float net;
printf("\n Enter purchased amount");
scanf("%d",&pa);
switch(pa)
{
case 1&&pa<=100:
net=pa;
break;
case pa>=101&&pa<=200:
net=pa-(5.00/100.00)*pa;
break;
default:
if(pa>=201&&pa<=500)
net=pa-(7.5/100.00)*pa;
if(pa>=501&&pa<=800)
net=pa-(10.00/100.00)*pa;
if(pa>=1000)
net = pa - (15.00/100.00)*pa;
break;
}
printf("\n the net amount to be paid is%f",net);
getch();
}
感謝您的回答。如果case標籤不需要保持不變,那麼如何使用if和switch語句來編寫這個程序?我有點困惑。 – user2995168
你想用if和case編寫這個程序嗎? – 2013-11-15 07:13:25
是的,這就是問題告訴我的。 – user2995168