====== Esercitazione 2 ======
Dove si editano, compilano ed eseguono 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// ovvero al file binario risultato della traduzione e comprensibile dal processore. Senza usare l'opzione ''-o''nil file eseguibile e' denominato sempre ''a.out''.
* Eseguire il comando digitando il pathname relativo dell'eseguibile
./ciaomondo
Questo dovrebbe provocare la stampa della stringa ''Ciao Mondo!'' prima di ottenere di nuovo il prompt
prompt$./ciaomondo
Ciao Mondo!
prompt$
===== 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.