满意答案

seld

2013.08.10

采纳率:44%    等级:8

已帮助:61人

没大问题呀,就是

d=d+a[i]*b[i];}

后面多了一个“}”,去掉就可以运行了。

d=(d*100+0.5)/100的本意是对的,但是会结果不对,至少得改为:

d=(int)(d*100+0.5)/100.0f,结果才可能理解,否则输出时对整数会多出一个从0.005舍入得到的.01来。因为在“%10.2f“格式时printf会自动对小数点后第3位进行舍入操作,所以这一步应该去掉为好。

输入时注意输入格式,品名 数量 单价之间都用空格分开,不能用别的。

没说总的项数,可以用输入的数量或单价作为结束标志,比如输入-1时就结束循环:

do {...} while(a[i]<0 || b[i] <0)。

其实这里的a和b都不需要用数组,因为就输入时用一次,直接设为普通变量就够了;c保存输入的品名,在程序中完全没有用到,根本不用输入的。就是说,最后代码可以这样写:

int main()

{

int i=0,a;

float b,d=0;

while(1)

{

scanf("%f%d",&b,&a);

if ( a == -1 ) break;

d=d+a*b;

}

printf("%10.2f",d);

return 0;

}追问: d=(int)(d*100+0.5)/100.0; 当中

加int是把哪一部分强制准换?

追答:  是把(d*100+0.5)这一部分转换为整型,把小数部分丢弃。然后除以float型的常数“100.0f”(注意最后有个"f",否则默认是double型的,编译时会得到警告)时,再把整数转换为float然后做除法。

比如d=0.005时,(int)(d*100+0.5)/100.0f =(int)(0.005*100+0.5)/100.0f=1/100.0f=0.01

比如d=0.008时,(int)(d*100+0.5)/100.0f =(int)(1.3)/100.0f=1/100.0f=0.01

否则,如果d=0时,(d*100+0.5)/100 =0.5/100=0.005,这是一个double型的值,因为0.5被认为是double型的。这个结果按%10.2f格式输出时就变成0.01了。

00分享举报

c语言求商品的总价程序,C语言简单问题,求商品总价。。在线急等大神解答相关推荐

  1. c语言矩阵的逆的程序,C语言求矩阵的逆矩阵

    <C语言求矩阵的逆矩阵>由会员分享,可在线阅读,更多相关<C语言求矩阵的逆矩阵(12页珍藏版)>请在人人文库网上搜索. 1.C语言求矩阵的逆矩阵班级: 自动化1604小组成员: ...

  2. matlab运行后没反映,这个matlab程序运行没反应是怎么回事?在线急等

    这个matlab程序运行没反应是怎么回事?在线急等 关注:77  答案:2  手机版 解决时间 2021-02-10 04:27 提问者失夜久伴你 2021-02-09 19:46 function ...

  3. matlab 连续两个if,求大神解答一个matlab中的for循环嵌套if选择语句

    公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:求大神解答一个matlab中的for循环嵌套if选择语句回答:1.最后缺少一个end;2.这句输出没什么意义:disp A(i)=A ...

  4. [LeetCode]LRU Cache有个问题,求大神解答【已解决】

    题目: Design and implement a data structure for Least Recently Used (LRU) cache. It should support the ...

  5. c语言中cout lt lt endl,求C语言和C++大神解答,printf怎么转成cout输出语句

    话题:求C语言和C++大神解答,printf怎么转成cout输出语句回答:cout输出不需要指定输出的格式类型,其他的和printf一样的, endl 表示换行,当然 \n也还是可以用的. cout ...

  6. 软件开发Linux环境下,java通过JNA调用so报错,求大神解答,感激不尽。

    软件开发Linux环境下,java通过JNA调用so报错,求大神解答,感激不尽. 图片说明 最佳答案: 专家已采纳 先用c等调用一下so,看函数能否正确调用 文章来源:https://ask.csdn ...

  7. c语言按键实现跳转程序,C语言中的跳转语句

    <C语言中的跳转语句>由会员分享,可在线阅读,更多相关<C语言中的跳转语句(4页珍藏版)>请在人人文库网上搜索. 1.C语言中的跳转语句c语言有4个跳转语句return.got ...

  8. 如何用c语言编写炫酷烟花程序,C语言实现放烟花的程序

    这是一个利用C语言编写放烟花的程序(同时也可以播放音乐),供大家参考,具体内容如下 代码如下 #pragma once #include #include //图形界面库头文件 #include // ...

  9. C语言输入end时结束程序,c语言输入eof结束怎么写

    1.C语言里的EOF(结束程序)怎么用 在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file).在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件 ...

最新文章

  1. 张正友相机标定代码(c++python)
  2. 对order by的理解
  3. js模块化:require、import和export
  4. oracle dbstart,dbstart: 未找到命令
  5. AUTOSAR从入门到精通100讲(三)-基于UDS服务的BootLoader架构和刷写流程
  6. 关于火狐浏览器在ubuntu和安卓手机上的同步
  7. 【Teradata】tdlocaledef修改默认日期配置
  8. atitit.木马病毒webshell的原理and设计 java c# .net php.
  9. java计算机毕业设计ssm+vue工商学院办公用品管理信息系统
  10. 五星大饭店韩文插曲-请不要离我而去MV
  11. 苹果手机如何下载考拉解析app
  12. lcx端口转发工具的使用
  13. Linux:udev机制详解
  14. python中的美元符号_Python学习笔模式匹配与正则表达式之插入字符和美元字符
  15. 用原生js实现淘宝详情页图片放大镜效果
  16. c语言关键词中英翻译机编程,课程设计--C语言关键字中英翻译机
  17. 全面理解 Unity UI 系统
  18. 关于地铁查询系统的总结
  19. 克鲁斯卡尔算法解决公交站问题
  20. E6410安装PVE直通显卡安装LibreELEC系统

热门文章

  1. 刷题周记(八)——#区间DP:多边形、清空字符串 #状态机:股票买卖I~V、大盗阿福
  2. 大数据江湖之即席查询与分析(中篇)--即席查询与分析的典型场景
  3. 计算机科学权威年会,2017年全国理论计算机科学学术年会在我校召开
  4. 如何给码农的Mac开光
  5. BAT批处理脚本实例学习(五)局域网共享批处理安装软件
  6. 警惕感冒不仅会头痛脑热,还可能引发致盲性眼病
  7. 网站SEO优化几个月才有效果?
  8. havc是什么意思_什么是AVC编码? 简述H.264概念和发展
  9. 流氓并不可怕,就怕流氓有文化 -- 这是一个知识改变命运的例子
  10. 学习随笔#12 最优化控制(Optimal Control)