#include <stdio.h>
#include <stdlib.h>
// dodawanie
// funkcja dodaje dwa skladniki
// return zwraca wynik sumy
int dodaj( int skladnik1, int skladnik2) {
int suma;
suma = skladnik1 + skladnik2;
return suma;
}
// odejmowanie
int odejmij( int odjemna, int odjemnik) {
return odjemna - odjemnik;
}
//wypisywanie na ekran
void wypisz( int wynik) {
printf ( "Wynik to:%d\n " , wynik
) ; }
//pobieranie danych
int pobierz( ) {
int liczba;
scanf_s( "%d" , & liczba) ;
return liczba;
}
//referencje
void mnozenie( int czynnik1, int czynnik2, int * iloczyn) {
* iloczyn = czynnik1 * czynnik2;
}
//tablica jest zawsze przez referencje
void uzupelnij( int tab[ 4 ] ) {
for ( int i = 0 ; i < 4 ; i++ ) {
tab[ i] = i;
}
}
void wypiszTablice( int tab[ 4 ] )
{
for ( int i = 0 ; i < 4 ; i++ ) {
printf ( "tab[%d] = %d\n " , i
, tab
[ i
] ) ; }
}
int silnia( int n)
{
if ( n == 0 ) return 1 ;
return silnia( n - 1 ) * n;
}
// program
int main( ) {
// dane wejsciowe
int liczba1, liczba2;
int tab[ 4 ] ;
// obliczenia
int wynik1, wynik2;
int iloczyn;
wynik1 = wynik2 = 0 ;
printf ( "program z funkcjami\n " ) ; liczba1 = pobierz( ) ;
liczba2 = pobierz( ) ;
//suma
wynik1 = dodaj( liczba1, liczba2) ;
wypisz( wynik1) ;
wynik1 = odejmij( liczba1, liczba2) ;
wypisz( wynik1) ;
mnozenie( pobierz( ) , pobierz( ) , & iloczyn) ;
wypisz( iloczyn) ;
uzupelnij( tab) ;
wypiszTablice( tab) ;
wypisz( silnia( 4 ) ) ;
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KLy8gZG9kYXdhbmllCi8vIGZ1bmtjamEgZG9kYWplIGR3YSBza2xhZG5pa2kKLy8gcmV0dXJuIHp3cmFjYSB3eW5payBzdW15CmludCBkb2RhaihpbnQgc2tsYWRuaWsxLCBpbnQgc2tsYWRuaWsyKXsKCWludCBzdW1hOwoJc3VtYSA9IHNrbGFkbmlrMSArIHNrbGFkbmlrMjsKCXJldHVybiBzdW1hOwp9CgovLyBvZGVqbW93YW5pZQppbnQgb2Rlam1paihpbnQgb2RqZW1uYSwgaW50IG9kamVtbmlrKXsKCXJldHVybiBvZGplbW5hIC0gb2RqZW1uaWs7Cn0KCi8vd3lwaXN5d2FuaWUgbmEgZWtyYW4Kdm9pZCB3eXBpc3ooaW50IHd5bmlrKXsKCXByaW50ZigiV3luaWsgdG86JWRcbiIsIHd5bmlrKTsKfQoKLy9wb2JpZXJhbmllIGRhbnljaAppbnQgcG9iaWVyeigpewoJaW50IGxpY3piYTsKCXByaW50ZigiUG9kYWogbGljemJlOlxuIik7CglzY2FuZl9zKCIlZCIsICZsaWN6YmEpOwoJcmV0dXJuIGxpY3piYTsKfQoKLy9yZWZlcmVuY2plCnZvaWQgbW5vemVuaWUoaW50IGN6eW5uaWsxLCBpbnQgY3p5bm5pazIsIGludCAqaWxvY3p5bil7CgkqaWxvY3p5biA9IGN6eW5uaWsxICogY3p5bm5pazI7Cn0KLy90YWJsaWNhIGplc3QgemF3c3plIHByemV6IHJlZmVyZW5jamUKdm9pZCB1enVwZWxuaWooaW50IHRhYls0XSl7Cglmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykJewoJCXRhYltpXSA9IGk7Cgl9Cn0KCnZvaWQgd3lwaXN6VGFibGljZShpbnQgdGFiWzRdKQp7CglwcmludGYoIlxuIik7Cglmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykJewoJCXByaW50ZigidGFiWyVkXSA9ICVkXG4iLGksdGFiW2ldKTsKCX0KfQoKaW50IHNpbG5pYShpbnQgbikKewoJaWYgKG4gPT0gMCkgcmV0dXJuIDE7CglyZXR1cm4gc2lsbmlhKG4gLSAxKSpuOwp9CgoKLy8gcHJvZ3JhbQppbnQgbWFpbigpewoJLy8gZGFuZSB3ZWpzY2lvd2UKCWludCBsaWN6YmExLCBsaWN6YmEyOwoJaW50IHRhYls0XTsKCS8vIG9ibGljemVuaWEKCWludCB3eW5pazEsIHd5bmlrMjsKCWludCBpbG9jenluOwoJd3luaWsxID0gd3luaWsyID0gMDsKCXByaW50ZigicHJvZ3JhbSB6IGZ1bmtjamFtaVxuIik7CglsaWN6YmExID0gcG9iaWVyeigpOwoJbGljemJhMiA9IHBvYmllcnooKTsKCS8vc3VtYQoJd3luaWsxID0gZG9kYWoobGljemJhMSwgbGljemJhMik7Cgl3eXBpc3ood3luaWsxKTsKCXd5bmlrMSA9IG9kZWptaWoobGljemJhMSwgbGljemJhMik7Cgl3eXBpc3ood3luaWsxKTsKCXN5c3RlbSgicGF1c2UiKTsKCgltbm96ZW5pZShwb2JpZXJ6KCksIHBvYmllcnooKSwgJmlsb2N6eW4pOwoJd3lwaXN6KGlsb2N6eW4pOwoKCXV6dXBlbG5paih0YWIpOwoJd3lwaXN6VGFibGljZSh0YWIpOwoKCXd5cGlzeihzaWxuaWEoNCkpOwoKCXN5c3RlbSgicGF1c2UiKTsKCXJldHVybiAwOwp9Cg==
compilation info
prog.c: In function ‘pobierz’:
prog.c:26:2: warning: implicit declaration of function ‘scanf_s’; did you mean ‘scanf’? [-Wimplicit-function-declaration]
scanf_s("%d", &liczba);
^~~~~~~
scanf
prog.c: In function ‘main’:
prog.c:73:2: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result [-Wunused-result]
system("pause");
^~~~~~~~~~~~~~~
prog.c:83:2: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result [-Wunused-result]
system("pause");
^~~~~~~~~~~~~~~
/usr/bin/ld: /home/tA7z6p/ccZncbez.o: in function `pobierz':
prog.c:(.text+0x74): undefined reference to `scanf_s'
collect2: error: ld returned 1 exit status
stdout