SlideShare ist ein Scribd-Unternehmen logo
1 von 4
Downloaden Sie, um offline zu lesen
Abilità Informatiche
                                          Ingegneria Chimica
                                   Università di Roma “La Sapienza”

                                    Esercitazione del 16 Maggio 2012
Nome:                               Cognome:                                      Matricola:
Le risposte corrette valgono 1 punto, quelle errate -0,25 punti, quelle non date 0 punti
Nota: Tra le proposte per ciascuna domanda una sola è esatta

Domanda 1
Si consideri l’architettura di un Personal Computer.
A Il clock comunica l’ora corrente ai dispositivi che la richiedono.
B Durante un ciclo di esecuzione il registro PC contiene l’indirizzo dell’istruzione da eseguire nel
   ciclo successivo.
C La memoria cache di primo livello non è volatile.
D L’accesso ai registri della CPU è più lento rispetto all’accesso alla cache di primo livello.

Domanda 2
Linguaggi di programmazione:
A Un programma espresso in linguaggio macchina è una sequenza di bit
B Un programma scritto in linguaggio assembler non necessita di traduzione.
C Il debugger serve per trovare pi`u facilmente errori sintattici nei programmi.
D Un programma che viene compilato

Domanda 3
Si consideri il seguente programma C:
#include <stdio.h>
main()
{ int A=2;
float B=A--;
char C=A;
if (--B)
if(--A)
C=’B’;
else
C=’A’;
else C=A;
/* punto 1 */
B=(A+=3, A--); /*istruzione 1*/
/* punto 2 */
{ float num;
num=(C>’B’? B--: B/A);
/* punto 3*/
}
/*punto 4*/
}
A Al punto 3 la variabile num ha valore 8.8.
B Al punto 4 la variabile num e‘ visibile.
C L’istruzione 1 effettua 2 assegnamenti.
D Al punto 1 la variabile A ha valore 0.
Domanda 4
Si consideri il seguente programma C:

#include <stdio.h>
main()
{int x; float y; char z, w;
x=4; y=-2; z=’B’; w=’C’;
x=( x%(int)y ?++x: w-z); /* istruzione 1 */
y=x++/y; /* istruzione 2 */
w=z+=1; w-=z; /* istruzione 3 */
}
A Immediatamente dopo l’esecuzione dell’istruzione 3, la variabile w ha valore ’0’.
B nell’istruzione1 non è necessario dichiarare la variabile x.
C Il programma può essere eseguito correttamente.
D Immediatamente dopo l’esecuzione dell’istruzione1, la variabile x ha il valore corrispondente
  al codice ASCII del carattere ’A’.



Domanda 5
Si consideri il seguente programma C:
#include <stdio.h>
main()
{int x[4]={0, 3, 4, 8};
int j, A, B=0, C;
for(j=3; j>=0; j--) /*istruzione 1*/
switch(x[j]%3-1) /*istruzione 2*/
{case 0: x[j]--;
case 1: A=x[j]; break;
case 2: C=0; break;
default: B=--A;
}
C=x[0]+x[2] - B; /* istruzione 3*/
}
A Immediatamente dopo l’istruzione 3, la variabile C ha il valore 3.
B Al termine dell’esecuzione, il valore di due elementi di V risultano modificati rispetto ai loro
   valori iniziali.
C Al termine dell’esecuzione, il valore di V[3] e‘ uguale a 7.
D Immediatamente dopo l’istruzione 3, la variabile A ha il valore 1.
Domanda 6
Si consideri il seguente programma C:
#include <stdio.h>
#define N 8
main()
{typedef float f[N];
typedef char c[N];
f A={0,0.5,1,1.5,2.0,2.5,3.0,3.5};
c B={’C’,’i’,’a’,’o’,0,1,2,3};
int i;
A[N-1]=0;
for (i=1; i<N; i+=i)
A[i]=B[N-i]/i;
/* punto 1 */
if (A[--i]?1:A[0])
printf("Ciao!n");
else
{i=A[0];
for (;i<5;) printf("%c", B[i++]);
}
/* punto 2*/
}
A Il programma contiene un errore di sintassi.
B Al punto 2: A[i-1] ha valore 4.0.
C Il programma stampa ”Ciao”.
D Al punto 2: il valore di A[2] e’ 2.0.

Domanda 7
Si considerino i vettori nel linguaggio C:
A Gli elementi di un vettore sono tutti dello stesso tipo.
B Un vettore di caratteri può essere considerato una stringa se non contiene il carattere ’0’.
C Nella definizione di un vettore, la dimensione può essere espressa mediante il nome di una
   variabile.
D L’indice di un elemento può essere una variabile di tipo float.

Domanda 8
Si considerino i tipi di dato scalari primitivi nel linguaggio C:
A La sottrazione tra un float e un char produce un errore in compilazione.
B Nel linguaggio C il vettore è un tipo scalare primitivo.
C L’applicazione della regola di conversione implicita produce una espressione in cui tutti gli
    operandi assumono uno stesso tipo.
D Il criterio di equivalenza strutturale può consentire l’assegnamento del valore di una variabile di
   tipo non primitivo a una variabile di tipo scalare primitivo.
Domanda 9
Si consideri il seguente programma C:
#include <stdio.h>
#define N 9
int f(int *a, int b) {
if( *a < *(a+b) ) /* punto 1 */
return b;
else
return *a=f( a, b+1 )+b;
}
main() {
int i, V[N]={0,1,2,3,4,5,6,7,8};
for ( i=N-1; i>=0; i-=2 )
V[i]=(i+5)/2;
/*punto 2 */
printf("%dnn", f(V,0));
/* punto 3 */
for (i=0; i<N; i++) /* punto 4*/
printf("%dn", V[i]);
}

A L’istruzione prima del punto 2 (V[i]=(i+5)/2) viene eseguita 4 volte.
B La funzione f `e tail-ricorsiva.
C L’istruzione prima del punto 1 (if( *a<*(a+b) )) viene eseguita 3 volte.
D L’istruzione al punto 3 stampa il valore 6.

