| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 908 人关注过本帖
标题:为什么我的折扣那项是乱数,我想输入 8 的
只看楼主 加入收藏
qq604911716
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-9-26
结帖率:100%
收藏
 问题点数:0 回复次数:10 
为什么我的折扣那项是乱数,我想输入 8 的
程序代码:
#include <stdio.h>
void main()
{
    int a=245,b=570,c=320,d=2,e=1,f=1,g,h,i,k;
    printf("\t表一:\t购物清单\n");
    printf("---------------------\n");
    printf("商品\t单价\t个数\n");
    printf("---------------------\n");
    printf("T恤\t%d\t%d\n",a,d);
    printf("网球鞋\t%d\t%d\n",b,e);
    printf("网球拍\t%d\t%d\n",c,f);
    printf("---------------------\n");
    printf("折扣:%d\n",g);
    scanf("%d",&g);
    printf("消费总金额\t¥:%f\n",(float)h);
    h=a*d+b*e+c*f;
    printf("实际交费:%f\n",i);
    scanf("%d\n\n",&i);
    printf("找钱:%f",k);
    k=i-h*0.8;

}


[ 本帖最后由 qq604911716 于 2014-10-9 16:30 编辑 ]
搜索更多相关主题的帖子: include 折扣 
2014-10-09 15:14
snrtjat
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:山那边 海尽头
等 级:贵宾
威 望:22
帖 子:1115
专家分:7025
注 册:2013-1-21
收藏
得分:0 
此处是VB6论坛。

不怕错误,只怕知错不改.
2014-10-09 16:25
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
程序代码:
    printf("折扣:%d\n",g);              /*       先显示了内容,这时 g 无初始化  */
    scanf("%d",&g);                 /* 输入G,已显示过了,输入的无显示了 */
    printf("消费总金额\t¥:%f\n",(float)h);            /* h 是 int ,强制转化为 float 有什么用呢,小数部分没有就是没有。h也没有值,和上面的一行,反掉了。*/
    h=a*d+b*e+c*f;                   
    printf("实际交费:%f\n",i);             /* i 也是 int ,使用 %f 输出,错误吧。 */
    scanf("%d\n\n",&i);              /* 输入 i ,与上面一行,反掉了。*/
    printf("找钱:%f",k);             /* k 也是 int ,使用 %f 输出。 */
    k=i-h*0.8;                       /*计算k 。与上面一行,同样反掉了。*/

授人于鱼,不如授人于渔
早已停用QQ了
2014-10-10 00:49
BuilderZ
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:82
专家分:123
注 册:2014-9-22
收藏
得分:0 
错误好多,主要是逻辑顺序,慢慢讲
程序代码:
#include <stdio.h>
void main()
{
    int a=245,b=570,c=320,d=2,e=1,f=1,g,h,i,k;
    printf("\t表一:\t购物清单\n");
    printf("---------------------\n");
    printf("商品\t单价\t个数\n");
    printf("---------------------\n");
    printf("T恤\t%d\t%d\n",a,d);
    printf("网球鞋\t%d\t%d\n",b,e);
    printf("网球拍\t%d\t%d\n",c,f);
    printf("---------------------\n");
    scanf("%d",&g)  \\先输入后输出,否则无值得函数输出的是其类型的正数最大范围\\
    printf("折扣:%d\n",g);
    h=a*d+b*e+c*f;  \\和上面错误相似\\
    printf("消费总金额\t¥:%f\n",(float)h);
    printf("实际交费:%f\n",i);
    scanf("%d\n\n",&i);
    k=i-h*0.8;  \\也不用说了吧\\
    printf("找钱:%f",k);
}
2014-10-10 05:44
BuilderZ
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:82
专家分:123
注 册:2014-9-22
收藏
得分:0 
此外的一些类型转换(不是你想转换的吧)楼上已经讲了
2014-10-10 05:45
古道风
Rank: 2
等 级:论坛游民
帖 子:12
专家分:17
注 册:2013-9-16
收藏
得分:0 
#include <stdio.h>
#include<math.h>
void main()
{
    int a=245,b=570,c=320,d=2,e=1,f=1,g,h,i;
    float k;
    printf("\t表一:\t购物清单\n");
    printf("---------------------\n");
    printf("商品\t单价\t个数\n");
    printf("---------------------\n");
    printf("T恤\t%d\t%d\n",a,d);
    printf("网球鞋\t%d\t%d\n",b,e);
    printf("网球拍\t%d\t%d\n",c,f);
    printf("---------------------\n");
    scanf("%d",&g);  
    printf("折扣:%d折\n",g);
    h=a*d+b*e+c*f;
    printf("消费总金额\t¥:%0.2f\n",(float)h);
    scanf("%d",&i);
    printf("实际交费:%0.2f\n",(float)i);
    k=(float)i-h*(float)g*0.1;
    printf("找钱:%0.2f",k);
}
2014-10-10 10:52
古道风
Rank: 2
等 级:论坛游民
帖 子:12
专家分:17
注 册:2013-9-16
收藏
得分:0 
注意变量的数据类型与转换
2014-10-10 10:53
qq604911716
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-9-26
收藏
得分:0 
回复 6 楼 古道风
谢谢!
2014-10-11 19:53
qq604911716
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-9-26
收藏
得分:0 
回复 4 楼 BuilderZ
谢谢!!谢谢!!
2014-10-11 20:02
qq604911716
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-9-26
收藏
得分:0 
回复 3 楼 风吹过 b
谢谢!!谢谢!!谢谢!!
2014-10-11 20:02
快速回复:为什么我的折扣那项是乱数,我想输入 8 的
数据加载中...
 
   



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

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