| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 615 人关注过本帖
标题:小小新手学习中的疑惑,请大神指错
只看楼主 加入收藏
龙勇
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2015-4-20
收藏
 问题点数:0 回复次数:10 
小小新手学习中的疑惑,请大神指错
程序代码:
#include<stdio.h>
int main (void)
{
  const float Revenue_Per_150=4.5f;
  short JanSold=23500;
  short FebSold=19300;
  short MarSold=21600;
  float RevQuarter=0.0f;

  long QuarterSold=JanSold+FebSold+MarSold;

  printf("\nStock sold in\n Jan: %d\n Feb: %d\n Mar: %d\n",
         JanSold,FebSold,MarSold);
  printf("\nTotal stock sold in first quarter: %ld",QuarterSold);
  RevQuarter=QuarterSold/150*Revenue_Per_150;
  printf("\nSales revenue this quarter is:$%.2f\n",RevQuarter);
  getch();
  return 0;
}
2015-04-20 19:22
S140131022
Rank: 2
来 自:重庆邮电大学
等 级:论坛游民
帖 子:205
专家分:35
注 册:2014-10-9
收藏
得分:0 
#include<stdio.h>
int main (void)
{
  const float Revenue_Per_150=4.5f;
  short JanSold=23500;
  short FebSold=19300;
  short MarSold=21600;
  float RevQuarter=0.0f;

  long QuarterSold=JanSold+FebSold+MarSold;

  printf("\nStock sold in\n Jan: %d\n Feb: %d\n Mar: %d\n",
         JanSold,FebSold,MarSold);
  printf("\nTotal stock sold in first quarter: %ld",QuarterSold);
  RevQuarter=QuarterSold/150*Revenue_Per_150;
  printf("\nSales revenue this quarter is:$%.2f\n",RevQuarter);
  getchar();              //这里是getchar()...
  return 0;
}

既然还有不甘心
就还没到放弃的时候~
2015-04-20 21:27
龙勇
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2015-4-20
收藏
得分:0 
回复 2楼 S140131022
那里不关事,那是TC指定用来暂停播放程序的,程序中要求把三个月的相加,求一季度的收入,可执行下来得到的是一个负数。我找不出原因。
2015-04-21 09:25
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
注意 short 的取值范围。

总有那身价贱的人给作业贴回复完整的代码
2015-04-21 10:19
龙勇
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2015-4-20
收藏
得分:0 
回复 4楼 embed_xuel
我查看了一下,都是在范围内的。
2015-04-21 11:15
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 5楼 龙勇
3个月加一起还在范围内吗?

总有那身价贱的人给作业贴回复完整的代码
2015-04-21 11:26
龙勇
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2015-4-20
收藏
得分:0 
回复 6楼 embed_xuel
long 的取值范围够这三个数加的呀。
2015-04-21 11:47
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:0 
short是%hd吧

一片落叶掉进了回忆的流年。
2015-04-21 12:47
我爱吃青菜
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:6
帖 子:190
专家分:500
注 册:2015-3-29
收藏
得分:0 
6楼说的对
就像float i = int a / int b,a/b会先算出一个int型,再传给float。你的三个short相加会先得一个short,溢出了
2015-04-21 13:02
龙勇
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2015-4-20
收藏
得分:0 
回复 8楼 诸葛欧阳
感谢!
2015-04-23 09:56
快速回复:小小新手学习中的疑惑,请大神指错
数据加载中...
 
   



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

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