Domanda 10
Si considerino le funzioni nel linguaggio C:
A Un file sorgente C, per essere compilato correttamente, deve contenere tutte le definizioni di
       tutte le funzioni che utilizza.
B Una funzione non può restituire un tipo struct.
C Le istanze di funzioni utilizzano dei record di attivazione che vengono deallocati ogni volta che
   vengono generate ricorsivamente altre istanze della stessa funzione.
D I parametri formali di una istanza di una funzione vengono inizializzati al valore dei parametri
   effettivi (attuali) all’atto della chiamata.

Weitere ähnliche Inhalte

Was ist angesagt?

Laboratorio Programmazione: Operatori logici
Laboratorio Programmazione: Operatori logiciLaboratorio Programmazione: Operatori logici
Laboratorio Programmazione: Operatori logiciMajong DevJfu
 
Algoritmo probabilistico di tipo montecarlo per il list decoding
Algoritmo probabilistico di tipo montecarlo per il list decodingAlgoritmo probabilistico di tipo montecarlo per il list decoding
Algoritmo probabilistico di tipo montecarlo per il list decodingdanielenicassio
 
Algoritmo probabilistico di tipo montecarlo per il list decoding elaborato
Algoritmo probabilistico di tipo montecarlo per il list decoding   elaboratoAlgoritmo probabilistico di tipo montecarlo per il list decoding   elaborato
Algoritmo probabilistico di tipo montecarlo per il list decoding elaboratodanielenicassio
 
Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)STELITANO
 
Python - Primi passi
Python - Primi passi Python - Primi passi
Python - Primi passi orestJump
 
Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...
Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...
Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...Cristian Randieri PhD
 
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0Strutture fondamentali della_programmaizone_visual_basicv2014_1.0
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0I.S.I.S. "Antonio Serra" - Napoli
 
Lezione 6 (12 marzo 2012)
Lezione 6 (12 marzo 2012)Lezione 6 (12 marzo 2012)
Lezione 6 (12 marzo 2012)STELITANO
 
