鱼C论坛

 找回密码
 立即注册
查看: 2784|回复: 3

[新人报道] 为什么要输入3个数值,而且第三个数值不论输入什么都没有影响

[复制链接]
发表于 2019-2-25 22:43:24 | 显示全部楼层 |阅读模式

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

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

x
int main(void)
{
        int ri, repeat;
        double a, y;
        scanf_s("%d\n", &repeat);
        scanf_s("%lf\n", &a);
        for (ri = 1; ri <=repeat; ri++)
        {
                if (a != 0)
                {
                        y = 1 / a;       
                }
                else
                {
                        y = 0;
                }
                printf("y=%lf\n", y);
        }
}


必须要输入三个数字,输入1 3 1输出0.333333,但是第三个数值对结果没有任何影响
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-2-25 23:47:32 | 显示全部楼层
    代码的意图到底是什么,为什么要安排循环来多次打印同一个数值?非常让人莫名其妙!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-2-26 18:35:12 | 显示全部楼层
jackz007 发表于 2019-2-25 23:47
代码的意图到底是什么,为什么要安排循环来多次打印同一个数值?非常让人莫名其妙!

就是一个分段函数,如果不要for循环,没什么影响吧,加不加循环有什么影响?大佬,求解答
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-28 17:07:47 | 显示全部楼层
代码有错误!改一下就好了,建议scanf函数的格式控制处不要加过多的代码
附:改你的代码
#include<stdio.h>
int main(void)
{
        int ri, repeat;
        double a, y;
        scanf("%d", &repeat);
        scanf("%lf", &a);
        for (ri = 1; ri <=repeat; ri++)
        {
                if (a != 0)
                {
                        y = 1 / a;        
                }
                else
                {
                        y = 0;
                }
                printf("y=%lf\n", y);
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-13 10:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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