Podstawy Programowania - zajęcia 08

Zadanie 8: Kompilatory i tworzenie projektu. Odpluskwianie.

Przykład 1

#include <stdio.h>

void zwieksz_o_4(int * a)
{
    a+=4;
}

int main()
{
    int b = 8;
    printf("%d\n", b);
    zwieksz_o_4(&b);
    printf("%d\n", b);

    return 0;
}

Przykład 2

#include <stdio.h>

int main()
{
    int i, n=10;

    for(i=0; i<n; n++)
        printf("%d, ", i++);

    return 0;
}

Przykład 3

#include <stdio.h>

int main()
{
    int n;
    printf("zmienna n ma wartosc %d\n", n);
    printf("podaj wartosc calkowita\n" );
    scanf("%d", n);
    printf("po wczytaniu zmienna ma wartosc %d\n", n);

    return 0;
}

Przykład 4

#include <stdio.h>

int main()
{
      int b = 8;
    char  napis[1];

    printf("zmienna b ma wartosc %d\n", b);

    printf("Podaj napis (wiecej niz 5 znakow)\n");
    scanf("%s", napis);

    printf(" Podany napis %s\n", napis);
    printf("zmienna b ma wartosc %d\n", b);
 
    return 0;
}

Przykład 5

#include <stdio.h>
int fib(int n)
{
    if (n == 1)
        return 1;
    return fib(n-1)+fib(n-2);
}

int main()
{
    printf("Fibonacci dla 4 = %d ", fib(4));
    return 0;
}

Przykład 6

#include <stdio.h>
int silnia(int n)
{
    if (n = 1)
        return 1;
    return n*silnia(n-1);
}

int main()
{

    printf("Silnia dla 4 = %d ", silnia(4));
    return 0;
}

Podział programu na pliki  i makefile

plik "main.c"

#include <stdio.h>
#include "a.h"

int main()
{
    int a=7, b=9;
    printf("obwod prostokata o bokach %d %d wynosi %d", obwod(a, b));
    return 0;
}

plik "a.h"

#ifndef A_H
#define A_H

int suma(int, int);
int obwod(int, int);

#endif

plik "a.c"

#include "a.h"

int obwod(int a, int b)
{
    return 2*suma(a, b);
}

int suma(int a, int b)
{
    return a+b;
}

plik "makefile"

program: main.o a.o
    gcc -o program main.o a.o

main.o: main.c a.h
    gcc -c main.c

a.o: a.c a.h
    gcc -c a.c

Powrót