哪错了,编译器通不过。
提示21行和23行有错误
//electric.c 计算用电帐目
#include <stdio.h>
#define RATE1 0.12589 //第一个360kwh的费率
#define RATE2 0.17901 //下一个320kwh的费率
#define RATE3 0.20971 //超过680kwh的费率
#define BREAK1 360.0 //费率的第一个分界点
#define BREAK2 680.0 //费率的第二个分界点
#define BASE1 (RATE1 * BREAK1) //用电360kwh的费用
#define BASE2 (BASE1 + (RATE2 * (BREAK2 - BREAK1))) //用电680kwh的费用
int main (void)
{
double kwh; //用电的千瓦小时数
double bill; //费用
printf("Please enter the kwh used.\n");
scanf("%lf",&kwh);
if(kwh <= BREAK1)
bill = RATE1 * kwh;
else if(kwh <= BREAK2) //用电量在360kwh和680kwh之间时程
bill = BASE1 + (RATE2 * (kwh - BREAK1)); //第21行
else //用电量超出680kwh时
bill = BASE2 + (RATE3 * (kwh - BREAK2)); //第23行
printf("The charge for %.1f kwh is $%1.2f.\n",kwh,bill);
return 0;
}
[解决办法]
楼主,看下你的宏BASE1,其括号是中文字符,改成英文字符就ok了,细心就ok了
[解决办法]
下列语句中的"()"写成全角中文的“()”,过程半角英文的括号,编译通过。
这是个很简单的问题,多编程序就知道了。
#define BASE1 (RATE1 * BREAK1) //用电360kwh的费用