| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1913 人关注过本帖
标题:[求助]作业。根据用户输入的购买数量给予不同的折扣,输出应付金额
只看楼主 加入收藏
绿色沙洲
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-10
收藏
 问题点数:0 回复次数:10 
[求助]作业。根据用户输入的购买数量给予不同的折扣,输出应付金额
#include <stdio.h>
void main()
{
int amount,x;
float dj;
double rate;
printf("请你输入商品的数量,商品的单价:,\n");
scanf("%d%d%f%lf",&amount,&x,&dj,&rate);
if (x<5){
rate=0;
printf("\n %d*%f=%f",amount,dj,amount*dj);
}else if ((x>=5)&&(x<10)){
rate=0.01;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else if ((x>=10)&&(x<20)){
rate=0.02;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else if ((x>=20)&&(x<30)){
rate=0.04;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else {
rate=0.06;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}

}




某商场打折促销商品,购买某种商品根据购买数量给予不同的折扣,根据用户输入的购买商品的数量及该商品的单价,输出用户应付的金额

不知道是不是算法不对.
程序编译没有问题..但是就是按CTRL+F5程序还是不能够计算
就给我输入两个数字后就没有反映,
搜索更多相关主题的帖子: amount rate 折扣 
2007-08-10 15:47
viky2003
Rank: 5Rank: 5
等 级:职业侠客
帖 子:375
专家分:383
注 册:2007-4-11
收藏
得分:0 
以下是引用绿色沙洲在2007-8-10 15:47:25的发言:
#include <stdio.h>
void main()---------------------用int
{
int amount,x;
float dj;
double rate;
printf("请你输入商品的数量,商品的单价:,\n");
scanf("%d%d%f%lf",&amount,&x,&dj,&rate);
if (x<5){
rate=0;
printf("\n %d*%f=%f",amount,dj,amount*dj);
}else if ((x>=5)&&(x<10)){-------------------||以下都个成或!
rate=0.01;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else if ((x>=10)&&(x<20)){
rate=0.02;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else if ((x>=20)&&(x<30)){
rate=0.04;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else {
rate=0.06;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}

}




某商场打折促销商品,购买某种商品根据购买数量给予不同的折扣,根据用户输入的购买商品的数量及该商品的单价,输出用户应付的金额

不知道是不是算法不对.
程序编译没有问题..但是就是按CTRL+F5程序还是不能够计算
就给我输入两个数字后就没有反映,


要练习算法就来http:///!!有挑战哦!!
2007-08-10 15:50
viky2003
Rank: 5Rank: 5
等 级:职业侠客
帖 子:375
专家分:383
注 册:2007-4-11
收藏
得分:0 
以下是引用viky2003在2007-8-10 15:50:05的发言:

搞错了,不好意思!!我再看看


要练习算法就来http:///!!有挑战哦!!
2007-08-10 15:52
viky2003
Rank: 5Rank: 5
等 级:职业侠客
帖 子:375
专家分:383
注 册:2007-4-11
收藏
得分:0 
以下是引用绿色沙洲在2007-8-10 15:47:25的发言:
#include <stdio.h>
void main()----------------------int
{
int amount,x;
float dj;
double rate;
printf("请你输入商品的数量,商品的单价:,\n");
scanf("%d%d%f%lf",&amount,&x,&dj,&rate);-----------不需要输入rate
if (x<5){
rate=0;
printf("\n %d*%f=%f",amount,dj,amount*dj);
}else if ((x>=5)&&(x<10)){
rate=0.01;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);------%d*%f*%lf应该是%lf吧!!
}else if ((x>=10)&&(x<20)){
rate=0.02;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else if ((x>=20)&&(x<30)){
rate=0.04;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else {
rate=0.06;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}
----------------------------------------------------------return 0;
}




某商场打折促销商品,购买某种商品根据购买数量给予不同的折扣,根据用户输入的购买商品的数量及该商品的单价,输出用户应付的金额

不知道是不是算法不对.
程序编译没有问题..但是就是按CTRL+F5程序还是不能够计算
就给我输入两个数字后就没有反映,


要练习算法就来http:///!!有挑战哦!!
2007-08-10 15:55
绿色沙洲
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-10
收藏
得分:0 

是这个么?????


2007-08-10 16:04
绿色沙洲
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-10
收藏
得分:0 
第一我的作业上括号本来就有的,可能没有复制上来.不好意思
第二.我把rate dele了
第三我把等于号后面的改成了%lf
最后,题目的要求是
x<5
5<=x<10
10<=x<20
20<=x<30
30<=x
所以是不是不能改成或啊


最后还是不对啊

2007-08-10 16:11
viky2003
Rank: 5Rank: 5
等 级:职业侠客
帖 子:375
专家分:383
注 册:2007-4-11
收藏
得分:0 
以下是引用绿色沙洲在2007-8-10 15:47:25的发言:
#include <stdio.h>
void main()
{
int amount,x;
float dj;
double rate;
printf("请你输入商品的数量,商品的单价:,\n");
scanf("%d%d%f%lf",&amount,&x,&dj,&rate);
if (x<5){
rate=0;
printf("\n %d*%f=%f",amount,dj,amount*dj);
}else if ((x>=5)&&(x<10)){
rate=0.01;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);--------------------四个%,当时只有三个参数
}else if ((x>=10)&&(x<20)){
rate=0.02;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);--------同上
}else if ((x>=20)&&(x<30)){
rate=0.04;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}else {
rate=0.06;
printf("\n %d*%f*%lf=%f",amount,dj,amount*dj*rate);
}

}




某商场打折促销商品,购买某种商品根据购买数量给予不同的折扣,根据用户输入的购买商品的数量及该商品的单价,输出用户应付的金额

不知道是不是算法不对.
程序编译没有问题..但是就是按CTRL+F5程序还是不能够计算
就给我输入两个数字后就没有反映,

还有就是amount*dj*rate的数据类型,你最好和前面的匹配!!用(double)强制转化一下吧!!


要练习算法就来http:///!!有挑战哦!!
2007-08-10 16:31
Maltase
Rank: 1
等 级:新手上路
帖 子:105
专家分:0
注 册:2007-8-7
收藏
得分:0 
[CODE]#include<stdio.h>
void main()
{
float a;
int c;
printf("本商场甩卖商品,要抢乘现在!\n");
printf("输入您购买的数量和应付的价格:");
scanf("%d%f",&c,&a);
if(c>5)
{
if(c<10)
printf("购买的数量是%d,享受1折的优惠,应付%.2f\n",c,a-a*0.01);
else if(c<20)
printf("购买的数量是%d,享受2折的优惠,应付%.2f\n",c,a-a*0.02);
else if(c<30)
printf("购买的数量是%d,享受2折的优惠,应付%.2f\n",c,a-a*0.04);
else
printf("购买的数量是%d,享受6折的优惠,应付%.2f\n",c,a-a*0.06);
}
else
printf("购买的数量是%d,不享受优惠,应付%.2f\n",c,a);
}[/CODE]

这样应该简单点吧。。。跟我们书上的题目一样。。。难道是我们班上的MM?

读书....努力读书.....
2007-08-10 16:56
liulanghan
Rank: 1
等 级:禁止访问
帖 子:104
专家分:0
注 册:2007-5-5
收藏
得分:0 
貌似楼上的对你们班的MM很 ....
2007-08-10 19:27
绿色沙洲
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-8-10
收藏
得分:0 
谢谢  Maltase  他的答案是对的

2007-08-10 21:14
快速回复:[求助]作业。根据用户输入的购买数量给予不同的折扣,输出应付金额
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019581 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved