Documente Academic
Documente Profesional
Documente Cultură
Laborator Progamare I
săptămâna 8 – 12.10.2018
15 – 19.10.2018
OBIECTIVE:
OPERATORS ASSOCIATIVITY
( ) [ ] --> . left to right
! ~ ++ -- + - * & (type) sizeof right to left
* / % left to right
+ - left to right
<< >> left to right
< <= > >= left to right
== != left to right
& left to right
^ left to right
| left to right
&& left to right
|| left to right
?: right to left
= += -= *= /= %= &= ^= |= <<= right to left
>>=
, left to right
1
1. Să se scrie programul care printr-un singur apel printf să tipărească pe ecran :
Caractere speciale:
slash /; backslash \; procent%;
ghilimele "; apostrof '.
4. Să se scrie un program care afişează numere reale cu diferite formate. (se va folosi
#define)
8. Scrieţi un program ce efectuează operaţii aritmetice asupra a două date de tip întreg date
ca și constante. Executaţi apoi programul pentru valori care conduc la rezultat în afara
limitelor de reprezentare internă. Ce se întâmplă în acest caz?
9. Scrieţi un program care realizează suma, diferenţa, produsul şi împărţirea a două numere
reale. Afişarea se va face sub forma tabelară:
2
x y x+y x–y x*y x/y
10. Să se scrie un program care citește un întreg de 4 cifre și afișează cifrele respective
precedate, fiecare de câte un spațiu, apoi afișează fiecare cifră a numărului urmată de un
zero.
11. Se citește de la tastatură o dată calendaristică care reprezintă ziua din luna octombrie pe
primele două poziții și anul pe următoarele două poziții (zzaa). Să se afișeze data
respectivă sub forma
20aa Octombrie zz
char c='a',cc;
int i=4;
float f=5.95;
printf("%d %f\n",i,f);
i=f; // conversie implicita, trunchiere
printf("%d %f\n",i,f);
f=i+100000; // conversie implicita a rezultatului expresiei
printf("%d %f\n",i,f);
_______________________________________________________________
i=-99.001; // conversie implicita, trunchiere
f='a';
c=0x3239; cc=-i; // preluarea ultimului octet
printf("%d %f %c %c\n",i,f,c,cc);
float r1=5/2,
r2=(float)5/2,
r3=(float)(5/2),
r4=5/(float)2,
r5=(float)5/(float)2;
printf("%f %f %f %f %f\n",r1,r2,r3,r4,r5);
3
14. Fiind date definiţiile:
int a=2, b=2, c=1, d=0, e=4, i = 2, j = 4;
determinaţi valoarea următoarelor expresii:
15. Folosind operatorul ternar, să se tipărească maximul și minimul dintre două numere a și b
citite de la tastatură.
16. Folosind operatorul ternar, să se tipărească maximul dintre a,b,c citiţi de la tastatură.
17. Pentru un n citit de la tastatură să se afişeze valorile mai mari/mai mici decât n de 2,4,8,16
ori obţinute prin inmulţiri/impărţiri, respectiv deplasări.
18. Să se scrie un program care citește două numere intregi a și b și afișează pe linii separate:
a, b, !a, !b, a&&b, a||b, !a&&b||!b&&a