Una possibile soluzione:
Una migliore soluzione, dal punto di vista della velocità di esecuzione, potrebbe essere quella di utilizzare un alberio binario di ricerca.codice:#include <stdio.h> #include <ctype.h> int main() { int k, x, y; char c; char a[256]; char str[55] = "Babbo"; char str1[55]; char str2[55]; for ( k = 0; k < 256; k++ ) a[k] = 0; k = 0; while ( 1 ) { if ( str[k] == '\0' ) break; c = tolower(str[k]); a[c] += 1; ++k; } x = y = 0; for ( k = 0; k < 256; k++ ) { if ( a[k] > 1 ) { str1[x++] = k; } else if ( a[k] == 1 ) { str2[y++] = k; } } str1[x] = '\0'; str2[y] = '\0'; printf("\n\nCaratteri multipli: %s\n", str1); printf("\n\nCaratteri singoli: %s\n", str2); return 0; }
![]()

Rispondi quotando