你是指什么进行不下去了?
C/C++里面的数组不存在越界报错,但是会读出未知的数据
就是说数据能取到,值是之前这块内存中的数据,所以不确定是什么数据,这是C的优势,也是C的问题。
你的程序没有问题。你考不考虑a[i]=0都没有关系。
第二个for循环的代码运行顺序是:
首先k = 1,然后判断 k 和 a[i]的大小,如果判断的值为真时,即k<=a[i]时才会执行循环体。当你的a[i] = 0时,k<=0不成立,就不执行下面的循环体了呗,所以根本就没有0 % 0 = 0的误判
当为真的时候执行循环体,循环体执行一次然后k++,然后k继续和a[i]比较,所以这个程序写的没有问题
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632