Come si può vedere, il risultato non è completamente incoraggiante. Consiglio di confrontare con le proprie risposte, e approfondire gli argomenti su cui avete fatto errori.
Le risposte corrette le ho segnate in rosso. Le risposte più quotate sono segnate in grassetto.
La domanda 3, in cui la risposta più data non è quella corretta, è la più preoccupante!
Per le altre domande, spesso la percentuale di risposte sbagliate è davvero alta!
|
| Total Started Survey: | 43 | Total Completed Survey: | 40 (93%) | |
Page: Passaggio di parametri
1. int cubo(int x); |
| Response Percent | Response Count |
x per valore, ritorno per valore | | 76.7% | 33 |
x per riferimento, ritorno per valore | | 14.0% | 6 |
x per valore, ritorno per riferimento | | 4.7% | 2 |
x per riferimento, ritorno per riferimento | | 4.7% | 2 |
| answered question | 43 |
| skipped question | 0
|
2. Per cambiare il segno di una variabile int mediante una funzione la cui chiamata nel main è la seguente: CambioSegno(i); l’intestazione della funzione deve essere: |
| Response Percent | Response Count |
void CambioSegno(int x); | | 19.1% | 8 |
void CambioSegno(int& x); | | 66.7% | 28 |
int CambioSegno(int* px); | | 14.3% | 6 |
| answered question | 42 |
| skipped question | 1
|
3. Il parametro attuale a in: main() { int a; f(a); } è passato: |
| Response Percent | Response Count |
per valore | | 52.4% | 22 |
per riferimento |
| 0.0% | 0 |
non si può stabilire senza guardare la dichiarazione della funzione | | 47.6% | 20 |
| answered question | 42 |
| skipped question | 1
|
4. In questo programma: void f(int val, int& rif) { val++; rif++; } main() { int i = 1; int j = 1; f(i,j); cout <<> |
| Response Percent | Response Count |
1 1 | | 7.1% | 3 |
1 2 | | 78.6% | 33 |
2 1 | | 4.8% | 2 |
2 2 | | 9.5% | 4 |
| answered question | 42 |
| skipped question | 1
|
Page: Passaggio di parametri con puntatori
5. Si consideri il passaggio del parametro nel seguente programma: void f(int* v) { // ... } main() { int v[1000]; f(v); } Si tratta di: |
| Response Percent | Response Count |
passaggio per valore dell’array v | | 5.0% | 2 |
passaggio per valore del puntatore alla prima locazione dell’array | | 60.0% | 24 |
passaggio per riferimento dell’array | | 12.5% | 5 |
pass per riferimento del puntatore alla prima locazione | | 22.5% | 9 |
| answered question | 40 |
| skipped question | 3
|
6. Questa funzione: int* f() { int l; // ... return &l; } |
| Response Percent | Response Count |
è corretta | | 22.5% | 9 |
crea un errore a runtime perché l’indirizzo restituito al chiamante non esiste più | | 30.0% | 12 |
rende il programma imprevedibile perché il contenuto della locazione puntata può essere cambiato | | 47.5% | 19 |
| answered question | 40 |
| skipped question | 3
|
7. void f(int*& p) { p++; } |
| Response Percent | Response Count |
corretta, modifica il parametro attuale | | 47.5% | 19 |
corretta, incrementa l’oggetto puntato dal parametro attuale | | 35.0% | 14 |
errata | | 17.5% | 7 |
| answered question | 40 |
| skipped question | 3
|
Page: Memoria dinamica
8. delete p; |
| Response Percent | Response Count |
dichiara libera la locazione di memoria puntata da p | | 87.2% | 34 |
cancella il contenuto della locazione puntata da p | | 7.7% | 3 |
cancella il contenuto del puntatore p | | 5.1% | 2 |
| answered question | 39 |
| skipped question | 4
|
9. int* v = new int[100]; Data questa dichiarazione si può affermare che v[0] e *v: |
| Response Percent | Response Count |
sono equivalenti | | 72.5% | 29 |
indicano rispettivamente un int e un puntatore | | 17.5% | 7 |
sono equivalenti, ma la seconda è sconsigliabile | | 10.0% | 4 |
solo la seconda è corretta |
| 0.0% | 0 |
| answered question | 40 |
| skipped question | 3
|
10. In questa funzione, il cui scopo è quello di allocare un array di 100 elementi interi e associarne l'indirizzo della prima locazione al parametro attuale: void Alloca(...p) { p = new int[100]; } i puntini di sospensione vanno sostituiti con: |
| Response Percent | Response Count |
int* | | 37.5% | 15 |
int& | | 12.5% | 5 |
int*& | | 42.5% | 17 |
nessuna delle precedenti | | 7.5% | 3 |
| answered question | 40 |
| skipped question |