printf - kgrudzi

Transkrypt

printf - kgrudzi
Podstawy programowania 1
Krzysztof Grudzień
[email protected]
1
Plan spotkań
•
•
•
•
•
Podsumowanie semestru I
Wskaźniki
Pliki
Struktury
….
Programowanie w C. Wikibooks
2
Przypomnienie zagadnień
• Deklaracja/definicja
zmiennych
• Instrukcja warunkowa
if…else
• Pętle:
– for,
– do...while
– While
• tablice
3
Przypomnienie zagadnień
• Funkcje
• Argumenty funkcji
– Typ prosty
– tablice
• Wartości zwracane przez
funkcje
4
Przykład – budowa pliku
• #include <stdio.h>
• #include <stdlib.h>
printf, scanf
• int main(int argc, char *argv[])
• {
• …..
• system("PAUSE");
• return 0;
• }
5
printf
• int main(int argc, char *argv[])
• {
• int k;
• printf("%d \n",k) ;
•
• system("PAUSE");
• return 0;
• }
• int k=9;
6
printf
• printf("%5d \n",k) ;
• float k=9.0;
• printf("%5d \n",k) ;
• printf("%5f \n",k) ;
• printf("%5.2f \n",k) ;
7
printf
• int tab1D[MAXW] = {0};
• printf("[ i] | value | adress | adress\n");
• printf("-------------------------------\n");
• for(i=0; i<MAXW; i++)
• printf("[%2d] | %3d | %d | %x\n", i, tab1D[i], &tab1D[i], &tab1D[i]);
8
scanf
•
•
•
•
int k;
printf("podaj wartosc: ");
scanf("%d", &k);
printf("wartosc k = %d\n", k);
• printf("podaj wartosci: ");
• scanf("%d %d", &k, &z);
• printf("wartosc k = %d z=%d\n", k, z);
9
operatory
• Przypisania k=7
• Porównania k==7
• int a, b, c;
• a = b = c = 3;
• printf("%d %d %d\n", a, b, c);
/* wypisze "3 3 3" */
10
+=, /=, %=
• int/int  2/3
• float/float  3.4/2.1
• int/float  3/2.4
11
rzutowanie
• Zadaniem rzutowania jest konwersja
danej jednego typu na daną innego
typu.
• float(int/int)
• printf("podaj wartosci: ");
• scanf("%d %d", &k, &z);
• printf("wartosc k = %f z=%d\n”
, (float)k, z);
12
rzutowanie
• printf("wartosc k = %f z=%d\n", k, z);
• printf("adresy: %d | %d\n", &k, &z);
13
Inkrementacja i dekrementacja
•
•
•
•
ˆpre-inkrementacja (”++i”),
ˆpost-inkrementacja (”i++”),
ˆpre-dekrementacja (”--i”)
ˆpost-dekrementacja (”i--”).
14
Operatory logiczne
• Negacja !
• Koniunkcja && (oraz)
• Alternatywa II (lub)
• Prawda – 1
• Fałsz - 0
15
• int k=10, z=1;
• printf("podaj wynik: %d\n", k && z);
• int k=0, z=1;
• printf("podaj wynik: %d\n",
k && z);
16
Instrukcja sterująca – if…else
17
18
Pętla - while
19
Pętla - for
for(; z<=10;++z)
for(; z<=10; printf("%d\n", z*z) );
20
Pętla – do…while
21
Funkcje
22
23
Prototyp funkcji
• int b(int p);
• int b(int);
24
Tablice
• typ nazwa_tablicy[rozmiar];
• int tablica[3] = {1,2,3};
• int tablica[] = {1, 2, 3, 4, 5};
25
• printf("\n rozmiar: %d -- %d\n",
sizeof(tablica), sizeof(tablica[0]));
26
27
Tablice znakowe
28
29
20 znaków + 1 (’\0’)
30
31
32
Tablice wielowymiarowe
• float macierz[10][10];
• macierz[2][3] = 1.2;
33
Zadanie 1
• Znajdź iloczyn liczb leżących na
przekątnych przecinających się w
punkcie tablicy dwuwymiarowej
podanym przez użytkownika
34
Zadanie 2
35