Laboratorio Programmazione: Overflow e switch
Laboratorio Programmazione: Overflow e switchLaboratorio Programmazione: Overflow e switch
Laboratorio Programmazione: Overflow e switchMajong DevJfu
 
Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)STELITANO
 
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...Paolo Oltramonti
 
Lezione 21 (2 maggio 2012)
Lezione 21 (2 maggio 2012)Lezione 21 (2 maggio 2012)
Lezione 21 (2 maggio 2012)STELITANO
 
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...Paolo Oltramonti
 
Ecdl modulo 1 -Fondamenti
Ecdl modulo 1 -FondamentiEcdl modulo 1 -Fondamenti
Ecdl modulo 1 -FondamentiAngela Cristina
 
05 - Programmazione: Funzioni
05 - Programmazione: Funzioni05 - Programmazione: Funzioni
05 - Programmazione: FunzioniMajong DevJfu
 

Was ist angesagt? (19)

Laboratorio Programmazione: Operatori logici
Laboratorio Programmazione: Operatori logiciLaboratorio Programmazione: Operatori logici
Laboratorio Programmazione: Operatori logici
 
Algoritmo probabilistico di tipo montecarlo per il list decoding
Algoritmo probabilistico di tipo montecarlo per il list decodingAlgoritmo probabilistico di tipo montecarlo per il list decoding
Algoritmo probabilistico di tipo montecarlo per il list decoding
 
Informatica di base
Informatica di baseInformatica di base
Informatica di base
 
Algoritmo probabilistico di tipo montecarlo per il list decoding elaborato
Algoritmo probabilistico di tipo montecarlo per il list decoding   elaboratoAlgoritmo probabilistico di tipo montecarlo per il list decoding   elaborato
Algoritmo probabilistico di tipo montecarlo per il list decoding elaborato
 
Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)
 
Flow chart
Flow chartFlow chart
Flow chart
 
Python - Primi passi
Python - Primi passi Python - Primi passi
Python - Primi passi
 
Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...
Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...
Lezioni di programmazione in c le stringhe By Cristian Randieri - www.intelli...
 
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0Strutture fondamentali della_programmaizone_visual_basicv2014_1.0
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0
 
Lezione 6 (12 marzo 2012)
Lezione 6 (12 marzo 2012)Lezione 6 (12 marzo 2012)
Lezione 6 (12 marzo 2012)
 
Laboratorio Programmazione: Overflow e switch
Laboratorio Programmazione: Overflow e switchLaboratorio Programmazione: Overflow e switch
Laboratorio Programmazione: Overflow e switch
 
Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)
 
Scomposizione di programmi e approccio in visual basic
Scomposizione di programmi e approccio in visual basicScomposizione di programmi e approccio in visual basic
Scomposizione di programmi e approccio in visual basic
 
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
 
Lezione 21 (2 maggio 2012)
Lezione 21 (2 maggio 2012)Lezione 21 (2 maggio 2012)
Lezione 21 (2 maggio 2012)
 
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
Conversione diretta ed inversa tra automi a stati non definiti (nfa) ed espre...
 
Ecdl modulo 1 -Fondamenti
Ecdl modulo 1 -FondamentiEcdl modulo 1 -Fondamenti
Ecdl modulo 1 -Fondamenti
 
come costruire un algoritmo
come costruire un algoritmocome costruire un algoritmo
come costruire un algoritmo
 
05 - Programmazione: Funzioni
05 - Programmazione: Funzioni05 - Programmazione: Funzioni
05 - Programmazione: Funzioni
 

Andere mochten auch

Lezione 18 (18 aprile 2012) ordinamenti
Lezione 18 (18 aprile 2012)   ordinamentiLezione 18 (18 aprile 2012)   ordinamenti
Lezione 18 (18 aprile 2012) ordinamentiSTELITANO
 
Lezione 5 (7 marzo 2012)
Lezione 5 (7 marzo 2012)Lezione 5 (7 marzo 2012)
Lezione 5 (7 marzo 2012)STELITANO
 
Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)STELITANO
 
