【程序设计入门——C语言】mooc浙大翁恺教授【第五周,3循环应用】笔记+理解

1

在这里插入图片描述

代码

在这里插入图片描述

理解

分母由1——n. 起点的数字1,终点的数字n 是明确的,用for循环
对于总和sum. 由于 1/i 带有小数点,不用int ,用double
1/i 是0,改为 1.0/i 【因为 i 比1大】

2

在这里插入图片描述

代码

在这里插入图片描述

理解

第一次加,第二次减(一加一减的实现):
方法一:设置 sign,int sign=1.并在后面 设置 sign=-sign
让 1.0/i 变成 sum*1.0/i

方法二:double sign=1.0(这样就不需要int sign=1) ,同时也做到了小数点。 一正一负保持不变,上一行代码【sum += sign/i ,1. sign是浮点数类型,2.sign相当于分子,在自由一正一负交换】

3 求最大公约数(两种方法)

代码

  1. 枚举
    在这里插入图片描述
  2. 辗转相除法:见此前笔记求最大公约数——辗转相除法

理解

如果a,b都没有最大公约数,那么1 可以表示最大公约数。故从i=1开始

4 整数分解

在这里插入图片描述

代码

在这里插入图片描述

理解

  1. 如何处理最后一个输出 是 空格?(输出的末尾多出一空格)
    if循环条件x>9 / x>=10 代表,前面还有2位及以上的数,所以printf 空格
    【设置循环条件,让他在非最后一轮去输出空格,在最后一位时,不输出】

取出每一位:x%10 拿到最后一位
x/=10 去除最后一位
2. 未完,待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值