注册 登录
编程论坛 C++教室

我这个把二维数组的横列调换的怎么那么多的错误的啊

张海锋 发布于 2012-12-20 21:19, 911 次点击
#include<iostream>
using namespace std;
int main()
{
    int shu1[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},he[4][3]={};
    for(int a=0;a<=3;a++)
    {
        for(int b=0;b<=2;b++)
        {
            he[a][b]=shu1[b][0];
               cout<<he[a][b]<<'\t';
        }
        cout<<endl;
    }
    return 0;
}
16 回复
#2
peach54602012-12-21 08:37
程序代码:
int main()
{
    int shu1[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},he[4][3]={};
    for(int a=0;a<=3;a++)
    {
        for(int b=0;b<=2;b++)
        {
            he[a][b]=shu1[b][a];
            cout<<he[a][b]<<'\t';
        }
        cout<<endl;
    }

    char ch;
    cin >> ch;
    return 0;
}
#3
张海锋2012-12-21 10:44
回复 2楼 peach5460
为什么要增加一个字符的数组呢?
#4
张海锋2012-12-21 10:47
回复 2楼 peach5460
不行啊还是那些错误的
#5
wp2319572012-12-21 11:12
楼主的代码在vs2010下能编译通过
#6
wp2319572012-12-21 11:13
2楼的代码在vs2010下也能编译通过

楼主不妨把错误信息贴出来
#7
张海锋2012-12-21 12:04
ram files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(8) : error C2059: syntax error : '}'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(8) : warning C4508: 'main' : function should return a value; 'void' return type assumed
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before 'for'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ')' before ';'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '<='
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2501: 'a' : missing storage-class or type specifiers
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '<='
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '++'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2501: 'a' : missing storage-class or type specifiers
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2086: 'a' : redefinition
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '++'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2059: syntax error : ')'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(10) : error C2143: syntax error : missing ';' before '{'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(10) : error C2447: missing function header (old-style formal list?)
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(18) : error C2143: syntax error : missing ';' before 'return'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(19) : error C2143: syntax error : missing ';' before '}'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(19) : error C2143: syntax error : missing ';' before '}'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(19) : error C2143: syntax error : missing ';' before '}'
执行 cl.exe 时出错.

eqwe.obj - 1 error(s), 0 warning(s)
#8
张海锋2012-12-21 12:06
回复 6楼 wp231957
ram files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(8) : error C2059: syntax error : '}'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(8) : warning C4508: 'main' : function should return a value; 'void' return type assumed
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before 'for'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ')' before ';'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '<='
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2501: 'a' : missing storage-class or type specifiers
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '<='
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '++'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2501: 'a' : missing storage-class or type specifiers
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2086: 'a' : redefinition
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2143: syntax error : missing ';' before '++'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(9) : error C2059: syntax error : ')'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(10) : error C2143: syntax error : missing ';' before '{'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(10) : error C2447: missing function header (old-style formal list?)
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(18) : error C2143: syntax error : missing ';' before 'return'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(19) : error C2143: syntax error : missing ';' before '}'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(19) : error C2143: syntax error : missing ';' before '}'
d:\program files (x86)\microsoft visual studio\myprojects\eqweq\eqwe.cpp(19) : error C2143: syntax error : missing ';' before '}'
执行 cl.exe 时出错.

eqwe.obj - 1 error(s), 0 warning(s)
#9
张海锋2012-12-21 12:07
回复 6楼 wp231957
我的是VC6.0++,新手不好意思哈,谢谢哈
#10
laoweitou2012-12-21 12:45
在我的机器上也有一个错误,只需加一个数字就可通过。
he[4][3]={} int [4][3]={0}
#11
peach54602012-12-21 13:01
回复 4楼 张海锋
VS2008编译正常
#12
fxbszj2012-12-21 18:06
程序代码:
#include <iostream>
using namespace std;
int main()
{
    int shu1[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},he[4][3]={};
    for(int a=0;a<=3;a++)
    {
        for(int b=0;b<=2;b++)
        {
            he[a][b]=shu1[b][a];   //注意不是shul[b][0]
               cout<<he[a][b]<<'\t';
        }
        cout<<endl;
    }
    return 0;
}
}

这样就没问题了
#13
张海锋2012-12-21 19:33
回复 10楼 laoweitou
我的下标表达式不是有了吗?为什么还要加个数字区呢?
#14
张海锋2012-12-21 19:36
回复 12楼 fxbszj
我这里改还是不行的,但不改的话也应该能输出的啊只不过输出应该是换数组的第一列啊
#15
fxbszj2012-12-21 20:08
回复 14楼 张海锋
这么多人表示没有问题,只有你自己的有问题,那是不是自己的机器或者软件问题而不是程序代码本身的问题了
#16
张海锋2012-12-22 20:00
回复 10楼 laoweitou
不加的话为什么不一样的;我都已经标了常量的表达式了啊
#17
张海锋2012-12-22 20:01
回复 15楼 fxbszj
我用一个数组也可以的哦不过还是谢谢啊
1