Lezione 20 (2 maggio 2012) prima parte
Lezione 20 (2 maggio 2012) prima parteLezione 20 (2 maggio 2012) prima parte
Lezione 20 (2 maggio 2012) prima parteSTELITANO
 
Lezione 19 (18 aprile 2012) ricerca
Lezione 19 (18 aprile 2012)   ricercaLezione 19 (18 aprile 2012)   ricerca
Lezione 19 (18 aprile 2012) ricercaSTELITANO
 
Lezione 3 (29 febbraio 2012)
Lezione 3 (29 febbraio 2012)Lezione 3 (29 febbraio 2012)
Lezione 3 (29 febbraio 2012)STELITANO
 

Andere mochten auch (7)

Lezione 18 (18 aprile 2012) ordinamenti
Lezione 18 (18 aprile 2012)   ordinamentiLezione 18 (18 aprile 2012)   ordinamenti
Lezione 18 (18 aprile 2012) ordinamenti
 
Lezione 5 (7 marzo 2012)
Lezione 5 (7 marzo 2012)Lezione 5 (7 marzo 2012)
Lezione 5 (7 marzo 2012)
 
Run for Innovation!
Run for Innovation!Run for Innovation!
Run for Innovation!
 
Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)
 
Lezione 20 (2 maggio 2012) prima parte
Lezione 20 (2 maggio 2012) prima parteLezione 20 (2 maggio 2012) prima parte
Lezione 20 (2 maggio 2012) prima parte
 
Lezione 19 (18 aprile 2012) ricerca
Lezione 19 (18 aprile 2012)   ricercaLezione 19 (18 aprile 2012)   ricerca
Lezione 19 (18 aprile 2012) ricerca
 
Lezione 3 (29 febbraio 2012)
Lezione 3 (29 febbraio 2012)Lezione 3 (29 febbraio 2012)
Lezione 3 (29 febbraio 2012)
 

Ähnlich wie Soluzioni abilità informatiche 16 maggio 2012

Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)STELITANO
 
Sistemi Operativi: Il kernel linux - Lezione 06
Sistemi Operativi: Il kernel linux - Lezione 06Sistemi Operativi: Il kernel linux - Lezione 06
Sistemi Operativi: Il kernel linux - Lezione 06Majong DevJfu
 
Esercitazione 1 (27 febbraio 2012)
Esercitazione 1 (27 febbraio 2012)Esercitazione 1 (27 febbraio 2012)
Esercitazione 1 (27 febbraio 2012)STELITANO
 
Fondamenti di Informatica - Esercitazione3 (1).pdf
Fondamenti di Informatica - Esercitazione3 (1).pdfFondamenti di Informatica - Esercitazione3 (1).pdf
Fondamenti di Informatica - Esercitazione3 (1).pdflorenzosalvi30
 
Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)STELITANO
 
Concorso Informatici C3 INPS 2007 - Banca Dati
Concorso Informatici C3 INPS 2007 - Banca DatiConcorso Informatici C3 INPS 2007 - Banca Dati
Concorso Informatici C3 INPS 2007 - Banca DatiConcorsando.it
 
Vogliamo programmatori stupidi e pigri!
Vogliamo programmatori stupidi e pigri!Vogliamo programmatori stupidi e pigri!
Vogliamo programmatori stupidi e pigri!Marcello Missiroli
 
Effective Code Transformations in C++
Effective Code Transformations in C++Effective Code Transformations in C++
Effective Code Transformations in C++Marco Arena
 
Laboratorio Programmazione: In - Out variabili
Laboratorio Programmazione: In - Out variabiliLaboratorio Programmazione: In - Out variabili
Laboratorio Programmazione: In - Out variabiliMajong DevJfu
 
Algoritmi di ordinamento
Algoritmi di ordinamento Algoritmi di ordinamento
Algoritmi di ordinamento Emilia Calzetta
 
A brief intro to TDD for a JUG-TAA event
A brief intro to TDD for a JUG-TAA eventA brief intro to TDD for a JUG-TAA event
A brief intro to TDD for a JUG-TAA eventPietro Di Bello
 
