每日细节3
开始我以为由于double的存在5/2会得出2.5,但是在c语言中有一个特点,运算符两边如果都是整形,那么结果必然也是整形,故得到2,然后由于double的精确,结果显示2.000000
变量一定要赋值或者初始化
在此我设定了变量x,但未进行赋值或初始化,在printf中单独打印x等于,忽略了x从而生成变量为赋值,相当于有始无终,造成错误。故,变量的产生一定要进行赋值,scanf即从键盘上读取也是一种赋值,从而避免一些错误的产生
同理如下
此处(x+y)/2而非2.0从而造成控制台的0.0000,但我不知道为什么不是12.0000,希望有人能够私信我解答。
正确如下 即修改至2.0以后