====== Zajęcia 2 - Proste programy w języku C (printf, scanf, pętle, warunki)======
===== Wczytywanie i wyświetlanie liczb =====
#include
/* program wczytuje i wyswietla wartosc podanej liczby calkowitej */
int main()
{
int liczba; //deklarowanie zmiennej
printf("Podaj liczbe: ");
scanf("%d",&liczba);
printf("Podales liczbe %d \n",liczba);
return 0;
}
** Ćwiczenia **
* Zmodyfikuj program tak aby po wczytaniu dwóch liczb całkowitych wyświetlił ich sumę (+), różnicę (-), iloczyn (*), iloraz (/), wartość dzielenia modulo (%).
* Zmień program tak aby działał dla liczb rzeczywistych (bez operacji modulo (%), która może być wykonana tylko dla liczb całkowitych)
* spróbuj zmienić formatowanie wyświetlanych liczb aby dla podanych liczb 1 i 3 program wyświetlił komunikat zbliżony do
1.0 + 3.0 = 4.00
1.0 - 3.0 = -2.00
1.0 * 3.0 = 3.00
1.0 / 3.0 = 0.33
===== Warunek if =====
#include
/* program sprawdza czy podana liczba jest dodatnia czy ujemna */
int main()
{
int liczba;
printf("Podaj liczbe: ");
scanf("%d",&liczba);
if( liczba > 0 )
printf("Liczba %d jest wieksza od zera\n",liczba);
else
printf("Liczba %d jest mniejsza od zera\n",liczba);
return 0;
}
** Ćwiczenia **
* Dopisz do programu z pierwszego ćwiczenia zabezpieczenie przed wykonaniem operacji dzielenia przez zero.
===== Pętla while =====
#include
/* program wyswietla sekwencje liczb calkowitych od 1 do podanej przez uzytkownika wartosci */
int main()
{
int liczba;
int i = 0;
printf("Podaj liczbe: ");
scanf("%d",&liczba);
while(i <= liczba)
{
printf("%d\n",i);
i = i + 1;
}
return 0;
}
** Ćwiczenia **
* Zmodyfikuj powyższy program tak aby wczytywał 3 liczby rzeczywiste określając początek, koniec i krok wyświetlanej sekwencji liczb.
===== Zmienne, typy i ich rozmiary - operator sizeof()=====
#include
int main()
{
char znak;
znak = 'A';
printf("rozmiat typu char %d\n",sizeof(znak));
printf("rozmiat typu float %d\n",sizeof(float));
return 0;
}
** Ćwiczenia **
* Sprawdź za pomocą operatora ''sizeof'' ile bajtów zajmują w pamięci następujące typy: unsigned char, int, short, double, long double, wskaźnik *int, wskaźnik *void, tablica 10 elementów typu int, macierz typu float o wymiarach 2x5, tablica typu char zainicjowana wartościami ''{'j','p','r'}'', tablica char zainicjowana napisem ''"jpr"''.
===== Zakres zmiennych =====
#include
int main()
{
short liczba = 32767;
printf("liczba = %d\n",liczba);
liczba = liczba + 1;
printf("liczba + 1 = %d\n",liczba);
return 0;
}
** Ćwiczenia **
* Napisz program wyznaczający największą możliwą liczbę poprawnie reprezentowaną przez typ int i float. Dla typu float znajdź także najmniejszą możliwą liczbę większą od zera. Wygrywa program, który najbardziej zbliży się do poprawnej odpowiedzi w jak najkrótszym czasie.
===== Formatowanie wyjścia - printf() =====
#include
int main()
{
char znak='J';
float liczba = 1/3.0f;
printf("znak = %c\nznak (dziesietnie) = %d\nznak (szestnastkowo) = %x\nznak (osemkowo) = %o\n",znak,znak,znak,znak);
printf("liczba = %f\n",liczba);
printf("liczba = %.1f\n",liczba);
printf("liczba = %10.2f\n",liczba);
printf("liczba = %e\n",liczba);
printf("liczba = %d\n",liczba);
return 0;
}
** Ćwiczenia **
* wyświetl tablicę znaków ASCII poczynając od znaku SPACE (32) do znaku DEL (127) wraz z odpowiednimi wartościami liczbowymi w systemie dziesiętnym, szesnastkowym i ósemkowym.
===== Zadania domowe =====
- Program wczytuje kolejne liczby rzeczywiste aż do momentu gdy użytkownik poda wartość 0, po czym wyświetla sumę , średnią oraz wartość minimalną i maksymalną dla wprowadzonych liczb.
- Program który dla podanej podstawy i wykładnika oblicza potęgę. Dla uproszczenia przyjmujemy, że wykładnik jest liczbą całkowitą.
- Program wyświetlający wartość silni z podanej przez użytkownika liczby całkowitej.
- Program wyświetlający tabliczkę mnożenia, której rozmiar ustalany jest przez użytkownika.