鱼C论坛

 找回密码
 立即注册
查看: 3502|回复: 12

[已解决]求助大佬们,我就是不能弄出浮点型帮帮忙吧

[复制链接]
发表于 2018-10-22 18:05:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. #include <stdio.h>
  2. int main(){
  3.         int n,i = 1,l;
  4.         float sum = 0.0,u,k = 1.0,j = 2.0;
  5.         scanf("%d",&n);
  6.         for (;i <= n;i++){
  7.                 u = j / k *1.00;
  8.                 sum = sum + u;
  9.                 l = j;
  10.                 j = j + k;
  11.                 k = j;
  12.                 printf("%.2f",u);
  13.         }
  14.         printf("%.2f",sum);
  15.         return 0;
  16. }
复制代码


u的输出一直都是整数的,比如输入2 他就是2.00 1.00 大佬们麻烦看看错在哪里
最佳答案
2018-10-25 17:51:06
cookies945 发表于 2018-10-25 15:29
当n>=2的时候就有了
这里是有一个循环的

循环你仔细看下,一个循环完成后,k和j是相等的
就是这两句代码:
  1. j=j+k;
  2. k=j;
复制代码

不清楚,你是如何计算得到3/2的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-10-22 18:11:52 | 显示全部楼层
2.00和1.00不就是小数类型的么?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-22 18:22:17 | 显示全部楼层
嗯嗯,同楼上,小数就是所谓的浮点型~~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-24 14:44:25 | 显示全部楼层
TyCk 发表于 2018-10-22 18:11
2.00和1.00不就是小数类型的么?

3/2不应该是1.5么但是他显示的是一啊
八嘎就是出在这里
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-24 17:39:42 | 显示全部楼层
cookies945 发表于 2018-10-24 14:44
3/2不应该是1.5么但是他显示的是一啊
八嘎就是出在这里

你这里是 2/1*1.00,没有3/2,仔细捋一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-25 12:58:59 | 显示全部楼层
这是C?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-25 15:29:47 | 显示全部楼层
TyCk 发表于 2018-10-24 17:39
你这里是 2/1*1.00,没有3/2,仔细捋一下

当n>=2的时候就有了
这里是有一个循环的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-25 15:30:21 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-25 15:32:37 | 显示全部楼层
claws0n 发表于 2018-10-22 18:22
嗯嗯,同楼上,小数就是所谓的浮点型~~

当n >= 2 时,j = 3,k = 2,应该的到1.500,但是运行只得到1.00
就是这个八嘎
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-25 17:51:06 | 显示全部楼层    本楼为最佳答案   
cookies945 发表于 2018-10-25 15:29
当n>=2的时候就有了
这里是有一个循环的

循环你仔细看下,一个循环完成后,k和j是相等的
就是这两句代码:
  1. j=j+k;
  2. k=j;
复制代码

不清楚,你是如何计算得到3/2的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-25 20:34:20 | 显示全部楼层
TyCk 发表于 2018-10-25 17:51
循环你仔细看下,一个循环完成后,k和j是相等的
就是这两句代码:

有理 果然是大佬我学到了,多谢大佬指点
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-25 21:50:31 | 显示全部楼层
cookies945 发表于 2018-10-25 20:34
有理 果然是大佬我学到了,多谢大佬指点

不用谢,称不起这句大佬的
基本逻辑一定要捋清楚哦,要一步步地推演一下自己的代码!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-26 16:09:04 | 显示全部楼层
TyCk 发表于 2018-10-25 21:50
不用谢,称不起这句大佬的
基本逻辑一定要捋清楚哦,要一步步地推演一下自己的代码!{:10_256 ...

谦虚了大神,我会努力的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-22 18:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表