godzhu 发表于 2008-7-15 13:25

数组问题

输入11个数存入一维数组a中,再将其中的值按相反的顺序存入数组b中并输出
#include<iostream.h>
void main()
{
        int a[11],b[11];
        for(int i=0;i<11;i++)
                cin>>a[i];
        for(i=11;i>=0;i++)
                b[i]=a[i];
        for(i=11;i>=0;i++)
                cout<<b[i]<<" ";
}
程序运行,输出没有结果 ...

lindayanglong 发表于 2008-7-15 13:58

应该这样

#include<iostream.h>
void main()
{
    int a[11],b[11];
    for(int i=0;i<11;i++)
        cin>>a[i];
    for(i=10;i>=0;i--)
        b[i]=a[i];
    for(i=10;i>=0;i--)
        cout<<b[i]<<" ";
}

zjl138 发表于 2008-7-15 20:44

for(i=11;i>=0;i++)
        b[i]=a[i];
    for(i=11;i>=0;i++)
        cout<<b[i]<<" ";
这上面的 " i "都是末定义.

0--11 一共有12个数了.

忘记喧嚣 发表于 2008-7-15 21:32

主要是你循环条件错了... 本来i开始就是 11  第2个
条件 >=0 永远为真...

wufenp 发表于 2008-7-16 23:11

a

程序错误的确是i没有定义其类型。
你的题目是输入11个数存入一维数组a中,再将其中的值按相反的顺序存入数组b中并输出
可是你的a[i]==b[i]不符合题意。注意哦:相反的顺序存入数组b中

yinliwen110 发表于 2008-7-17 11:41

i 的类型没定义?不明白,不是有int i=0;?
还有个问题就是5楼说的,要看清题目;
下面是我的答案;
#include <iostream>
using namespace std;

int main()
{
        int a[ 11 ];
        int b[ 11 ];
        for ( int i = 0 ; i < 11; i++ )
                cin >> a[ i ];
        for ( i = 10 ;i >= 0 ; i--)
                b[10-i] = a [ i ];
        for ( i = 0 ; i < 11; i++ )
                cout << b[ i ] <<' ';
        cout << endl;

        return 0;

页: [1]

编程论坛