====== Esercitazione 2 ====== Dove si fanno girare i primi programmi C ===== Esercizio 1: Ciao Mondo ===== Scrivere ed eseguire il seguente programma C, che stampa sullo standard output la stringa "Ciao Mondo!". #include int main(void) { printf("Ciao mondo!\n"); return 0; } Per fare questo in ambiente Unix: * Salvare il testo del programma in un file ''ciaomondo.c'' (tutti i programmi C devono essere contenuti in un file con estensione ''.c'' per poter essere compilati correttamente) * compilare il programma utilizzando il compilatore GNU, con il comando gcc ciaomondo.c -o ciaomondo l'opzione ''-o'' serve a dare un nome significativo all'eseguibile (che altrimenti e' denominato sempre ''a.out'') * Eseguire il comando digitando il pathname relativo dell'eseguibile shell$ ./ciaomondo Questo dovrebbe provocare la stampa della stringa ''Ciao Mondo!'' prima di ottenere di nuovo il prompt shell$ ./ciaomondo Ciao Mondo! shell$ ===== Esercizio 2: -Wall -pedantic ===== Considerate il seguente programma #include int main(void) { int i; printf("Ciao mondo! %d\n",i); } salvatelo in un file ''ciaomondo.c'' compilatelo con gcc ciaomondo1.c e con gcc -Wall -pedantic ciaomondo1.c Che e' successo nelle due compilazioni ? Nel resto del corso compileremo sempre con i due flag ''-Wall -pedantic'' per costringere il compilatore C a darci tutte le informazioni possibili su errori ed incongruenze ===== Esercizio 3: Calcolo dell'area ===== Considerare il seguente programma per il calcolo dell'area del rettangolo: #include int main(void) { double h,b,A; printf("Inserisci la base:"); scanf("%lf",&b); printf("Inserisci l’altezza:"); scanf("%lf",&h); A = h * b; printf("L’area e’: %f\n",A); return 0; } salvare in un file ''area.c'', compilare es eseguire usando le indicazioni dell'Esercizio 1 ed usando i flag dell'Esercizio 2. Modificare il programma in modo che calcoli l'area di un triangolo equilatero. ===== Esercizio 4: Elevare al quadrato ===== Scrivere un programma C che legge da standard input tre reali //x,y,z// e ne stampa il quadrato sullo standard output.