lluvio 发表于 2020-7-13 15:13:13

数组的打印问题

本帖最后由 lluvio 于 2020-7-13 15:25 编辑

这两次打印的怎么还能不一样了呢
#include <stdio.h>

int main()

{       
        const int size = 3;
        int i,j;
        int x;
        int num= 1;
        int cnt = 0;
       
        for ( i=0; i<size ; i++){
                for (j=0; j<size; j++) {
                        x = num;
                        if (cnt % 3 == 0){
                                printf("\n");
                        }
                        printf("x[%d][%d] = %d\t", i,j,x);
                        num ++;
                        cnt ++;
                }
        }
        printf("\n");
        cnt = 0;
        for ( i=0; i<size; i++) {
                for (j=0; j<size ; j++) {
                        if (cnt % 3 == 0){
                                printf("\n");
                        }
                        printf("%d\t", x);
                        cnt ++;
                }
        }
       
        return 0;
}


第一个循环和第二个循环的内容是一样的啊
为什么第二个循环打印的不是
123
456
789

qiuyouzhi 发表于 2020-7-13 15:18:13

我这里都一样?
你说的是什么时间不一样

lluvio 发表于 2020-7-13 15:20:48

本帖最后由 lluvio 于 2020-7-13 15:25 编辑

qiuyouzhi 发表于 2020-7-13 15:18
我这里都一样?
你说的是什么时间不一样

第一个循环和第二个循环的内容是一样的啊
为什么第二个循环打印的不是
123
456
789

lluvio 发表于 2020-7-13 15:21:32

本帖最后由 lluvio 于 2020-7-13 15:24 编辑

qiuyouzhi 发表于 2020-7-13 15:18
我这里都一样?
你说的是什么时间不一样

就是这个数组的内容第二次打印不是123456789了
x变成4了
第一个循环和第二个循环的内容不是一样的吗,按说也会打印
123
456
789

lhgzbxhz 发表于 2020-7-13 15:26:27

lluvio 发表于 2020-7-13 15:20
第一个循环和第二个循环的内容是一样的啊
为什么第二个循环打印的不是
123


第一个循环和第二个循环不一样啊

sunrise085 发表于 2020-7-13 15:29:32

你的程序第8行是什么鬼?
int x;
应该是:
int x;
修改这个问题之后,我这里打印结果是一样的。。。

lluvio 发表于 2020-7-13 15:31:48

lhgzbxhz 发表于 2020-7-13 15:26
第一个循环和第二个循环不一样啊

请问数组的值为什么被改变了呢

小甲鱼的铁粉 发表于 2020-7-13 15:43:04

i,j不可以直接用于数组定义的{:10_250:}
页: [1]
查看完整版本: 数组的打印问题