Analizzatori di programmi in C
Analizzatori di programmi in CAnalizzatori di programmi in C
Analizzatori di programmi in CBoymix81
 

Ähnlich wie Soluzioni abilità informatiche 16 maggio 2012 (20)

Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)
 
La scomposizione in sotto programmi in C++.pptx
La scomposizione in sotto programmi in C++.pptxLa scomposizione in sotto programmi in C++.pptx
La scomposizione in sotto programmi in C++.pptx
 
Sistemi Operativi: Il kernel linux - Lezione 06
Sistemi Operativi: Il kernel linux - Lezione 06Sistemi Operativi: Il kernel linux - Lezione 06
Sistemi Operativi: Il kernel linux - Lezione 06
 
Esercitazione 1 (27 febbraio 2012)
Esercitazione 1 (27 febbraio 2012)Esercitazione 1 (27 febbraio 2012)
Esercitazione 1 (27 febbraio 2012)
 
Fondamenti di Informatica - Esercitazione3 (1).pdf
Fondamenti di Informatica - Esercitazione3 (1).pdfFondamenti di Informatica - Esercitazione3 (1).pdf
Fondamenti di Informatica - Esercitazione3 (1).pdf
 
Algoritmi
Algoritmi Algoritmi
Algoritmi
 
Riepilogo Java C/C++
Riepilogo Java C/C++Riepilogo Java C/C++
Riepilogo Java C/C++
 
Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)Lezione 12 (28 marzo 2012)
Lezione 12 (28 marzo 2012)
 
Concorso Informatici C3 INPS 2007 - Banca Dati
Concorso Informatici C3 INPS 2007 - Banca DatiConcorso Informatici C3 INPS 2007 - Banca Dati
Concorso Informatici C3 INPS 2007 - Banca Dati
 
Modulo 1 - Lezione 1
Modulo 1 - Lezione 1Modulo 1 - Lezione 1
Modulo 1 - Lezione 1
 
Dal c a Java (3/3)
Dal c a Java (3/3)Dal c a Java (3/3)
Dal c a Java (3/3)
 
Vogliamo programmatori stupidi e pigri!
Vogliamo programmatori stupidi e pigri!Vogliamo programmatori stupidi e pigri!
Vogliamo programmatori stupidi e pigri!
 
Effective Code Transformations in C++
Effective Code Transformations in C++Effective Code Transformations in C++
Effective Code Transformations in C++
 
7 Sottoprogrammi
7   Sottoprogrammi7   Sottoprogrammi
7 Sottoprogrammi
 
Laboratorio Programmazione: In - Out variabili
Laboratorio Programmazione: In - Out variabiliLaboratorio Programmazione: In - Out variabili
Laboratorio Programmazione: In - Out variabili
 
Algoritmi di ordinamento
Algoritmi di ordinamento Algoritmi di ordinamento
Algoritmi di ordinamento
 
Vb.Net
Vb.NetVb.Net
Vb.Net
 
1.01 Algoritmi
1.01 Algoritmi1.01 Algoritmi
1.01 Algoritmi
 
A brief intro to TDD for a JUG-TAA event
A brief intro to TDD for a JUG-TAA eventA brief intro to TDD for a JUG-TAA event
A brief intro to TDD for a JUG-TAA event
 
Analizzatori di programmi in C
Analizzatori di programmi in CAnalizzatori di programmi in C
Analizzatori di programmi in C
 

Mehr von STELITANO

Dispenza aloisi
Dispenza aloisiDispenza aloisi
Dispenza aloisiSTELITANO
 
Lezione 23 (9 maggio 2012)
Lezione 23 (9 maggio 2012)Lezione 23 (9 maggio 2012)
Lezione 23 (9 maggio 2012)STELITANO
 
Lezione 22 (7 maggio 2012)
Lezione 22 (7 maggio 2012)Lezione 22 (7 maggio 2012)
Lezione 22 (7 maggio 2012)STELITANO
 
