C Programming Mock Test

Questa sezione presenta varie serie di test Mock relativi a C Programming Framework. Puoi scaricare questi test fittizi di esempio sul tuo computer locale e risolverli offline quando preferisci. Ogni test di simulazione viene fornito con una chiave di prova di simulazione per consentirti di verificare il punteggio finale e valutare te stesso.

C Programming Mock Test I

D 1 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main() 
{ 
   int const a = 5; 
   
   a++; 
   printf(“%d”,a); 
}

A - 5

B - 6

C - Errore di runtime

D - Errore di compilazione

Risposta: D.

Spiegazione

Errore di compilazione: la variabile costante non può essere modificata.

main() 
{ 
   int const a = 5; 
   
   a++; 
   printf(“%d”,a); 
}

D 2 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main() 
{ 
   const int a = 5; 
   
   a++; 
   printf("%d", a); 
}

A - 5

B - 6

C - Errore di runtime

D - Errore di compilazione

Risposta: D.

Spiegazione

Errore di compilazione: la variabile costante non può essere modificata.

main() 
{ 
   const int a = 5; 
   
   a++; 
   printf("%d", a); 
}

D 3 - Qual è l'output dello snippet di codice riportato di seguito?

#include<stdio.h>

main() 
{ 
   char s[]="hello", t[]="hello";
   
   if(s==t){
	   printf("eqaul strings");
	}
}

A - Stringhe uguali

B - Stringhe disuguali

C - Nessuna uscita

D - Errore di compilazione

Risposta: C

Spiegazione

Nessun output, poiché stiamo confrontando entrambi gli indirizzi di base e non sono uguali.

Q 4 - Qual è l'output dello snippet di codice riportato di seguito?

#include<stdio.h>

main() 
{ 
   int a = 5, b = 3, c = 4; 
   
   printf("a = %d, b = %d\n", a, b, c);
}

A - a = 5, b = 3

B - a = 5, b = 3, c = 0

C - a = 5, b = 3, 0

D - errore di compilazione

Risposta: A

Spiegazione

a = 5, b = 3, poiché ci sono solo due specificatori di formato per la stampa.

D 5 - Qual è l'output dello snippet di codice riportato di seguito?

#include<stdio.h>

main() 
{ 
   int a = 1; 
   float b = 1.3; 
   double c;
   
   c = a + b; 
   printf("%.2lf", c);
}

A - 2.30

B - 2.3

C - Errore di compilazione

D - 2.0

Risposta: A

Spiegazione

2.30, l'addizione è valida e dopo il decimale con è specificato per 2 posizioni.

Q 6 - Qual è l'outpout del seguente programma?

#include<stdio.h>

main() 
{
      enum { india, is=7, GREAT };

      printf("%d %d", india, GREAT);
}

A - 0 1.

B - 0 2

C - 0 8

D - Errore di compilazione

Risposta: C

Spiegazione

0 8, enum restituisce la sequenza che inizia con 0. Se assegnata con un valore, la sequenza continua dal valore assegnato.

D 7 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main() 
{
    char c = 'A'+255;
   
    printf("%c", c);
}

A - A

B - B

C - Errore di overflow in fase di esecuzione

D - Errore di compilazione

Risposta: A

Spiegazione

R, l'intervallo di valori ASCII per i caratteri ASCII è 0-255. Quindi l'operazione di addizione circola di nuovo in 'A'

D 8 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main() 
{
   short unsigned int i = 0; 
   
   printf("%u\n", i--);
}

A - 0

B - Errore di compilazione

C - 65535

D - 32767

Risposta: A

Spiegazione

0, con l'operatore di post decremento il valore della variabile sarà considerato come il valore dell'espressione e successivamente verrà decrementato.

Q 9 - Qual è l'output dello snippet di codice seguente?

#include<stdio.h>

main() 
{
   unsigned x = 5, y=&x, *p = y+0; 

   printf("%u",*p);
}

A - Indirizzo di x

B - Indirizzo di y

C - Indirizzo di p

D - 5

Risposta: D.

Spiegazione

5, poiché p contiene l'indirizzo di x che è y + 0

Risposta: D.

Spiegazione

Opzione (d), poiché la dimensione di int e unsigned è la stessa, nessun problema nell'allocazione della memoria.

D 11 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main() 
{
   int x = 5;
   
   if(x==5)
   {	
       if(x==5) break;
       printf("Hello");
   } 
   printf("Hi");
}

A - Errore di compilazione

B - Ciao

C - Ciao Ciao

D - Ciao

Risposta: A

Spiegazione

errore di compilazione, l'interruzione di parola chiave può apparire solo all'interno dell'istruzione loop / switch.

