程序好多运行错误,请高手指点

来源:百度知道 编辑:UC知道 时间:2024/05/05 00:17:18
第一:打折好象不对
第二:卡号,密码没有要我输

程式如下:
/*买东西,打折,刷卡,密码……*/
#include <stdio.h>
#include <stdlib.h>
void main()
{
char bh; //编号
int dj; //单价
int sl; //数量
char jz; //结帐
int CardID; //卡号
int password; //密码
double money; //总金额
printf("A.铅笔--¥2\n");
printf("B.圆珠笔--¥3\n");
printf("C.钢笔--¥4\n");

printf("请输入购买商品编号:\n");
scanf("%c",&bh);
if (bh == 'A')
{
dj = 2;
}
else if (bh == 'B')
{
dj = 3;
}
else if (bh == 'C')
{
dj = 4;
}

printf("请输入购买的数量:\n");
scanf("%d",&sl);

money=dj*sl;

if(money<=20)
{
money=dj*sl;
}

else if(money>20 && money<50)
{
money=dj*sl*0.99;
}
else if(money

语法错误有两个:

1.
else(jz == 'B');
{
printf("请用现金\n");
}

应改为

else if (jz == 'B')
{
printf("请用现金\n");
}

2.
程序末尾缺少一个大括号。

你说的不接受卡号、密码输入:

printf("请选择结帐方式<A.刷卡 B.现金>\n");
scanf("%c",&jz);

改为:

printf("请选择结帐方式<A.刷卡 B.现金>\n");
fflush(stdin);
scanf("%c",&jz);

完整程序:

#include <stdio.h>
#include <stdlib.h>
void main()
{
char bh; //编号
int dj; //单价
int sl; //数量
char jz; //结帐
int CardID; //卡号
int password; //密码
double money; //总金额
printf("A.铅笔--¥2\n");
printf("B.圆珠笔--¥3\n");
printf("C.钢笔--¥4\n");

printf("请输入购买商品编号:\n");
scanf("%c",&bh);
if (bh == 'A')
{
dj = 2