本文目录一览:
C语言中的一个问题,为什么会出现这种情况?
把printf修改成 printf("%.2f\n",change);
结果就是393.00
浮点运算都是近似值,没有绝对精确,只是在一定的精度范围内是准确的。
C语言为什么定义了一个长度为10的数组,用get()能赋值12个字符?
你问的是gets函数吧
没有get函数
gets只负责接收,不检查越界。如果输入超过了定义的长度,gets会把剩余字符,填写在你定义的数组外面的内存里。
当然数组外面的未定义内存,别的程序可能改写它。
打印这个数组能看见12个字符,是因为两个原因:1 c语言的字符串输出函数都是遇到0才终止,不管是否越界 2 gets写到数组外的部分,恰好没有别的代码来改写它。
此函数在 C99 的第三次勘误中被弃用,而在 C11 标准发布时被移除。推荐的替代品是fgets()和gets_s()。
C语言里面,为什么(一个数%2==0)是偶数呢
“%”是取余数的意思
a%2==0就是a除以2的余数是0,也就是能被2整除
能被2整除的数当然就是偶数咯