Lezione 20 (2 maggio 2012) seconda parte
Lezione 20 (2 maggio 2012) seconda parteLezione 20 (2 maggio 2012) seconda parte
Lezione 20 (2 maggio 2012) seconda parteSTELITANO
 
Lezione 15 (2 aprile 2012)
Lezione 15 (2 aprile 2012)Lezione 15 (2 aprile 2012)
Lezione 15 (2 aprile 2012)STELITANO
 
Lezione 14 (2 aprile 2012)
Lezione 14 (2 aprile 2012)Lezione 14 (2 aprile 2012)
Lezione 14 (2 aprile 2012)STELITANO
 
Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)STELITANO
 
Lezione 16 (2 aprile 2012)
Lezione 16 (2 aprile 2012)Lezione 16 (2 aprile 2012)
Lezione 16 (2 aprile 2012)STELITANO
 
Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)STELITANO
 
Lezione 12 (28 marzo 2012) puntatori vettori
Lezione 12 (28 marzo 2012) puntatori   vettoriLezione 12 (28 marzo 2012) puntatori   vettori
Lezione 12 (28 marzo 2012) puntatori vettoriSTELITANO
 
Lezione 12 (28 marzo 2012) funzioni memoria - puntatori
Lezione 12 (28 marzo 2012) funzioni   memoria - puntatoriLezione 12 (28 marzo 2012) funzioni   memoria - puntatori
Lezione 12 (28 marzo 2012) funzioni memoria - puntatoriSTELITANO
 
Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)STELITANO
 
Eserc v del 26 marzo 2012
 Eserc v del 26 marzo 2012 Eserc v del 26 marzo 2012
Eserc v del 26 marzo 2012STELITANO
 
Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)STELITANO
 
Lezione 10 (21 marzo 2012)3
Lezione 10 (21 marzo 2012)3Lezione 10 (21 marzo 2012)3
Lezione 10 (21 marzo 2012)3STELITANO
 
Lezione 10 (21 marzo 2012)2
Lezione 10 (21 marzo 2012)2Lezione 10 (21 marzo 2012)2
Lezione 10 (21 marzo 2012)2STELITANO
 
Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)STELITANO
 
Esercitazione 4 (19 marzo 2012)
Esercitazione 4 (19 marzo 2012)Esercitazione 4 (19 marzo 2012)
Esercitazione 4 (19 marzo 2012)STELITANO
 
Esercitazione 3 (14 marzo 2012)
Esercitazione 3 (14 marzo 2012)Esercitazione 3 (14 marzo 2012)
Esercitazione 3 (14 marzo 2012)STELITANO
 

Mehr von STELITANO (20)

Risultati
RisultatiRisultati
Risultati
 
Dispenza aloisi
Dispenza aloisiDispenza aloisi
Dispenza aloisi
 
Lezione 23 (9 maggio 2012)
Lezione 23 (9 maggio 2012)Lezione 23 (9 maggio 2012)
Lezione 23 (9 maggio 2012)
 
Lezione 22 (7 maggio 2012)
Lezione 22 (7 maggio 2012)Lezione 22 (7 maggio 2012)
Lezione 22 (7 maggio 2012)
 
Lezione 20 (2 maggio 2012) seconda parte
Lezione 20 (2 maggio 2012) seconda parteLezione 20 (2 maggio 2012) seconda parte
Lezione 20 (2 maggio 2012) seconda parte
 
Lezione 15 (2 aprile 2012)
Lezione 15 (2 aprile 2012)Lezione 15 (2 aprile 2012)
Lezione 15 (2 aprile 2012)
 
Lezione 14 (2 aprile 2012)
Lezione 14 (2 aprile 2012)Lezione 14 (2 aprile 2012)
Lezione 14 (2 aprile 2012)
 
Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)
 
Lezione 16 (2 aprile 2012)
Lezione 16 (2 aprile 2012)Lezione 16 (2 aprile 2012)
Lezione 16 (2 aprile 2012)
 
Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)Lezione 13 (2 aprile 2012)
Lezione 13 (2 aprile 2012)
 
