Untitled
unknown
c_cpp
a year ago
1.6 kB
7
Indexable
/*
Scrivere un sottoprogramma che riceve come parametri due stringhe, ciascuna contenente una serie di parole di
lunghezza indefinita e separate da un numero qualsivoglia di caratteri separatori (spazi e a capo). Il sottoprogramma
valuta se le due stringhe contengono la stessa sequenza di parole a prescindere dal numero di spazi e a capo che le
separano e non distinguendo tra lettere minuscole e maiuscole. In caso affermativo il sottoprogramma restituisce 1
altrimenti 0.
*/
#include <stdio.h>
#include <string.h>
int confrontaStringhe(char str1[], char str2[])
{
int j=0;
for(int i=0; i<strlen(str1); i++)
{
if(str1[i] != ' ' && str1[i]!= '\n'){
if(str1[i] >= 'a' && str1[i] <= 'z'){
str1[j] = str1[i] - 32;
}else{
str1[j] = str1[i];
}
j++;
}
}
str1[j] = '\0';
j=0;
for(int i=0; i<strlen(str2); i++)
{
if(str2[i] != ' ' && str2[i]!= '\n'){
if(str2[i] >= 'a' && str2[i] <= 'z'){
str2[j] = str2[i] - 32;
}else{
str2[j] = str2[i];
}
j++;
}
}
str2[j] = '\0';
if(strcmp(str1, str2) == 0){
return 1;
}
return 0;
}
int main(int argc, char *argv[])
{
char str1[] = "Ciao Mondo"; // --> CIAOMONDO
char str2[] = "ciao mondo"; //-->CIAOMONDO
if(confrontaStringhe(str1, str2) == 1){
printf("Le stringhe sono identiche\n");
}else{
printf("Le stringhe sono diverse\n");
}
return 0;
}Editor is loading...
Leave a Comment