| 
 File: Stare vježbe/vjezbe06/40__rad_sa_stringovima_2.c 
/*     40__rad_sa_stringovima_2.c     Primjer jednostavnog baratanja sa stringovima     -----     Program sva slova unesenog stringa pretvara u mala, odnosno velika slova */   #include <stdio.h> #include <stdlib.h> /* u ctype.h nalazi se deklaracija funkcije toupper */ #include <ctype.h>   /* maksimalna duljina linije teksta koja ce se unositi */ #define DUZINA 30   /* Napomena: primijetimo da unutar funkcije getline mijenjamo vrijednosti    elemenata polja linija[]. To cemo preciznije moci objasniti kada cemo    uciti pointere */ int getline(char linija[], int duz) {     int c,i;       i=0;     while(--duz >0 && (c=getchar()) != EOF && c != '\n')           linija[i++]=c;       linija[i]='\0';       return i;   }   /* funkcija za pretvaranje velikog u malo slovo (u ctype.h postoji ekvivalentna funkcija tolower) */ int u_mala(int c) {     if (c >= 'A' && c <= 'Z')         return c + 'a' - 'A';     else         return c; }   int main() {     char linija[DUZINA], velika[DUZINA], mala[DUZINA];     int i, br_znakova;     br_znakova=getline(linija, DUZINA);            printf("\nLinija koju ste unijeli ima %d znakova (racunajuci praznine).\n",          br_znakova);     i=0;     while ((linija[i] != '\0') && (i <= DUZINA)) {         velika[i]=toupper(linija[i]);         mala[i]=u_mala(linija[i]);         ++i;     }     velika[i]='\0';     mala[i]='\0';       printf("Mala slova: %s\n", mala );      printf("Velika slova: %s\n", velika );      /* ispisujemo prvih i/2 znakova */     printf("Velika slova (prva polovica): %.*s\n", i/ 2, velika );        return 0; }   
 
          
  
       |