D 12 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main() 
{
   int x = 5;
   
   if(x=5)
   {	
       if(x=5) break;
       printf("Hello");
   } 
   printf("Hi");
}

A - Errore di compilazione

B - Ciao

C - Ciao Ciao

D - Avviso del compilatore

Risposta: A

Spiegazione

errore di compilazione, l'interruzione di parola chiave può apparire solo all'interno dell'istruzione loop / switch.

D 13 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main() 
{
   int x = 5;
   
   if(x=5)
   {	
      if(x=5) printf("Hello");
   } 
   printf("Hi");
}

A - Ciao Ciao

B - Ciao

C - Ciao

D - Errore del compilatore

Risposta: A

Spiegazione

Ciao Ciao, entrambe le espressioni dell'istruzione if sono vere.

D 14 - Qual è l'output dello snippet di codice seguente?

#include<stdio.h>

main() 
{
   for(;;)printf("Hello");
}

A - Ciclo infinito

B - Stampa "Hello" una volta.

C - Nessuna uscita

D - Errore di compilazione

Risposta: A

Spiegazione

ciclo infinito, con la seconda espressione di "for" assente è considerato vero per impostazione predefinita.

Q 15 - Qual è l'output dello snippet di codice riportato di seguito?

#include<stdio.h>

main() 
{
   for()printf("Hello");
}

A - Ciclo infinito

B - Stampa "Hello" una volta.

C - Nessuna uscita

D - Errore di compilazione

Risposta: D.

Spiegazione

Errore del compilatore, i punti e virgola devono essere visualizzati sebbene le espressioni siano facoltative per il ciclo "for".

D 16 - Qual è l'output dello snippet di codice seguente?

#include<stdio.h>

main() 
{
   for(1;2;3)
      printf("Hello");
}

A - Ciclo infinito

B - Stampa "Hello" una volta.

C - Nessuna uscita

D - Errore di compilazione

Risposta: A

Spiegazione

ciclo infinito, poiché la seconda espressione è diversa da 0, quindi la condizione è sempre vera.

Q 17 - int x = ~ 1; Qual è il valore di x'?

A - 1

B - -1

C - 2

D - -2

Risposta: D.

Spiegazione

-2, il complimento di uno di 1 è 1110 (binario) che è equivalente al complimento di due di 2, cioè -2.

D 18 - Qual è l'output del seguente programma?

#include<stdio.h>

void f() 
{ 
   static int i;
   
   ++i; 
   printf("%d", i); 
}

main()
{ 
   f(); 
   f(); 
   f(); 
}

A - 1 1 1

B - 0 0 0

C - 3 2 1

D - 1 2 3

Risposta: D.

Spiegazione

1 2 3, Una variabile locale statica mantiene il suo valore tra le chiamate di funzione e il valore predefinito è 0.

D 19 - Qual è l'output del seguente frammento di codice?

#include<stdio.h>

main()
{ 
   int *p = 15; 
   printf("%d",*p);
}

A - 15

B - Valore della spazzatura

C - Errore di runtime

D - Errore del compilatore

Risposta: C

Spiegazione

Errore di runtime, poiché la variabile del puntatore non contiene l'indirizzo corretto, la scrittura / lettura dei dati dalla stessa solleva un errore di runtime.

Q 20 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{	
    register int x = 5;

    int *p;
    p=&x;
    x++;
    printf("%d",*p);
}

A - Errore di compilazione

B - 5

C - 6

D - Valore di spazzatura

Risposta: A

Spiegazione

Errore di compilazione, non possiamo prendere l'indirizzo di una variabile di registro.

D 21 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{
   int x = 65, *p = &x;
   
   void *q=p;
   char *r=q;
   printf("%c",*r);
}

A - Carattere spazzatura.

B - A

C - 65

D - Errore di compilazione

Risposta: B

Spiegazione

Un puntatore void è un puntatore generico e può contenere l'indirizzo di qualsiasi variabile. Il carattere ASCII per il valore 65 è "A"

Risposta: A

Spiegazione

Nessun output, a parte l'opzione (a) il resto dei commenti sulle opzioni non sono validi.