Lezione 12 (28 marzo 2012) puntatori vettori
Lezione 12 (28 marzo 2012) puntatori   vettoriLezione 12 (28 marzo 2012) puntatori   vettori
Lezione 12 (28 marzo 2012) puntatori vettori
 
Lezione 12 (28 marzo 2012) funzioni memoria - puntatori
Lezione 12 (28 marzo 2012) funzioni   memoria - puntatoriLezione 12 (28 marzo 2012) funzioni   memoria - puntatori
Lezione 12 (28 marzo 2012) funzioni memoria - puntatori
 
Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)Lezione 11 (26 marzo 2012)
Lezione 11 (26 marzo 2012)
 
Eserc v del 26 marzo 2012
 Eserc v del 26 marzo 2012 Eserc v del 26 marzo 2012
Eserc v del 26 marzo 2012
 
Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)
 
Lezione 10 (21 marzo 2012)3
Lezione 10 (21 marzo 2012)3Lezione 10 (21 marzo 2012)3
Lezione 10 (21 marzo 2012)3
 
Lezione 10 (21 marzo 2012)2
Lezione 10 (21 marzo 2012)2Lezione 10 (21 marzo 2012)2
Lezione 10 (21 marzo 2012)2
 
Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)Lezione 10 (21 marzo 2012)
Lezione 10 (21 marzo 2012)
 
Esercitazione 4 (19 marzo 2012)
Esercitazione 4 (19 marzo 2012)Esercitazione 4 (19 marzo 2012)
Esercitazione 4 (19 marzo 2012)
 
Esercitazione 3 (14 marzo 2012)
Esercitazione 3 (14 marzo 2012)Esercitazione 3 (14 marzo 2012)
Esercitazione 3 (14 marzo 2012)
 

