मैं आप लोगों से पूछना चाहता हूं, यहां मेरा कोड जांच नहीं कर सकता है कि मेरा मूल्य मौजूद है या संरचना में नहीं है, मैंने मूल्य इनपुट किया है, लेकिन उनमें से कोई भी अन्य स्थिति में प्रवेश नहीं करता है, क्या कोई मेरी मदद कर सकता है?

#include <stdio.h>
    
int main(){
    int a,i;
    struct data {
        char nim[10];
    };
    
    struct data batas[100];
        
    printf("TEST1 : "); scanf("%[^\n]s", batas[0].nim);
    printf("TEST2 : "); scanf(" %[^\n]s", batas[1].nim);
    printf("TEST3 : "); scanf(" %[^\n]s", batas[3].nim);
        
    printf("TEST : "); scanf(" %[^\n]s", batas[a].nim);
    for(i=0; i<a; i++){
        if (batas[a].nim == batas[i].nim) {
            printf("Value exist");
        } else {
            printf("Value doesn't exist");
        }
    }
    return 0;
}
1
Rudy Tri Saputra 23 जिंदा 2021, 11:09

2 जवाब

सबसे बढ़िया उत्तर

आप इसके बजाय char की सरणी की तुलना समान ऑपरेटर से नहीं कर सकते:

if (strcmp(batas[a].nim, batas[i].nim) == 0)

या

if (!strcmp(batas[a].nim, batas[i].nim))

आपको #include <string.h> की जरूरत है

साथ ही, ध्यान दें कि आप a अप्रारंभीकृत का उपयोग कर रहे हैं।

4
David Ranieri 23 जिंदा 2021, 11:19

आप जो देते हैं, वह अभी भी "मान मौजूद है" मान दर्ज नहीं कर सकता है। कोड की मेरी पूरी लाइन यहां दी गई है।

#include <stdio.h>
#include <string.h>

struct data {
    char nim[10];
};

struct data batas[100];
int a=0, b, c, d;
int i, j;
char x[20];

void inputdata()
{
  printf("\nInput Data\n");
  printf("=======================\n");
  printf("NIM : "); scanf("%s", batas[a].nim);
  for(i=0; i<a; i++){
    if (!strcmp(batas[a].nim, batas[i].nim)) {
      strcpy(x, "FLAG");
    } else {
      strcpy(x, "FLAGX");
    }
  }
  printf("%s", x);
  a++;
}

void showdata()
{
  j=0;
  for(i=0; i<a; i++){
    j = j + 1;
    printf("\nData-%i", j);
    printf("\nNIM : %s", batas[i].nim);
  }
}

int main() {
  int menu;
  do {
    printf("\nChoose input = "); scanf("%d", &menu);
    switch(menu)
    {
      case 1 : inputdata(); break;
      case 2 : showdata(); break;
    }
  }while (menu != 3);

  return 0;
}
0
Rudy Tri Saputra 23 जिंदा 2021, 12:37