






Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Test d'esame elementi di informatica
Tipologia: Prove d'esame
1 / 12
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!







Ad ogni variabile vengono associati Nome e tipo Al termine di un blocco condizionale IF, un programma in linguaggio C Prosegue in modo sequenziale AlgoBuild.com è un esempio di servizio su cloud per La scrittura di flow-chart Code::Blocks è un ambiente IDE CodeLIte è un IDE Data la variabile h=9, l'espressione h%=3 dà come risultato il valore h= Data una funzione ricorsiva Ne esiste sempre una versione iterativa Dato il seguente array in linguaggio C: int MyArray[24], la funzione MyFunction(MyArray, 24 ) Può modificare l'array Dato il seguente frammento di codice:(for int i=0;i Locale al blocco for Dato il vettore V={7,4,2,5,8,2,3,3}, dopo due passate del bubble sort, il vettore sarà V={2,4,5,2,3,3,7,8} Dato il vettore V={8,1,2,3,4}, dopo la prima passata del bubble sort, si avrà V={1,2,3,4,8} Dato un distributore di bibite, l'algoritmo di selezione della bibita è rivolto a Un umano Dato un vettore di 50 elementi già ordinato, quanti passi deve fare al più l'algoritmo di ricerca dicotomica per trovare il valore cercato? 6 Definendo table come un array intero con 3 righe e 3 colonne, esso contiene 9 elementi Durante l'esecuzione di un algoritmo da parte di un esecutore Cambiano i valori delle variabili For(int counter=1;counter Stampa 10 volte il valore corrente della variabile intera m Gli elementi di un arry in memoria RAM Sono memorizzati in locazioni contigue Gli operatoei "" e "&" sono operatori inversi I dati in input ad un elaboratore sono Le rappresentazioni delle informazioni a disposizione I diagrammi di flusso for e while Sono uguali I due operatori == e = esprimono == test di uguagianza e = assegnazione I moduli di un programma sono: Sono blocchi di codice indipendenti dagli altri, che svolgono azioni specifiche I parametri attuali di una funzione I valori che vengono passati alla funzione al momento della chiamata I parametri formali di una funzione sono Variabili locali I valori di inizializzazione di una matrice sono raggruppati per riga tra { } più interne IDE sta per Integrated Development Environment Il bubble sort è un algoritmo che agisce Su un vettore di elementi di qualsiasi tipo tra quelli consentiti dal linguaggio Il bubble sort è un algoritmo di ordinamento di complessità nn Il C mette a disposizione del programmatore 3 strutture iterative Il campo di azione di una variabile definisce Dove la variabile può essere referenziata durante un programma Il ciclo di vita di una variabile locale, in linguaggio c Va dal momento in cui la funzione è invocata fino al ritorno al chiamante Il ciclo esterno nell'algoritmo del Crivello di Eratostene: 'd0….while (flag==1);' termina Solo quando la variabile flag rimane con il valore di default uguale a zero Il ciclo while Può non eseguire cicli
Il compilatore è un programma il quale Traduce il programma sorgente in programma eseguibile Il compilatore utilizza il prototipo di una funzione per Convalidare le chiamate a funzione Il concetto di efficienza di un algoritmo riguarda Il numero di operazioni da eseguire in funzione dei dati in ingresso Il costrutto 'while condizione-P istruzione-A' sta ad indicare Di eseguire l'istruzione A mentre il test P è vero Il debugger serve a Trovare eventuali errori in un programma Il flow-chart rappresenta Una forma grafica di rappresentare un algoritmo Il linguaggio C è stato rilasciato nel 1972 Il passaggio di una matrice ad una funzione, per default, avviene per riferimento IL passo induttivo o ricorsivo della funzione fattotiale è return n*fatt(n-1) Il problema più grande delle funzioni ricorsive è Il controllo dello spazio nell'area stack Il procedimento di costruzione di un programma per raffinamenti successivi prevede le seguenti fasi Top-down e bottom-up Il programma: counter=1;do { printf( '%d ', counter );}while (++counter < = 10); stampa gli interi da 1 a 10 Il prototipo di una funzione Va scritto prima della dichiarazione Il prototipo di una funzione ricorsiva, in linguaggio C Non è diverso da quello di una funzione non ricorsiva Il seguente ciclo while: 'while(a < 3) printf('a < 3\n');' produce Un ciclo infinito se la variabile a contiene un valore minore di 3 Il seguente prototipo di funzione: float f(int,int) Riguarda una funzione che riceve in igresso due interi e restituisce un tipo float Il test: while(num_letto != - 1 && contatore < n), con num_letto=0 Dipende dal valore di n e di contatore Il tipo di dato float ha una dimensione di 4 byte Il tipo di dato int ha una dimensione di 4 byte Il tipo di una variabile indica Che tipo di valore può assumere Il Tipo_valore_ritorno di una funzione di un programma in linguaggio C E' il tipo del risultato restituito dalla funzione Il valore della variabile sentinella Non deve essere confuso con i valori accettabili In linguaggio C, la funzione printf() Scrive su video In linguaggio C, la seguente definizione di variabile: 'Const char *colorPtr=''blue''; ' non consente più di cambiare la stringa durante l'esecuzione del programma In linguaggio C, la seguente istruzione di input: 'scanf('%s',std.place);' Legge da tastiera una stringa e la memorizza nel campo "place" della struttura std In linguaggio C, l'istruzione m=n%p, essendo n=4, p=4, assegna ad m il valore Zero In linguaggio C, lo scope di una variabile globale è L'intero file in cui è definita In linguaggio C, una variabile dichiarata fuori e prima del main() è di tipo Globale In linguaggio C, una variabile dichiarata fuori e prima del main() è di tipo Va dal momento in cui la funzione è invocata fino al ritorno al chiamante In un algoritmo le istruzioni di controllo sono Sequenza, Selezione e iterazione In un algoritmo, le istruzioni possono essere raggruppate in 4 gruppi In un ciclo for l'incremento agisce come se fosse una istruzione In fondo al ciclo In un ciclo for se la condizione è inizialmente falsa Il corpo interno non viene eseguito In un ciclo while l'accumulatore è Una variabile che si modifica ad ogni ciclo, attraverso una operazione di assegnazione
La funzione in linguaggio C 'fputs()' scrive una riga su un file La funzione printf() è la funzione di Output La funzione strtod(string, &strptr) prende in input la stringa string e la converte in un double La funzione: int fun(int a, int b, int c){ int n;n= abc;return n;} rappresenta una chiamata Per valore La possibilita nel linguaggio C di utilizzare i VLA è data dallo standard ANSI C- 99 La programmazione strutturata riguarda La costruzione di un algoritmo o di un programma La programmazione strutturata si basa Sul teorema di Böhm-Iacopini La proprietà di ESEGUIBILITA' di un algoritmo riguarda La proprietà di ciascuna istruzione di essere eseguita ed in tempo finito La proprietà di FINITEZZA di un algoritmo riguarda Il tempo di esecuzione di un algoritmo La proprietà di NON AMBIGUITA' di un algoritmo riguarda L'interpretabilità delle singole istruzioni da parte dell'esecutore La ricerca binaria si può effettuare solo quando la sequenza è ordinata La ricerca lineare si può applicare quando la sequenza è non ordinata La riga seguente: case 7: case 11: inserita all'interno di una struttura switch in linguaggio C significa che Il caso 7 ed 11 producono lo stesso effetto La seguente dichiarazione struct data{ int giorno; int mese; int anno; }; definisce un nuovo tipo di dato La seguente istruzione del in linguaggio C: 'printf('\n\n');' E' corretta e produce il salto di due linee nella visuaizzazione su schermo La seguente istruzione del linguaggio C: scanf('%c') E' incompleta perché manca l'allocazione in memoria del valore letto La seguente istruzione in linguaggio C: 'fp=fopen('pippo.txt','w+');' Crea un file per l'aggiornamento. Se il file esiste già, elimina i contenuti correnti La seguente istruzione in linguaggio C: 'scanf(''%19s'', word);', causa la lettura di una stringa di al massimo 19 caratteri memorizzati nella variabile stringa word La stringa "mercatorum"in linguaggio C è rappresentata con un array di 11 caratteri La struttura di controllo switch Prevede una sequenza di etichette case più una di default (opzionale) La struttura di controllo while conviene usarla quando La variabile in ingresso non ha un valore conosciuto a priori ma dipende dall'esecuzione del programma La struttura in figura rappresenta La selezione La struttura while del linguaggio C è una struttura Iterativa La tecnica di tracing serve a Verificare se un algoritmo è corretto La tecnica top down di costruzione di un programma segue un metodo di Raffinamenti successici La variabile accumulatore Accumula valori legati al ciclo in un blocco iterativo La variabile contatore Conta il numero di cicli in un blocco iterativo La variabile sentinella nell'algoritmo bubble sort serve a verificare se ci sono stati scambi in una passata La verifica esistenziale consiste nel determinare se una una sequenza di elementi contiene un valore chiave La verifica unicersale consiste nel determinare se una sequenza di elementi verifica una determinata proprietà p La verifica universale si può sempre ricondurre a una verifica esistenziale
La videata: L'algoritmo bubble sort si basa su scambi tra elementi adiacenti L'algoritmo della verifica esistenziale si basa su una variabile Boolean L'algoritmo denominato Crivello di Eratostene serve a Determinare quanti numeri primi esistono tra 2 ed n L'algoritmo di Euclide riguarda Il calcolo del massimo comun divisore L'algoritmo di ordinamento bubble sort è composto da due cicli di passate uno dentro l'altro L'algoritmo di ricerca binaria ha una complessità pari a Log(n) L'algoritmo di ricerca lineare ha una complessità pari a nn L'area Stack è Una parte della memoria centrale (RAM) dedicata L'area Stack è una struttura dati organizzata a Pila L'array è un tipo di dato Strutturato L'astrazione di una funzione consente di Nascondere i dettagli implementativi di una funzione Le chiamate a funzione possono essere Per riferimento e per valore Le due operazioni obbligatorie per lavorare con un file sono apertura e chiusura Le fasi operative per poter eseguire un programma scritto in linguaggio C sono, in ordine sequenziale Precompilazione, compilazione, linking Le funzioni consentono di Non replicare codice esistente Le funzioni Implementano i moduli nel linguaggio C Le istruzioni che compongono il corpo di una funzione costituiscono Il corpo della funzione Le operazioni ammesse nell'area stack sono PUSH e POP Le precondizioni di un algoritmo sono Condizioni che devono essere verificate affinchè l’algoritmo funzioni Le regole della programmazione strutturata fanno uso di regole del tipo single- entry/single-exit Le regole della programmazione strutturata si basano sul teorema di Jacopini-Bohm Le strutture di controllo si possono annidare A vari livelli Le variabili locali hanno permanenza in memoria automatica L'elaboratore è Un esecutore di una sequenza di operazioni che trasformano input in output L'esecutore di un algoritmo è Chi o cosa lo esegue, attenendosi a determinate regole di risoluzione L'espressione ++(i+j) è una espressione Che non è permessa L'espressione a ++i equivale a a*(i+1) L'espressione c-- equivale a c=c- 1 L'espressione c++ equivale a c=c+ L'espressione c+=3 è equivalente a c=c+ L'espressione Fib(n) = Fib(n-1) + Fib(n-2) rappresenta Il passo induttivo della funzione ricorsiva di Fibonacci L'espressione: 1 + (rand() % 20), genera un numero casuale compreso tra 1 e 20 L'insieme di attributi completo di una variabile, in linguaggio c, è composto da: Nome, tipo, dimensione e valore L'istruzione 8 = y in un programma non è mai valida
L'operazione POP sull'area stack provoca La cancellazione di un record di attivazione L'operazione PUSH sull'area stack provoca La creazione di un record di attivazione L'ordinamento di un array può essere svolto se e solo se presenta almeno due componenti, di qualunque tipo di dato si tratti L'ultimo carattere di una stringa nel linguaggio C deve essere sempre \0' L'uso di una funzione avviene attraverso L'istruzione di invocazione o chiamata Nel blocco while con il test in ingresso i < 10, la variabile i prende il nome di Variabile contatore Nel caso di un esecutore automatico è necessario Un linguaggio di programmazione Nel ciclo do...while per istruzione si intende sia la singola istruzione che un blocco istruzioni Nel ciclo do...while, le istruzioni del blocco iterativo sono eseguite almeno una volta Nel costrutto do...while, la condizione viene controllata a fine ciclo Nel linguaggio C, avere in una funzione come parametro formale 'int *Vett' dove Vett è un array di n interi, equivale ad avere come parametro formale int Vett[] Nel linguaggio C, ciascuna funzione deve terminare con l'istruzione return Nel linguaggio C, data la seguente dichiarazione: 'const int const Ptr = &x;', si ha che Né x nè myPtr possono essere cambiati Nel linguaggio C, data la variabile fattoriale, l'istruzione: 'fattoriale =i;' significa fattoriale = fattoriale * i Nel linguaggio C, dati i due seguenti valori: a=1, b=0 il test: if(a||b) torna il valore VERO Nel linguaggio C, dati i due seguenti valori:a=01010101 e b=10101010,il test: if(a&b) fornisce come risultato FALSO Nel linguaggio C, dato un un array di strutture chiamato giorni, l'istruzione: 'giorni[12].giorno=23; ' assegna alla componente 13-ma dell'array di strutture, nella componente giorno, il valore 23 Nel linguaggio C, dato un vettore b[] e un puntatore bPtr, le due seguenti assegnazioni: bPtr = b;" e "bPtr = &b[0]; " Sono equivalenti Nel linguaggio C, dato un vettore di 5 elementi interi (4 byte ciascuno), se vPtr punta al primo elemento v[0] con locazione 3000, vPtr+=3 punta alla locazione 3012 Nel linguaggio C, due puntatori possono essere assegnati uno all'altro Solo se sono dello stesso tipo Nel linguaggio C, il carattere '' rappresenta l'operatore aritmetico Della moltiplicazione Nel linguaggio C, il file : contiene le definizioni delle funzioni di gestione delle stringhe Nel linguaggio C, il file < ctype.h > contiene: le definizioni delle funzioni di manipolazione dei caratteri Nel linguaggio C, il metodo di default di passaggio dei parametri è Per valore Nel linguaggio C, il nome di un vettore può essere visto come Puntatore costante al vettore Nel linguaggio C, il nome di un vettore rappresenta L'indirizzo di memoria centrale del primo elemento dell'array Nel linguaggio C, il passaggio ad una funzione per riferimento significa che Si passano puntatori come parametri Nel linguaggio C, il passaggio per riferimento ad una funzione prevede L'utilizzo dell'operatore '&' Nel linguaggio C, il passaggio per valore ad una funzione significa che La funzione lavora solo su una copia del parametro passato Nel linguaggio C, il risultato della divisione tra i due interi 9 e 8, dà come risultato 1 Nel linguaggio C, il risultato dell'operazione 40%7, dà come risultato 5
Nel Linguaggio C, il seguente prototipo di funzione 'void bubble(int *const);' Dichiara che la funzione riceve in input un puntatore ad intero costante Nel linguaggio C, il seguente prototipo: int myFunction(int a[]) E' il prototipo di una funzione che torna un intero e lavora su un array di interi Nel linguaggio C, in un array, la numerazione dell'indice parte da Zero Nel linguaggio C, l’istruzione : printf('%d\n',std.id); stampa il campo intero id della struttura std Nel linguaggio C, la definizione: struct data domani; definisce la variabile domani di tipo struct data Nel linguaggio C, la dichiarazione "double x = yptr" non è ammissibile Nel linguaggio C, la dichiarazione 'int n[4] = {1, 2, 3, 4, 5 }; ', risulta Errata poiché inizializzo l'array c con più elementi del consentito Nel linguaggio C, la dichiarazione: char s[20] Alloca in memoria uno spazio di 20 byte Nel linguaggio C, la dichiarazione: int a[5]={1,2,3,4,5} Dichiara ed inizializza un array di cinque interi Nel linguaggio C, la dichiarazione: 'struct data *ptrData;' definisce la variabile ptrData come puntatore al tipo struct data Nel linguaggio C, la funzione car *strcpy(char *s1, char *s2) copia la stringa s2 nell'array s1. Torna s Nel linguaggio C, la funzione char *strcat(char *s1, char *s2) accoda la stringa s2 alla stringa s1, sovrascrivendo il carattere di fine stringa di s Nel linguaggio C, la funzione che genera numeri casuale è la funzione rand() Nel linguaggio C, la funzione che genera numeri casuali è la rand() Nel linguaggio C, la funzione che genera numeri casuali torna un numero compreso tra 0 e 32767 Nel linguaggio C, la funzione di apertura di un file restituisce un puntatore alla struttura FILE Nel linguaggio C, la funzione fclose() prende in input il puntatore associato al file e chiude il file Nel linguaggio C, la funzione int strmp(const char *s1, const char s2) torna il valore zero se s1 ed s2 sono uguali Nel linguaggio C, la funzione 'islower(int c) ritorna vero se c è una lettera minuscola, zero altrimenti Nel linguaggio C, la funzione: int myFunction(const myArray, int dimension) Non può modificare l'array myArray passato come parametro Nel linguaggio C, la parola chiave typedef fornisce un meccanismo per creare sinonimi (o alias) per tipi di dati precedentemente definiti Nel linguaggio C, la seguente dichiarazione: char string1[]="PIPPO" Alloca in memoria centrale 6 byte. Nel linguaggio C, la seguente istruzione: p[10]='\0' Inserisce nell'undicesimo byte della stringa p il carattere NULL Nel linguaggio C, la struct è una collezione di variabili collegate sotto un unico mome Nel linguaggio C, la struttura if/else Esegue azioni differenti a seconda se il risultato sia vero o falso Nel linguaggio C, le operazioni aritmetiche Possono agire anche sui puntatori, ma hanno senso solo per i vettori Nel linguaggio C, le variabili di tipo external Sono le variabili dichiarate al di fuori delle funzioni Nel linguaggio C, l'espressione "(vPtr+j) " restituisce Sempre un alias di v[j]
Nella fase di linking Vengono caricate librerie di funzioni già compilate Nella programmazione strutturata, ciascun programma può essere sempre scomposto in 3 parti Nella programmazione strutturata, ogni ciclo for può essere riscritto con un ciclo While Nella programmazione strutturata, ogni rettangolo (azione) può essere sostituito da Una qualsiasi struttura di controllo Nella ricerca l'obiettivo è ricercare in una sequenza un valore chiave Nella seguente istruzione di assegnazione. Z=X+Y La parte sinistra è la variabile ricevente e la parte destra è una espressione Nella struttura while, il test viene effettuato In ingresso al ciclo Nell'algoritmo del Crivello di Eratostene con n massimo, il procedimento di setacciatura termina quando Si supera la radice quadrata del numero massimo n Nell'algoritmo del Crivello di Eratostene, la lista dei numeri fino ad n viene rappresentata da Un array di interi positivi di lunghezza n Nelle funzioni in linguaggio C, una chiamata per riferimento I parametri passati alla funzione sono indirizzi di variabili Nell'iterazione controllata da un valore sentinella Il numero di ripetizioni del ciclo è indefinito e non noto a priori Nello standard C89, la dimensione di un array Deve essere prefissata Ogni chiamata ricorsiva Lavora via via su un problema più piccolo fino a risolvere l'intero problema Ogni ciclo for può essere riscritto come un ciclo While Ogni variabile, prima di essere utilizzata Deve essere dichiarata Onlinegdb.com è un esempio di IDE su cloud Ordinare un array numerico significa dare agli elementi dell'array un ordine significativo per chi li gestisce Per accedere ad un elemento di un vettore si deve specificare Il nome e l'indice Per conoscere la dimensione in termini di byte di un tipo di variabile, si usa la funzione del linguaggio C sizeof() Per controllare un ciclo esistono Due modi Per costruire le condizioni di un blocco condizionale in linguaggio C si usano Operatori logici e operatori relazionali Per default tutti gli elementi di una matrice numerica sono inizializzati al valore Zero Per delegare ad un esecutore la soluzione di un problema, si ha bisogno di Una rappresentazione della struttura degli oggetti e delle relative operazioni insieme ad una descrizione dell'algoritmo Per il nome di una funzione si può usare Un qualsiasi identificatore valido Per ogni problema decidibile si possono costruire Diversi algoritmi Per operazione di "deriferimento" si intende l'accesso ad una variabile tramite puntatore Per scambiare tra loro due variabili chiamate a e b, una sequenza corretta dello swapping è c=a;a=b;b=c; Produce con contatore=0 Nessun numero immesso Quando il passo o caso base di una funzione ricorsiva viene risolto Il risultato del caso base viene ritornato alla chiamata dell'ultimo passo ricorsivo Quando un ciclo while termina, il programma Prosegue l'esecuzione delle istruzioni da quella successiva al ciclo while Quando una funzione termina, il controllo passa a Alla funzione chiamante Quando viene invocata una funzione, viene creato Un record di attivazione
Questo blocco if può servire a Evitare una inizializzazione fuori ciclo Se ad una funzione non si passano parametri, si mette, nella chiamata () Se nella dichiarazione di una variabile struct, si omette il nome della struttura Il tipo viene dichiarato senza nome e non è più utilizzabile in seguito Se si vuole passare una matrice per valore ad una funzione, in linguaggio C, è necessario utilizzare l'attributo const Se un gruppo di istruzioni tra parentesi graffe contiene anche una dichiarazione di variabile, si parla di Blocco istruzioni Se una funzione non ritorno alcun valore, la funzione è di tipo Void Supponendo che c=0, l'istruzione printf('%d ',--c) stampa il valore - 1 Tutte le strutture di controllo della programmazione strutturata hanno la caratteristica di avere un flusso con Una sola entrata ed una sola uscita Tutte le variabili dichiarate all'interno di una funzione sono Locali Tutti gli elementi di un array Condividono un nome comune Un algoritmo è Il procedimento risolutivo di un problema Un algoritmo può essere rappresentato In forma grafica, in forma discorsiva, in forma di programma Un ambiente di sviluppo su cloud richiede obbligatoriamente Il collegamento a Internet Un array a dimensione variabile nel linguaccio C viene allocato Nell'area stack Un array che usa due indici è chiamato array bidimensionale Un array contiene dati Dello stesso tipo Un esecutore di algoritmi è Il sistema che esegue l'algoritmo Un file header ha estensione, nel linguaggio C .h Un file può essere classificato come testo o binario Un file risiede in modo permanente in memoria di massa Un identificatore di una variabile rappresenta Una locazione di memoria centrale Un insieme di istruzioni, senza dichiarazioni di variabili, racchiuso tra '{' e '}' rappresenta Una istruzione composta o blocco Un problema di interesse E' un problema per il quale non è possibile una ben precisa formalizzazione Un problema può ammettere Più algoritmi che lo risolvono Un programma è costituito da Un insieme di istruzioni Un programma eseguibile E' comprensibile al microprocessore Un programma in linguaggio C è organizzato A funzioni Un programma sorgente è Un file testo Un puntatore è un tipo di dato derivato Un puntatore si può inizializzare con il valore NULL Una conseguenza positiva della programmazione per moduli è Migliore leggibilità e manutenibilità Una funzione è ricorsiva se Nella sua definizione richiama se stessa Una funzione ricorsiva deve prevedere Un caso base ed un passo induttivo Una matrice bidimensionale nel linguaggio c viene rappresentata con righe e colonne Una parola chiave del linguaggio C è Una parola riservata del C Una stringa si definisce palindroma quando Risulta simmetrica rispetto ai caratteri che la compongono Una tabella dati con più colonne, può essere ordinata per più variabili