D 23 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{
   printf("\");
}

A - \

B - \ "

C - "

D - Errore di compilazione

Risposta: D.

Spiegazione

Errore di compilazione, la stringa di formato di printf non viene terminata.

Q 24 - Qual è l'output del seguente programma?

#include<stdio.h>

{ 
   int x = 1;
   switch(x) 
   {
      default: printf("Hello");
      case 1: printf("hi"); break;
   }
}

A - Ciao

B - Ciao

C - Ciao Ciao

D - Errore di compilazione

Risposta: B

Spiegazione

Salve, il controllo raggiunge il caso predefinito dopo aver confrontato il resto delle costanti del caso.

Q 25 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{ 
   struct { int x;} var = {5}, *p = &var;
   
   printf("%d %d %d",var.x,p->x,(*p).x); 
}

A - 5 5 5

B - 5 5 valore spazzatura

C - 5 5 0

D - Errore di compilazione

Risposta: A

Spiegazione

5 5 5, i due modi possibili per accedere agli elementi della struttura usando il puntatore sono usando -> (operatore freccia) OR *.

Q 26 - Qual è l'output del seguente programma?

#include<stdio.h>

void swap(int m, int n)
{
   int x = m;
   
   m = n;
   n = x;
}
main()
{
   int x=5, y=3;

   swap(x,y);
   printf("%d %d", x, y);
}

A - 3 5

B - 5 3

C - 5 5

D - Errore di compilazione

Risposta: B

Spiegazione

5 3, il meccanismo di chiamata per valore non può alterare gli argomenti effettivi.

#include <stdio.h>
void swap(int m, int n)
{
   int x = m;
   
   m = n;
   n = x;
}
main()
{
   int x=5, y=3;

   swap(x,y);
   printf("%d %d", x, y);
}

Q 27 - Cosa verrà stampato per la dichiarazione seguente?

#include<stdio.h>

main()
{
   printf("%d",strcmp("strcmp()","strcmp()"));
}

A - 0

B - 1

C - -1

D - Uso non valido della funzione strcmp ()

Risposta: A

Spiegazione

0, strcmp restituisce 0 se entrambe le stringhe sono uguali

Risposta: D.

Spiegazione

Errore di compilazione, il secondo argomento per fopen non è valido, dovrebbe essere una stringa.

Q 29 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{   
   int r, x = 2;
   float y = 5;

   r = y%x;
   printf("%d", r); 
}

A - 1

B - 0

C - 2

D - Errore di compilazione

Risposta: D.

Spiegazione

Errore di compilazione, non è valido che uno degli operandi per l'operatore modulo (%) sia un numero reale.

Q 30 - Quale operatore viene utilizzato per continuare la definizione di macro nella riga successiva?

A - #

B - ##

C - $

D - \

Risposta: D.

Spiegazione

\, i primi due sono rispettivamente gli operatori stringize e token pasting. Non esiste un operatore di questo tipo chiamato $.

D 31 - Qual è la dimensione della seguente definizione di unione?

#include<stdio.h>

union abc { 
    char a,b,c,d,e,f,g,h; 
    int i;
}abc;

main()
{
   printf( "%d", sizeof( abc ));
}

A - 1

B - 2

C - 4

D - 8

Risposta: C

Spiegazione

la dimensione dell'unione è la dimensione dell'elemento più grande di esso. Tutti gli elementi del sindacato condividono una memoria comune.

Q 32 - Qual è la dimensione di 'int'?

A - 2

B - 4

C - 8

D - Dipendente dal compilatore

Risposta: D.

Spiegazione

La dimensione di "int" dipende dal compilatore, ovvero se è a 16 bit o 32 bit.

Q 33 - Il nome del tipo / parola riservata "breve" è ___

A - corto lungo

B - carattere breve

C - galleggiante corto

D - breve int

Risposta: D.

Spiegazione

short è usato come alternativa a short int.

D 34 - Qual è il valore di "y" per il seguente frammento di codice?

#include<stdio.h>

main()
{
   int x = 1;
   
   float y = x>>2;
   
   printf( "%f", y );
}

A - 4

B - 0,5

C - 0

D - 1

Risposta: C

Spiegazione

0, i bit di dati vengono persi per l'operazione di spostamento precedente, quindi il valore è 0.

Q 35 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{  
   float t = 2;

   switch(t)
   {
       case 2: printf("Hi");
       default: printf("Hello");
   }
}

A - Ciao

B - Ciao, ciao

C - Ciao

D - Errore

Risposta: D.

Spiegazione

Errore, l'espressione switch non può essere un valore float.

Q 36 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{
   int i = 1;
   
   while(++i <= 5)
      printf("%d ",i++);
}

A - 1 3 5

B - 2 4

C - 2 4 6

D - 2

Risposta: B

Spiegazione

2 4, in mentre prima incrementato e successivamente confrontato e in printf stampato prima e incrementato successivamente

Q 37 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{
   int i = 1;
   
   while( i++<=5 )
      printf("%d ",i++);
}

A - 1 3 5

B - 2 4

C - 2 4 6

D - 2

Risposta: C

Spiegazione

2 4 6, inizialmente confrontato e successivamente incrementato e stampato prima e incrementato successivamente.

D 38 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{
   int i = 1;
   
   while(i++<=5);
       printf("%d ",i++);
}

A - 4

B - 6

C - 2 6

D - 2 4

Risposta: B

Spiegazione

6, c'è un'istruzione vuota dopo "while".

D 39 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{
   int x = 1;
   
   do
      printf("%d ", x);
   while(x++<=1);
}

A - 1

B - 1 2

C - Nessuna uscita

D - Errore di compilazione

Risposta: B

Spiegazione

1 2, do..while è un ciclo di controllo dell'ingresso. Poiché l'espressione x ++ è post form, il ciclo continua anche per la seconda volta.

Q 40 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{ 
   int a[] = {1,2}, *p = a;
   
   printf("%d", p[1]); 
}

A - 1

B - 2

C - Errore di compilazione

D - Errore di runtime

Risposta: B

Spiegazione

2, poiché "p" contiene l'indirizzo di base, possiamo accedere all'array utilizzando "p" proprio come con "a"

Q 41 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{ 
   int a[3] = {2,1};
   
   printf("%d", a[a[1]]); 
}

A - 0

B - 1

C - 2

D - 3

Risposta: B

Spiegazione

1, l'indirizzamento indiretto interno restituisce 1 e il valore all'indice 1 per l'indirizzamento esterno è 1.

Q 42 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{ 
   int a[3] = {2,,1};
   
   printf("%d", a[a[0]]); 
}

A - 0

B - 1

C - 2

D - Errore di compilazione

Risposta: D.

Spiegazione

Errore di compilazione, sintassi non valida nell'inizializzazione dell'array.

Q 43 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{ 
   int a[] = {2,1};
   
   printf("%d", *a); 
}

A - 0

B - 1

C - 2

D - Errore di compilazione.

Risposta: C

Spiegazione

2, poiché "a" si riferisce all'indirizzo di base.

Q 44 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{
   int i = 1;
   
   Charminar:
   printf("%d ",i++);
   if(i==3) break;
   if(i<=5) goto Charminar;
}

A - 1 2

B - 1 2 3

C - 1 2 4 5

D - Errore di compilazione

Risposta: D.

Spiegazione

Errore di compilazione, posizione errata per la visualizzazione di "interruzione".

Q 45 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{ 
   int i = 13, j = 60;
   
   i ^= j;
   j ^= i;
   i ^= j;
   
   printf("%d %d", i, j);
}

A - 73 73

B - 60 13

C - 13 60

D - 60 60

Risposta: B

Spiegazione

60 13, il suo scambio.

Q 46 - Qual è l'output del seguente programma?

#include<stdio.h>

main()
{	
   union abc {
      int x;
      char ch;
   }var;

   var.ch = 'A';
   printf("%d", var.x);
}

A - A

B - Valore della spazzatura

C - 65

D - 97

Risposta: C

Spiegazione

65, poiché le variabili union condividono la memoria comune per tutti i suoi elementi, x ottiene "A" il cui valore ASCII è 65 e viene stampato.

D 47 - Identifica la modalità di apertura del file errata dalle seguenti.

A - r

B - w

C - x

D - a

Risposta: C

Spiegazione

x, non esiste tale modalità chiamata "x".

Q 48 - La funzione fopen () con la modalità "r +" prova ad aprire il file per __

A - leggere e scrivere

B - lettura e aggiunta di nuovi contenuti

C - solo per la lettura

D - funziona solo per le directory

Risposta: A

Spiegazione

Opzione (a), il file dovrebbe esistere e si apre sia in lettura che in scrittura.

D 49 - Identifica la costante non valida utilizzata nella funzione fseek () come riferimento "da dove".

A - SEEK_SET

B - SEEK_CUR

C - SEEK_BEG

D - SEEK_END

Risposta: C

Spiegazione

SEEK_BEG, tutto il resto sono costanti valide definite in 'stdio.h'

Q 50 - Primo sistema operativo progettato utilizzando il linguaggio di programmazione C.

A - DOS

B - Windows

C - UNIX

D - Mac

Risposta: C

Spiegazione

UNIX. C effettivamente ha inventato per scrivere un sistema operativo chiamato UNIX. Nel 1973 l'intero sistema operativo UNIX è stato progettato utilizzando C.

Foglio delle risposte

Numero domanda Tasto di risposta
1 D
2 D
3 C
4 UN
5 UN
6 C
7 UN
8 UN
9 D
10 D
11 UN
12 UN
13 UN
14 UN
15 D
16 UN
17 D
18 D
19 C
20 UN
21 B
22 UN
23 D
24 B
25 UN
26 B
27 UN
28 D
29 D
30 D
31 C
32 D
33 D
34 C
35 D
36 B
37 C
38 B
39 B
40 B
41 B
42 D
43 C
44 D
45 B
46 C
47 C
48 UN
49 C
50 C