为什么我不能迭代字符串数组?[duplicate]

monwx1rj  于 2023-01-08  发布在  其他
关注(0)|答案(1)|浏览(147)
    • 此问题在此处已有答案**:

How do I properly compare strings in C?(10个答案)
2天前关闭。
我没有收到错误消息,但是当我输入相同的"Artiklenummer"时,它没有打印"Dieser Artikel ist vorhanden",尽管它应该打印。我做错了什么?

int main()
    {
    printf("                                LAGERVERWALTUNGSSYSTEM \n");
    printf("                             DRUECK DIE 1 FUER Einlagerung \n" );
    printf("                             DRUECK DIE 2 FUER Auslagerung \n" );

    char artnr[50],menge[50],me[50],neu[50],date[50];
    int zahl, calcam, id, sub,amount;
    int lenm = 0;
    int len = 0;
    int greatlen = 0;
    int result = 0;
    char str[5][5][5];
    int mengen[10];
    int a = 1;
    int s = 0;
    while(a > 0){
     printf("Geben sie eine Zahl ein:");
     scanf("%d", &zahl);
     if(zahl == 1){
       printf("Geben sie ein:\nArtikelnr.:");
       scanf("%s",&artnr);
       strcpy(str[s][0],artnr);
       len= len+1;
       printf("Menge:");
       scanf("%d",&mengen[lenm]);
       lenm = lenm+1;
       printf("Mengeneinheit:");
       scanf("%s",&me);
       strcpy(str[s][1],me);
       len= len+1;
       printf("Datum:");
       scanf("%s",&date);
       strcpy(str[s][2],date);
       len= len+1;
     };
     s =s+1;
     greatlen = greatlen +1;
     if(zahl == 2){
       printf("Welche Ware wollen sie auslagern?:\nArtikelnr.:");
       scanf("%s",&neu);
       printf("Welche Menge wollen sie auslagern?:");
       scanf("%d",&sub);
       for(int i= 0; i<len;i++){
           if(str[j][0] == neu){
                printf("Dieser Artikel ist vorhanden");
           }
          };
        };

    };

    return 0;
   }
kb5ga3dv

kb5ga3dv1#

试试这个:

if (strcmp(str[j][0], neu) == 0) {
printf("Dieser Artikel ist vorhanden");
}

相关问题