ciao a tutti!
sto tornando dopo un po' di tempo che l'avevo lasciato da parte, a ristudiare il c.
stavo facendo dei vecchi esercizi e tra questi ne ho uno che mi sta dando qualche problema.
potreste darmi un paio di dritte?
qui il testo dell'esericizio:
ecco qua il codice:Scrivere un programma che acquisite due stringhe di dimensione di al più 30 caratteri verifica se la seconda è esattamente contenuta nella prima: in caso positivo visualizza 1 altrimenti 0. Esempi: “marconiere” “arco” → 1 “ricostruzione” “casa” → 0 “distrazione” “oneroso” → 0
codice:#include <stdio.h> #include <string.h> const int N=31; int main(int argc, char *argv[]){ int i, j, flag; char stringa1[N], stringa2[N]; printf("inserisci due stringhe\n"); scanf("%s", stringa1); scanf("%s", stringa2); flag=1; for(i=0;stringa1[i]!='\0';i++) for(j=0;stringa2[j]!='\0';j++){ if(flag==1 && stringa1[i]==stringa2[j]) flag=1; else{ flag=0; i++; } } if(flag) printf("1\n"); else printf("0\n"); return 0; }
il problema è che sembra funzionare un po' quando vuole lui, ho provato a riscrivere il codice un po' di volte ma la salsa è sempre la stessa
manina?![]()

Rispondi quotando