Marth 发表于 2017-12-6 15:19:21

二维数组赋值

#include<iostream>
using namespace std;
int main()
{
        char a;
        int i=0,t=0;
        for(;i<5;i++)
        {
                for(;t<5;t++)
                {
                        cin>>a;
                        a+=4;
                        cout<<a;
                }
        }
        return 0;
}
我这样给二维数组赋值,为什么始终只能赋到a呢?

BngThea 发表于 2017-12-6 15:45:55

内层循环应该要初始化t=0
否则第二次进入内层循环的时候t=5,直接结束

3-3 发表于 2017-12-6 15:46:48

本帖最后由 3-3 于 2017-12-6 15:49 编辑

你内层循环的t没有及时更新,所以t 一直为5,这样就只能执行i=0时的5次。把你原来的代码改为:

      for(;i<5;i++)
      {
                for( t = 0;t<5;t++)
                {
                        cin>>a;
                        a+=4;
                        cout<<a;
                }
      }
……
这样就可以了

Marth 发表于 2017-12-6 20:33:44

BngThea 发表于 2017-12-6 15:45
内层循环应该要初始化t=0
否则第二次进入内层循环的时候t=5,直接结束

谢谢{:10_256:}
页: [1]
查看完整版本: 二维数组赋值