回 帖 发 新 帖 刷新版面

主题:诚请各位老师指点

我想让当a[i]中有与b[i]相同的时    c数组中第i个为1    否则第i个为0   然后   逐个输出C[i]
但为啥   输出不是全为0   就是  1????
诚请求各位老师指点   急  !!!

#include <iostream>
using namespace std;
void main ()
{
    int a[10],b[10],c[10];
    cout<<"*************"<<endl;
    int i ,j ,n;
    for(i=1;i<=3;i++)
    {
    cin>>a[i];
    }
    for(j=1;j<=3;j++)
    {
    cin>>b[j];
    }
    for(i=1;i<=3;i++)
    {
    for(j=1;j<=3;j++)
    {
        if (a[i]==b[j])
            c[i]=1;
        else
            c[i]=0;
    }
    }
    for(i=1;i<=3;i++)
    {
        cout<<c[i]<<" ";
    }

}

回复列表 (共2个回复)

沙发

"我想让当a[i]中有与b[j]相同的时"   既是只要a数组有和b数组相同的话  a数组中与b数组相同的那个序号(i)使得c 数组中c[i]=1,否则为0

板凳

嵌套的地方有问题,看你的程序应该是只要有相同的元素就输出一不考虑一一对应是吧。把c[i]=0放到外面试试

我来回复

您尚未登录,请登录后再回复。点此登录或注册