Differences

This shows you the differences between two versions of the page.

Link to this comparison view

programare-cc:laboratoare:06 [2020/11/10 22:07]
bogdan.nutu
programare-cc:laboratoare:06 [2020/11/22 16:26] (current)
bogdan.nutu
Line 1: Line 1:
 ===== Laboratorul 06 - Funcții cu vectori ===== ===== Laboratorul 06 - Funcții cu vectori =====
  
-**În acest laborator veţi învăţa să:** +==== Problema 1 ====
- +
-  * Definiţi funcţii care primesc ca argumente vectori. +
- +
-==== Vectori ==== +
- +
-Atunci când declaraţi o variablilă,​ compilatorul va fi informat despre 2 lucruri: numele variabilei si tipul ei. De exemplu: **int n**. Astfel, compilatorul va rezerva o zonă de memorie pentru aceasta variabilă (4 octeţi pentru o arhitectură pe 32 biţi). +
- +
-==== Probleme ==== +
- +
-=== Problema ​rezolvata === +
----- +
- +
-Rulaţi următorul program şi încercaţi să înţelegeţi de ce afişează respectivele valori. Este important să întrebaţi dacă nu înţelegeţi ceva. +
- +
-<code c> +
-#include <​stdio.h>​ +
- +
-int main() +
-+
-   int a[] = {0, 1, 2, 3, 4, 5, 6, 7, 8}; +
-   ​unsigned long int adr0, adr1, adr2; +
-   int *p1, *p2; +
-    +
-   ​printf("​a ​%p\na + 1 = %p\na + 3 = %p\n\n",​ a, a + 1, a + 3); +
-    +
-   ​printf("​sizeof(a) = %d\n", sizeof(a));​ +
-   ​printf("​sizeof(a + 1) = %d\n", sizeof(a + 1)); +
-   ​printf("​sizeof(a + 3) = %d\n\n",​ sizeof(a + 3)); +
-    +
-   adr0 = (unsigned long int) a; +
-   adr1 = (unsigned long int) (a + 1); +
-   adr2 = (unsigned long int) a + 1; +
-    +
-   ​printf("​adr0 = %lu\nadr1 = %lu\nadr2 = %lu\n\n",​ adr0, adr1, adr2); +
-    +
-   p1 = a + 4; +
-   p2 = &​(a[4]);​ +
-    +
-   ​printf("​p1 = %p \t *p1 = %d\n", p1, *p1); +
-   ​printf("​p2 = %p \t *p2 = %d\n", p2, *p2); +
-   ​printf("​a + 4 = %p \t a[4] = %d\n", a + 4, a[4]); +
-    +
-   *p1 = *p1 + 1; +
-   ​printf("​\na[4] = %d\n", a[4]); +
-    +
-   ​return 0; +
-+
-</​code>​ +
- +
-=== Problema 1 ===+
 ---- ----
  
Line 79: Line 29:
 | 6 \\ 10 -2 5 17 3 8     | -2 3 5 8 10 17 | | 6 \\ 10 -2 5 17 3 8     | -2 3 5 8 10 17 |
  
-=== Problema 2 ===+==== Problema 2 ====
 ---- ----
  
Line 114: Line 64:
 | 3.0 5.2 6.0 | 30.000 60.073 89.927 | | 3.0 5.2 6.0 | 30.000 60.073 89.927 |
  
-=== Problema 3 ===+==== Problema 3 ====
 ---- ----
  
Line 141: Line 91:
 | 6 \\ 4 1 5 1 7 10 \\ 4 \\ 1 10 3 4 | 4 \\ 4 1 1 10 | | 6 \\ 4 1 5 1 7 10 \\ 4 \\ 1 10 3 4 | 4 \\ 4 1 1 10 |
  
-=== Problema 4 ===+==== Problema 4 ====
 ---- ----
  
Line 171: Line 121:
 | bcde \\ zdg | -1 | | bcde \\ zdg | -1 |
  
-=== Problema 5 ===+==== Problema 5 ====
 ---- ----
  
Line 200: Line 150:
 | 6 6 \\ 7 2 5 8 2 1 | 1 2 5 2 8 7 | | 6 6 \\ 7 2 5 8 2 1 | 1 2 5 2 8 7 |
  
-=== Problema 6 ===+==== Problema 6 ====
 ---- ----
  
programare-cc/laboratoare/06.1605038828.txt.gz · Last modified: 2020/11/10 22:07 by bogdan.nutu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0