计算循环中的对象

时间:2012-09-13 02:37:49

标签: c++

这是我写的:

#include <iostream> 
using namespace std; 

struct vetura{
    char ngjyra[10];
    char tipi[10];
};

int main(){
    int i,j;
    vetura v[4];

    for(i=0;i<4;i++){
        cout << "Ngjyra:"<<endl;
        cin >> v[i].ngjyra;
        cout << "tipi:"<<endl;
        cin >> v[i].tipi;
    }
    j=0;
    for(i=0;i<4;i++){
        if(v[i].ngjyra == "kuqe" && v[i].tipi == "passat")
        j+1;
    }
    cout<<"kemi "<<j<<" vetura passat me ngjyre te kuqe";


    cin.get();cin.get();
    return 0;
}

我需要计算我为v [i] .ngjyra写了“kuqe”的次数和v [i] .tipi的“passat”。我认为变量j每次都会变大,但它不起作用,我将在接下来的几个小时进行考试,有人可以帮助我吗?

1 个答案:

答案 0 :(得分:8)

你有两个问题:

<强>首先

变化:

    j+1;

为:

    j = j+1;

或更简单:

    j++;

<强>第二

v[i].ngjyra == "kuqe"永远不会成真。您正在检查v[i].ngjyra位置是否与"kuqe"位置相同。事实并非如此。

如果要测试字符串是否具有相同的值,请更改:

v[i].ngjyra == "kuqe"

为:

strcmp( v[i].ngjyra, "kuqe" ) == 0