Soluzioni abilità informatiche 16 maggio 2012

  • 1. Abilità Informatiche Ingegneria Chimica Università di Roma “La Sapienza” Esercitazione del 16 Maggio 2012 Nome: Cognome: Matricola: Le risposte corrette valgono 1 punto, quelle errate -0,25 punti, quelle non date 0 punti Nota: Tra le proposte per ciascuna domanda una sola è esatta Domanda 1 Si consideri l’architettura di un Personal Computer. A Il clock comunica l’ora corrente ai dispositivi che la richiedono. B Durante un ciclo di esecuzione il registro PC contiene l’indirizzo dell’istruzione da eseguire nel ciclo successivo. C La memoria cache di primo livello non è volatile. D L’accesso ai registri della CPU è più lento rispetto all’accesso alla cache di primo livello. Domanda 2 Linguaggi di programmazione: A Un programma espresso in linguaggio macchina è una sequenza di bit B Un programma scritto in linguaggio assembler non necessita di traduzione. C Il debugger serve per trovare pi`u facilmente errori sintattici nei programmi. D Un programma che viene compilato Domanda 3 Si consideri il seguente programma C: #include <stdio.h> main() { int A=2; float B=A--; char C=A; if (--B) if(--A) C=’B’; else C=’A’; else C=A; /* punto 1 */ B=(A+=3, A--); /*istruzione 1*/ /* punto 2 */ { float num; num=(C>’B’? B--: B/A); /* punto 3*/ } /*punto 4*/ } A Al punto 3 la variabile num ha valore 8.8. B Al punto 4 la variabile num e‘ visibile. C L’istruzione 1 effettua 2 assegnamenti. D Al punto 1 la variabile A ha valore 0.
  • 2. Domanda 4 Si consideri il seguente programma C: #include <stdio.h> main() {int x; float y; char z, w; x=4; y=-2; z=’B’; w=’C’; x=( x%(int)y ?++x: w-z); /* istruzione 1 */ y=x++/y; /* istruzione 2 */ w=z+=1; w-=z; /* istruzione 3 */ } A Immediatamente dopo l’esecuzione dell’istruzione 3, la variabile w ha valore ’0’. B nell’istruzione1 non è necessario dichiarare la variabile x. C Il programma può essere eseguito correttamente. D Immediatamente dopo l’esecuzione dell’istruzione1, la variabile x ha il valore corrispondente al codice ASCII del carattere ’A’. Domanda 5 Si consideri il seguente programma C: #include <stdio.h> main() {int x[4]={0, 3, 4, 8}; int j, A, B=0, C; for(j=3; j>=0; j--) /*istruzione 1*/ switch(x[j]%3-1) /*istruzione 2*/ {case 0: x[j]--; case 1: A=x[j]; break; case 2: C=0; break; default: B=--A; } C=x[0]+x[2] - B; /* istruzione 3*/ } A Immediatamente dopo l’istruzione 3, la variabile C ha il valore 3. B Al termine dell’esecuzione, il valore di due elementi di V risultano modificati rispetto ai loro valori iniziali. C Al termine dell’esecuzione, il valore di V[3] e‘ uguale a 7. D Immediatamente dopo l’istruzione 3, la variabile A ha il valore 1.
  • 3. Domanda 6 Si consideri il seguente programma C: #include <stdio.h> #define N 8 main() {typedef float f[N]; typedef char c[N]; f A={0,0.5,1,1.5,2.0,2.5,3.0,3.5}; c B={’C’,’i’,’a’,’o’,0,1,2,3}; int i; A[N-1]=0; for (i=1; i<N; i+=i) A[i]=B[N-i]/i; /* punto 1 */ if (A[--i]?1:A[0]) printf("Ciao!n"); else {i=A[0]; for (;i<5;) printf("%c", B[i++]); } /* punto 2*/ } A Il programma contiene un errore di sintassi. B Al punto 2: A[i-1] ha valore 4.0. C Il programma stampa ”Ciao”. D Al punto 2: il valore di A[2] e’ 2.0. Domanda 7 Si considerino i vettori nel linguaggio C: A Gli elementi di un vettore sono tutti dello stesso tipo. B Un vettore di caratteri può essere considerato una stringa se non contiene il carattere ’0’. C Nella definizione di un vettore, la dimensione può essere espressa mediante il nome di una variabile. D L’indice di un elemento può essere una variabile di tipo float. Domanda 8 Si considerino i tipi di dato scalari primitivi nel linguaggio C: A La sottrazione tra un float e un char produce un errore in compilazione. B Nel linguaggio C il vettore è un tipo scalare primitivo. C L’applicazione della regola di conversione implicita produce una espressione in cui tutti gli operandi assumono uno stesso tipo. D Il criterio di equivalenza strutturale può consentire l’assegnamento del valore di una variabile di tipo non primitivo a una variabile di tipo scalare primitivo.
  • 4. Domanda 9 Si consideri il seguente programma C: #include <stdio.h> #define N 9 int f(int *a, int b) { if( *a < *(a+b) ) /* punto 1 */ return b; else return *a=f( a, b+1 )+b; } main() { int i, V[N]={0,1,2,3,4,5,6,7,8}; for ( i=N-1; i>=0; i-=2 ) V[i]=(i+5)/2; /*punto 2 */ printf("%dnn", f(V,0)); /* punto 3 */ for (i=0; i<N; i++) /* punto 4*/ printf("%dn", V[i]); } A L’istruzione prima del punto 2 (V[i]=(i+5)/2) viene eseguita 4 volte. B La funzione f `e tail-ricorsiva. C L’istruzione prima del punto 1 (if( *a<*(a+b) )) viene eseguita 3 volte. D L’istruzione al punto 3 stampa il valore 6. Domanda 10 Si considerino le funzioni nel linguaggio C: A Un file sorgente C, per essere compilato correttamente, deve contenere tutte le definizioni di tutte le funzioni che utilizza. B Una funzione non può restituire un tipo struct. C Le istanze di funzioni utilizzano dei record di attivazione che vengono deallocati ogni volta che vengono generate ricorsivamente altre istanze della stessa funzione. D I parametri formali di una istanza di una funzione vengono inizializzati al valore dei parametri effettivi (attuali) all’atto della chiamata.