什么样的C程序是正确的?编译通过,输出正确的C程序,是正确的吗?

什么样的C程序是正确的?编译通过,输出正确的C程序,是正确的吗?

没有绝对意义上"正确"的程序。这是因为程序的输入有无穷多种,即便程序没有输入,它的运行环境也有无数多种。
只要有一个不符合预期,那么程序就是“错的”,而即便你找出10000个例子是符合的,你也不能说程序是正确的。
歌德巴赫猜想,任一大于2的整数都可写成三个质数之和,是否成立,到现在也没有完全证明出来。虽然我们可以举出无穷多符合这个规则的例子,并且还没找到反例。也不能说这绝对成立。

我觉得如果这个程序在一个范围内,就是有了限制条件,无论输入与输出,都已经符合了你的预期,而且程序本身简洁且内存占用达到本身最小,那么这个程序就是正确的

试想,同一个题目,通过C语言编写程序,可以有不同的方法,当然无论编译的时候出现什么情况,只要在一定条件下,且证明了程序本身就是你所要的,就是正确的

剩下的就是,以后发现问题,更新程序,无论那一个程序,并不都是完美的,随着时间,时代的进步,总会差强人意

没有完美的程序 ,要么程序没什么意义要么存在一些bug 这问题有本书里有写过