Sunteți pe pagina 1din 2

PROGRAMAREA CALCULATOARELOR

Nr. 1

1. Fie urmtorul program:


#include <stdio.h>
#include s1.h
struct course
int main(void) {
{
struct course c[] =
{ {102, "Java"},
int cursNr;
{103, "PHP"},
char cursNume[25];
{104, "DotNet"}
};
};
printf("%d ", c[1].cursNr);
printf("%s\n", ((c+2))->cursNume);
return 0;
}
Indicai, dac programul este corect, ce se afieaz pe monitor la execuia sa. Dac exist erori,
indicai linia (sau liniile) n care apar erorile. Structura din stnga este declarat n fiierul header s1.h.
2. Ce afieaz programul urmtor? Justificai rspunsul.
#include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 21, 22};
int i, j, m;

i = ++a[2];
j = a[1]++;
m = a[i++];
printf("%d, %d, %d", i, j, m);
return 0;
}

3. Fie urmtoarea secven de cod:


int
int
a =
b =

x = 0x1e;
a, b;
x + 10;
a + 011;

if((a++ < = 39) || (b >>= 6)) {


printf("%3d %% %3d\n", a, b);
}
else {
printf("%3d %% %3d\n", a, b);
}

Ce se afieaz pe monitor? Justificare.


4. Care este rezultatul rulrii programului din coloana din stnga dac structura REGISTRU este declarat
n fiierul s4.h aa cum este specificat n coloana din dreapta? Justificare.
#include <stdio.h>
#include s4.h
struct REGISTRU {
int main(void){
int bit1:1;
struct REGISTRU bit={1, 3, 12};
int bit3:4;
printf("%d, %d, %d\n", bit.bit1,
int bit4:4;
bit.bit3, bit.bit4);
};
return 0;
}
5. Care este rezultatul urmtoarei secvene de cod. Justificare
#include <stdio.h>
int main(void)
{
int x=011,i;
for(i=0; i<x; i+=3){
printf("Programarea ");
continue;
printf("calculatoarelor");
}
return 0;
}

-------------------------------------------------- Vezi i pagina 2 -------------------------------------------------

PROGRAMAREA CALCULATOARELOR

Nr. 1

6. Analizai corectitudinea urmtorului program:


#include<stdio.h>
int main() {
int a[] = {10, 20, 30, 40, 50};
int j;

for(j=0; j<5; j++) {


printf("%d\n", *a);
a++;
}
return 0;
}

Indicai ce se afieaz pe monitor la rularea programului (dac programul este corect) sau, dac
programul nu este corect, indicai eroarea (sau erorile) care exist n program i linia (sau liniile) la care
apar aceste erori.
7. Ce se va afia la rularea urmtoarei secvene de cod? (codul nu contine erori de sintax)
int a;
int b1,b2,b3;
a = 23;
b1 = a >> 2;
b2 = a & 6;
b3 = a | 010;
printf("b1 = %d, b2 = %d, b3 = %d \n", b1,b2,b3);
8. Analizai corectitudinea urmtorului program:
#include<stdio.h>
int main(void){
register int a=10;
int *p=0;
p=&a;
printf("%p",p);
return 0;
}
Indicai ce se afieaz pe monitor la rularea programului (dac programul este corect) sau, dac
programul nu este corect, indicai eroarea (sau erorile) care exist n program i linia (sau liniile) la care
apar aceste erori.
9. Ce se afieaz la execuia urmtorului program (uniunea folosit este declarat n fiierul header
s9.h ca n coloana din stnga)? Justificare.
#include <stdio.h>
#include s9.h
union var {
int a;
int main() {
int b;
union var v;
v.a=10;
};
v.b=20;
printf("%d\n", v.a);
return 0;
}