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);
}
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);
}
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");
}
}
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);
}
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);
}
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);
}
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);
}
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--);
}
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);
}
Risposta: D.
Spiegazione
5, poiché p contiene l'indirizzo di x che è y + 0
Q 10 - Qual è il tuo commento sulla dichiarazione C sottostante?
signed int *p=(int*)malloc(sizeof(unsigned int));
B - genererebbe un errore di runtime
C - La memoria verrà allocata ma non può contenere un valore int nella memoria
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");
}
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");
}
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");
}
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");
}
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");
}
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");
}
Risposta: A
Spiegazione
ciclo infinito, poiché la seconda espressione è diversa da 0, quindi la condizione è sempre vera.
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();
}
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);
}
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);
}
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);
}
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"
D 22 - Qual è l'output del seguente programma?
#include<stdio.h>
void f()
{
printf(“Hello\n”);
}
main()
{
;
}
B - Errore, poiché la funzione non viene chiamata.
C - Errore, poiché la funzione è definita senza la sua dichiarazione
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("\");
}
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;
}
}
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);
}
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);
}
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()"));
}
Risposta: A
Spiegazione
0, strcmp restituisce 0 se entrambe le stringhe sono uguali
Q 28 - Cosa sta facendo il seguente programma?
#include<stdio.h>
main()
{
FILE *stream=fopen("a.txt",'r');
}
A - Tentativo di aprire "a.txt" in modalità di lettura
B - Tentativo di aprire "a.txt" in modalità di scrittura.
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);
}
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?
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 ));
}
Risposta: C
Spiegazione
la dimensione dell'unione è la dimensione dell'elemento più grande di esso. Tutti gli elementi del sindacato condividono una memoria comune.
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" è ___
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 );
}
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");
}
}
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++);
}
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++);
}
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++);
}
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);
}
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]);
}
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]]);
}
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]]);
}
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);
}
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;
}
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);
}
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);
}
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.
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 __
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".
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.
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 |