初学C语言的感悟(2)

博主又双叒叕来纠错了。 首先让我们观察一下《C程序设计(第五版)》的134面最下方的代码: 然后让我们试运行一次: 代码运行结果跟书上的图片完全不符。。。 不过这里是小问题,输出时将printf里的语句改为%-4d即可。 但如果将代码改成每5个数据输出一行,问题就出现了: 显然每行之间的距离并不符合程序的预期效果。 经过简单的分析就能发现问题出在控制换行的if语句上,如果根据源程序,当m%10==0时输出\n,但是因为这个语句放在了控制m的值的if语句外面,...
2020-05-12 21:47 | 阅读 3135 次 | 评论 3 条

初学C语言的感悟(1)

首先博主需要道个歉,原来的博客因为博主一时脑袋发热而出现了逻辑上的错误。 现重发一遍: 今天博主想分享学习C语言过程中发现的问题。 首先你需要一本谭浩强编的《C程序设计》, 然后翻至133面,观察一下最中间的程序。 首先我们按照书上的运行结果试一下, 对于327这个数,程序是正确的。 但是下面两个例子就显得这个程序不那么正确了。 很明显,9=3*3,289=17*17,两者皆不是素数。经过多次试验和分析即可得出这个程序...
2020-04-27 20:30 | 阅读 1270 次 | 评论 0 条

初学C语言的感悟

刚刚开始学C语言,写个博客纪念一下 对待电脑编译系统切不可像对待数学一样严谨,尤其是浮点数的运算和赋值,无论多么精确的数字,进入电脑的存储系统后,因为电脑存储方式的原因,任何数据都会产生误差,这些误差有的大有的小,可能不会对结果产生影响,但也有可能对结果产生极大的影响,并且结果往往是意想不到的。 例如博主学习过程中遇到的一个float强制转int的例子: 此处就是浮点型数据强制转换为整型数据损失精度的例子,原因类似于int型的3被强制转换为float型时,有可能被存储为2.999999,但用户是感受不到存储时发生的精度损失的,因而会产生结果有误差...
2020-04-20 15:14 | 阅读 2193 次 | 评论 2 条
浏览6670次
最新评论