C语言如何实现先顺序打印数组元素再输出逆序数组
问题根因
- 输入读取的for循环执行结束后,迭代变量
i的值已经为NUM_VALS即4,直接访问courseGrades[i]属于数组下标越界,输出值为不确定的内存脏值,同时这行打印语句还缺少右括号,存在语法错误 - 现有代码未实现正序打印数组元素的逻辑,仅包含逆序打印的相关代码,无法输出正序排列的数组内容
修正代码
仅需替换你原有错误的打印部分即可,输入部分完全不需要修改:
// 正序输出数组元素 for (i = 0; i < NUM_VALS; ++i) { printf("%d ", courseGrades[i]); } printf("\n"); // 逆序输出数组元素 for (i = NUM_VALS - 1; i >= 0; --i) { printf("%d ", courseGrades[i]); } printf("\n");
内容的提问来源于stack exchange,提问作者CMOS_BATTERY
相关产品推荐
相关产品推荐

