/* 1. Napisati funkciju koja u zadatom stringu odredjuje broj pojavljivanja svakog samoglasnika. 2. Napisati funkciju koja od datog stringa pravi novi string koji ima ista slova kao dati string, s tim da na parnim mjestima budu velika slova a na neparnim mala. 3. U glavnom programu ispitati rad funkcija. */ #include #include void Samoglasnici(char* string, int* brA, int* brE, int* brI, int* brO, int* brU) { //Broji samoglasnike int i; *brA = *brE = *brI = *brO = *brU = 0; for(i=0; string[i] != '\0'; i++) { switch(string[i]) { case 'A' : case 'a' : (*brA)++; break; case 'E' : case 'e' : (*brE)++; break; case 'I' : case 'i' : (*brI)++; break; case 'O' : case 'o' : (*brO)++; break; case 'U' : case 'u' : (*brU)++; break; } } } void Formatiraj(char* string, char* noviString) { //Konvertuje svaki karakter na parnom mjestu u veliko slovo, a na neparnom u malo int i; for(i=0; string[i] != '\0'; i++) { if(i % 2) { //neparna mjesta if(string[i] >= 'A' && string[i] <= 'Z') noviString[i] = string[i] + ('a' - 'A'); else noviString[i] = string[i]; } else { if(string[i] >= 'a' && string[i] <= 'z') noviString[i] = string[i] - 'a' + 'A'; else noviString[i] = string[i]; } } noviString[i] = '\0'; } int main(int argc, char *argv[]) { int a, e, i, o, u; char* string = "OVo Je neki VeliKi STrIng Koji SLUZI za teSTiRaNJe FuNKCijA"; char* noviString = (char*) malloc(sizeof(char) * strlen(string) + 1); Samoglasnici(string, &a, &e, &i, &o, &u); printf("%s\n", string); printf("a: %d\te: %d\ti: %d\to: %d\tu: %d\n", a, e, i, o, u); Formatiraj(string, noviString); printf("%s\n", noviString); free(noviString); system("PAUSE"); return 0; }