C++ 重复打印,用于循环

C++ 重复打印,用于循环,c++,C++,我现在正在编码一个C++项目,我挂在某个代码上(字面上是最后一个-)- 有人能告诉我哪里有逻辑错误吗?我知道这是一个原因,因为我得到的比我要求的或想要的更多。假设检查名称[i].ID是否与名称[j].ID在同一个文件中,如果名称[i].ID==0。如果这些条件为真,则程序应将其打印在输出文件上。您的内部循环的每个迭代都有输出: for(int i = 0; i < counter - 1; i++) { if(names[i].stormCat == 0) { f

我现在正在编码一个C++项目,我挂在某个代码上(字面上是最后一个-)-


有人能告诉我哪里有逻辑错误吗?我知道这是一个原因,因为我得到的比我要求的或想要的更多。假设检查
名称[i].ID
是否与
名称[j].ID
在同一个文件中,如果
名称[i].ID==0
。如果这些条件为真,则程序应将其打印在输出文件上。

您的内部循环的每个迭代都有输出:

for(int i = 0; i < counter - 1; i++) {
    if(names[i].stormCat == 0) {
        for(int j = 0;j<count;j++) {
            if(names[i].ID != name[j].ID) {
                outfile << names[i].hurricaneName << setw(15) << names[i].ID << endl;
            }
        }
    }
}
for(int i=0;i对于(int j=0;j
int count=/*..*/;热带名称[计数]无效的C++,它使用VLA扩展。使用<代码> STD::矢量< /代码>。你不从<代码>热带< /代码>中去,这看起来有点可疑。我也认为你的代码想检查一下你的一个飓风是否符合你的热带风暴,并且每次不匹配它时打印出来。所以,你可能想写一个O。r,如果不匹配,则输出一个名称。谢谢@Jarod42我的程序与
break;
EXCEPTION REPORT 2

            The Following Tropical Storms were not listed in the Tropical Storm data list.

NAME                  ID


Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Carla                 194
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
Kathleen              173
for(int i = 0; i < counter - 1; i++) {
    if(names[i].stormCat == 0) {
        for(int j = 0;j<count;j++) {
            if(names[i].ID != name[j].ID) {
                outfile << names[i].hurricaneName << setw(15) << names[i].ID << endl;
            }
        }
    }
}
for(int i = 0; i < counter - 1; i++) {
    if(names[i].stormCat == 0) {
        for(int j = 0;j<count;j++) {
            if(names[i].ID != name[j].ID) {
                outfile << names[i].hurricaneName << setw(15) << names[i].ID << endl;
                break; // <<<<<<<<<< Added.
            }
        }
    }
}
for(int i = 0; i < counter - 1; i++) {
    if (names[i].stormCat == 0) {
        if (std::find_if(names.begin(), names.end(),
                         [i](auto& name){ return names[i].ID != name.ID; }) != names.end()) {
            outfile << names[i].hurricaneName << setw(15) << names[i].ID << endl;
        }
    }
}