Programowanie Proceduralne
|
|
- Sabina Chmiel
- 7 lat temu
- Przeglądów:
Transkrypt
1 Programowanie Proceduralne Struktury Bożena Woźna-Szcześniak Jan Długosz University, Poland Wykład 10
2 Co dziś będzie: Definiowanie struktury Deklarowanie zmiennych bȩda cych strukturami Operator wyboru składowej Definiowanie struktury i nadawanie nazwy typu przy pomocy instrukcji typedef Deklarowanie zmiennych bȩda cych strukturami poła czone z inicjalizacja Wskaźniki do struktur
3 Struktura dla dat - przykład #include <stdio.h> struct Date { int y; short m; short d; ; int main(void) { struct Date sylwek; sylwek.y = 2009; sylwek.m = 5; sylwek.d = 4; printf("%2hd-%2hd-%04d\n", sylwek.d, sylwek.m, sylwek.y); return 0; [bw@wozna w08]$./data
4 Instrukcja typedef #include <stdio.h> typedef struct { int y; short m; short d; Date; int main(void) { Date nowyrok; nowyrok.y = 2009; nowyrok.m = 5; nowyrok.d = 4; printf("%2hd-%2hd-%4d\n", nowyrok.d, nowyrok.m, nowyrok.y); return 0;
5 Instrukcja typedef #include <stdio.h> typedef struct { int y; short m; short d; Date; int main(void) { Date sylwek = {2005, 12, 31; printf("%02hd-%02hd-%04d\n", sylwek.d, sylwek.m, sylwek.y); return 0;
6 Operator wyboru składowej #include <stdio.h> #include <stdlib.h> typedef struct { int y; short m; short d; Date; int main(void) { Date* sylwek = calloc(1, sizeof(date)); // *sylwek.y = 2009; niepoprawne (*sylwek).y = 2009; poprawne sylwek->y = 2009; sylwek->m = 5; sylwek->d = 4; printf("%02hd-%2hd-%4d\n", sylwek->d, sylwek->m, sylwek->y); free(sylwek); return 0;
7 Program 1 #include <stdio.h> typedef struct { int y; short m; short d; Date; void init(date* date, int y, int m, int d); void show(date date); int main(void) { Date sylwek; init(&sylwek, 2006, 12, 7); show(sylwek); return 0;
8 Program 1 void init(date* date, int y, int m, int d) { date->y = y; date->m = m; date->d = d; void show(date date) { printf("%02hd-%02hd-%4d\n", date.d, date.m, date.y);
9 Program 2 #include <stdio.h> #include <stdlib.h> typedef struct { int y; short m; short d; Date; void init(date* date, int y, int m, int d); void show(date date); int main(void) { Date* sylwek = calloc(1, sizeof(date)); init(sylwek, 2006, 12, 7); show(*sylwek); return 0;
10 Program 2 void init(date* date, int y, int m, int d) { date->y = y; // (*date).y=y; date->m = m; date->d = d; void show(date date) { printf("%02hd-%02hd-%4d\n", date.d, date.m, date.y);
11 Program 1 #include <stdio.h> typedef struct { int y; short m; short d; Date; #define MAX_LEN 32 typedef struct { char name[max_len]; Date birthday; Person; void showdate(date const* date); void showperson(person const* person); int main(void) { Person ms = {"Jan Kowalski", {1987, 4, 19; showperson(&ms); return 0;
12 Program 1 void showperson(person const* person) { printf("%s ", person->name); showdate(&person->birthday); void showdate(date const* date) { printf("%02hd-%02hd-%04d\n", date->d, date->m, date->y);
13 Program 2 #include <stdio.h> #include <string.h> typedef struct { int y; short m; short d; Date; #define MAX_LEN 32 typedef struct { char name[max_len]; Date birthday; Person; void initdate(date* date, int y, int m, int d); void showdate(date const* date); void initperson(person*, char* name, int y, int m, int d); void showperson(person const* person);
14 Program 2 void initdate(date* date, int y, int m, int d) { date->y = y; date->m = m; date->d = d; void showdate(date const* date) { printf("%02hd-%02hd-%04d\n", date->d, date->m, date->y); void showperson(person const* person) { printf("%s ", person->name); showdate(&person->birthday); void initperson(person* person, char* name, int y, int m, int d) { strncpy(person->name, name, MAX_LEN); person->name[max_len - 1] = \0 ; initdate(&person->birthday, y, m, d);
15 Program 2 int main(int) { Person ms; initperson(&ms, "Maria Sharapova", 1987, 4, 19); showperson(&ms); return 0;
16 Program 1 #include <stdio.h> #include <string.h> #include <ctype.h> typedef struct { char* word; int count; Key; Key keytab[] = { {"auto", 0, {"break", 0, {"case", 0, {"char", 0, {"const", 0, {"continue", 0, {"default", 0, {"do", 0, {"double", 0, {"else", 0, {"enum", 0, {"extern", 0, {"float", 0, {"for", 0, {"goto", 0, {"if", 0, {"int", 0, {"long", 0, {"register", 0, {"return", 0, {"short", 0, {"signed", 0, {"sizeof", 0, {"static", 0, {"struct", 0, {"switch", 0, {"typedef", 0, {"union", 0, {"unsigned", 0, {"void", 0, {"volatile", 0, {"while", 0 ; int getword(char*, int); int binsearch(key const*, char const*, int); #define MAXWORD 100
17 Program 1 int getword(char* word, int lim) { char* w = word; int c; while (isspace(c = getc(stdin))) { if (c!= EOF) { *w++ = c; if (!isalpha(c)) { *w = \0 ; return c; for (; --lim > 0; ++w) { if (!isalnum(*w = getc(stdin))) { ungetc(*w, stdin); break; *w = \0 ; return 0;
18 Program 1 int binsearch(key const* tab, char const* word, int n) { int left = 0, right = n - 1; while (left <= right) { int mid = (left + right) / 2; int cond = strcmp(word, tab[mid].word); if (cond < 0) { right = mid - 1; else if (cond > 0) { left = mid + 1; else { return mid; return -1;
19 Program 1 int main(void) { int n; char word[maxword]; int const nkeys = sizeof(keytab) / sizeof(keytab[0]); while (getword(word, MAXWORD)!= EOF) { if (isalpha(word[0])) { if ((n = binsearch(keytab, word, nkeys)) >= 0) { ++keytab[n].count; // ++*(keytab + n).count; for (n = 0; n < nkeys; ++n) { if (keytab[n].count > 0) printf("%4d %s\n", keytab[n].count, keytab[n].word); printf("\n"); return 0;
20 Do przetwarzania argumentów (parsowania) linii poleceń służy funkcja getopt_long(), która korzysta zarówno z krótkich, jak i długich opcji. Jej prototyp znajduje się w pliku getopt.h: #define _GNU_SOURCE int getopt_long(int argc, const char *argv[], const char *shoropts, const struct option *longopts, int *longindex); argc - to liczba określajaca ilość argumentów listy, argv - jest tablica wskaźników do zaków o rozmiarze argc. Elementy tej tablicy wskazuja elementy listy argumentów, shortopts - wskaźnik na łańcuch znaków zawierajacy poprawne krótkie opcje (wszystkie jednoliterowe); po opcji wymagajacej argumentu występuje dwukropek, longopts jest to wskaźnik na tablicę specjalnych struktur struct option przechowujacej długie opcje.
21 Struktura struct option sturct option { const char *nazwa; int ma_argument; int *flagi; int zwroc; Aby określić dostępne długie opcje, musimy skonstruować tablicę elementów takich struktur jak powyżej. Każdy taki element odpowiada jednej długiej opcji i ma cztery pola. nazwa jest nazwa długiej opcjii (łanńcuch znaków pozbawiony 2 myślników, tj. help, a nie help). Drugie pole ma wartość 1 jeżeli opcja pobiera argument, 0 w przeciwnym wypadku. Trzecie pole ma wartość NULL, a czwarte to stała znakowa określajaca krótka opcję powiazaną z długa. Ostatni element tablicy powinien być wypełniony samymi zerami (jest to tzw. terminator ).
22 Program 2 #include <stdio.h> #include <stdlib.h> #include <getopt.h> void print_usage (char const* program_name, int exit_code) { printf("usage: %s options [ inputfile... ]\n", program_name); printf(" -h --help Display this usage information.\n"); printf(" -o --output filename Write output to file.\n"); printf(" -v --verbose Print verbose messages.\n"); exit (exit_code);
23 Program 2 int main (int argc, char* argv[]) { const char* const short_opts = "ho:v"; const struct option long_opts[] = { {"help", 0, NULL, h, {"output", 1, NULL, o, {"verbose", 0, NULL, v, {NULL, 0, NULL, 0 ; const char* output_filename = NULL; int verbose = 0, next_option; do { next_option = getopt_long(argc,argv,short_opts,long_opts,null); switch (next_option) { case h : print_usage (argv[0], 0); case o : output_filename = optarg; break; case v : verbose = 1; break; case? : print_usage(argv[0], 1); case -1: break; default: abort(); // switch while (next_option!= -1); if (verbose){ for (int i = optind; i < argc; ++i) printf ("Argument: %s\n", argv[i]); // Tu program główny return 0;
Wstęp do programowania 1
Wstęp do programowania 1 Struktury Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 12 Struktura dla dat - przykład #include struct Date { int y; short m; short
Pobieranie argumentów wiersza polecenia
Pobieranie argumentów wiersza polecenia 2. Argumenty wiersza polecenia Lista argumentów Lista argumentów zawiera cały wiersz poleceń, łącznie z nazwą programu i wszystkimi dostarczonymi argumentami. Przykłady:
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Wykład 1
Wstęp do programowania 1 Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 1 Wprowadzenie Cel wykładów z programowania proceduralnego Wykład jest poświęcony językowi C i jego
Wstęp do programowania 1
Wstęp do programowania 1 Argumenty funkcji main Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Argumenty funkcji main dwa równoważne sposoby int main(int argc, char*
Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1
Typy złożone Struktury, pola bitowe i unie. Programowanie Proceduralne 1 Typy podstawowe Typy całkowite: char short int long Typy zmiennopozycyjne float double Modyfikatory : unsigned, signed Typ wskaźnikowy
Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe
Wykład 15 Wprowadzenie do języka na bazie a Literatura Podobieństwa i różnice Literatura B.W.Kernighan, D.M.Ritchie Język ANSI Kompilatory Elementarne różnice Turbo Delphi FP Kylix GNU (gcc) GNU ++ (g++)
Pliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego
Pliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego 1 /24 Pisanie pojedynczych znaków z klawiatury do pliku #include void main(void) { FILE *fptr; // wkaznik do pliku, tzw. uchwyt
Programowanie Proceduralne
Programowanie Proceduralne Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 6 Wskaźniki i tablice int a[10], b[10]; int* c; c = &a[0]; // c wskazuje na pierwszy element tablicy
Programowanie Proceduralne
Programowanie Proceduralne Unie, typdef, opeartory bitowe, operator przecinkowy Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Definicja Unia (ang. union) jest typem,
Programowanie I C / C++ laboratorium 03 arytmetyka, operatory
Programowanie I C / C++ laboratorium 03 arytmetyka, operatory Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-19 Typ znakowy Typ znakowy Typ wyliczeniowy # include
Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal
Instrukcja wyboru, pętle 2 wykład. Podstawy programowania - Paskal Tematy Instrukcja wyboru jeden z wielu wariantów: case Pętle while repeat for Instrukcje sterowania pętli break continue goto Instrukcja
Języki programowania - podstawy
Języki programowania - podstawy Andrzej Dudek Wydział Techniczno Informatyczny W Jeleniej Górze Dudek A. Informatyka przemysłowa tendencje i wyzwania 26.10.2015 1 /24 Algorytm określony sposób rozwiązania
PROGRAMOWANIE w C prolog
PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014
Programowanie strukturalne i obiektowe
Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie
Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni. Wykład 6. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411b Plan wykładu Operacje wejścia-wyjścia Dostęp do plików Struktury
Uzupełnienie dot. przekazywania argumentów
Uzupełnienie dot. przekazywania argumentów #include #include struct nowa { int f; char line[20000]; int k; } reprezentant; int main() { void funkcja7( struct nowa x); reprezentant.k=17;
Co nie powinno być umieszczane w plikach nagłówkowych:
Zawartość plików nagłówkowych (*.h) : #include #define ESC 27 dyrektywy dołączenia definicje stałych #define MAX(x,y) ((x)>(y)?(x):(y)) definicje makr int menu(char* tab[], int ilosc); struct
Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C
Grzegorz Cygan Wstęp do programowania mikrosterowników w języku C Mikrosterownik Inne nazwy: Microcontroler (z języka angielskiego) Ta nazwa jest powszechnie używana w Polsce. Mikrokomputer jednoukładowy
wykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis
i cz. 2 Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 i cz. 2 2 i cz. 2 3 Funkcje i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje instrukcje } i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje
Programowanie strukturalne język C - wprowadzenie
Programowanie strukturalne język C - wprowadzenie Dr inż. Sławomir Samolej D102 C, tel: 865 1766, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl Cechy programowania strukturalnego Możliwość
Języki i metody programowania. Omówienie języków C, C++ i Java
Języki i metody programowania Omówienie języków C, C++ i Java Język C Język programowania ogólnego przeznaczenia Historia: M. Richards - BCPL - lata 60-te ubiegłego stulecia K. Thompson - B dla UNIX (DEC
1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998.
Literatura Język C 1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998. 2. Andrzej Zalewski, Programowanie w językach C i C++ z wykorzystaniem pakietu Borland C++, Nakom, Poznań
Język C - podstawowe informacje
Język C - podstawowe informacje Michał Rad AGH Laboratorium Maszyn Elektrycznych 2014-12-05 Outline Program w języku C Funkcje Składnia Instrukcje sterujace Na koniec... Po kolei napisać program (zwykły
Język ludzki kod maszynowy
Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza
wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,
, Programowanie, uzupełnienie notatek: dr Jerzy Białkowski , 1 2 3 4 , Wczytywanie liczb , Wczytywanie liczb 1 #include 2 #include < s t d l i b. h> 3 4 int main ( ) { 5 int rozmiar, numer
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float
Struktury czyli rekordy w C/C++
Struktury czyli rekordy w C/C++ Wprowadzenie do programowania w języku C struktury. pola bitowe, unie Struktury (rekordy) są złożonymi zmiennymi, składającymi się z elementów różnych typów zwanych polami,
// Liczy srednie w wierszach i kolumnach tablicy "dwuwymiarowej" // Elementy tablicy są generowane losowo #include <stdio.h> #include <stdlib.
Wykład 10 Przykłady różnych funkcji (cd) - przetwarzanie tablicy tablic (tablicy "dwuwymiarowej") - sortowanie przez "selekcję" Dynamiczna alokacja pamięci 1 // Liczy srednie w wierszach i kolumnach tablicy
Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik
Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor
Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak
Katedra Elektrotechniki Teoretycznej i Informatyki wykład 12 - sem.iii M. Czyżak Język C - preprocesor Preprocesor C i C++ (cpp) jest programem, który przetwarza tekst programu przed przekazaniem go kompilatorowi.
Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.
Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym
Programowanie Proceduralne
Programowanie Proceduralne Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 7 strlen size_t strlen(char const *s); Oblicza długość napisu wskazywanego przez s Przykładowy
Tablice, funkcje - wprowadzenie
Tablice, funkcje - wprowadzenie Przemysław Gawroński D-10, p. 234 Wykład 5 25 marca 2019 (Wykład 5) Tablice, funkcje - wprowadzenie 25 marca 2019 1 / 12 Outline 1 Tablice jednowymiarowe 2 Funkcje (Wykład
dynamiczny przydział pamięci calloc() memset() memcpy( ) (wskaźniki!! )
dynamiczny przydział pamięci malloc() free() realloc() calloc() memset() memcpy( ) mempcpy( ) memmove() (wskaźniki!! ) 1 dynamiczny przydział pamięci void * memccpy (void * to, void * from, int c, int
Funkcja (podprogram) void
Funkcje Co to jest funkcja? Budowa funkcji Deklaracja, definicja i wywołanie funkcji Przykłady funkcji definiowanych przez programistę Przekazywanie argumentów do funkcji Tablica jako argument funkcji
WYKŁAD 10. Zmienne o złożonej budowie Statyczne i dynamiczne struktury danych: lista, kolejka, stos, drzewo. Programy: c5_1.c, c5_2, c5_3, c5_4, c5_5
WYKŁAD 10 Zmienne o złożonej budowie Statyczne i dynamiczne struktury danych: lista, kolejka, stos, drzewo Programy: c5_1.c, c5_2, c5_3, c5_4, c5_5 Tomasz Zieliński ZMIENNE O ZŁOŻONEJ BUDOWIE (1) Zmienne
Wykład 7 Abstrakcyjne typy danych słownik (lista symboli)
Wykład 7 Abstrakcyjne typy danych słownik (lista symboli) Definicja słownika: Słownik (tablica lub lista symboli) to struktura danych zawierająca elementy z kluczami, która pozwala na przeprowadzanie dwóch
Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1
Tablice i struktury czyli złożone typy danych. Programowanie Proceduralne 1 Tablica przechowuje elementy tego samego typu struktura jednorodna, homogeniczna Elementy identyfikowane liczbami (indeksem).
Programowanie obiektowe
Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych
Argumenty wywołania programu, operacje na plikach
Temat zajęć: Argumenty wywołania programu, operacje na plikach Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (Zmienne statyczne) W języku C można decydować o sposobie przechowywania zmiennych. Decydują
Języki i metodyka programowania. Wprowadzenie do języka C
Literatura: Brian W. Kernighan, Dennis M. Ritchie Język Ansi C, Wydawnictwa Naukowo - Techniczne, 2007 http://cm.bell-labs.com/cm/cs/cbook/index.html Scott E. Gimpel, Clovis L. Tondo Język Ansi C. Ćwiczenia
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,
ECLIPSE wnioski z dwóch pierwszych laboratoriów
PODSTAWY PROGRAMOWANIA 3-4 WYKŁAD 22-10-2015 ECLIPSE wnioski z dwóch pierwszych laboratoriów Dodanie pliku i konfiguracji startowej (każdy uruchamiany program powinien mieć własna konfigurację startową)
Czy procesor musi się grzać?
Czy procesor musi się grzać? Np. dodawanie 2 liczb 1-bitowych. Możliwych stanów początkowych: cztery Możliwych stanów końcowych: dwa to można opisać jako zmianę entropii zmiana entropii = (stała Boltzmanna)
Programowanie Procedurale
Programowanie Procedurale Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 6 Bożena Woźna-Szcześniak (AJD) Programowanie Procedurale Wykład 6 1 / 27 Zbiór ctime zawiera deklarcję
wykład I uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Wstęp do języka C wykład I dr Jarosław Mederski Spis Ogólne informacje
Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 2 3 4 5 6 7 Charakter wykładu ˆ zakłada znajomość idei programowania strukturalnego (np. w Pascalu) oraz podstaw używania środowiska UNIX (wykonywanie
Programowanie strukturalne język C
Programowanie strukturalne język C Dr inż. Sławomir Samolej D102 C, tel: 865 1766, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl S. Samolej - Informatyka 1 Cechy programowania strukturalnego
Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji?
Zadanie 01 W przedstawionym ponizej programie w jezyku ANSI C w miejscu wykropkowanym brakuje jednej linii: #include... int main() { printf("tralalalala"); return 0; } A. B. "iostream" C.
3. Identyfikacja. SKŁADNIA #include <sys/socket.h> int getpeername(int socket, struct sockaddr *addr, int *addrlen);
3.1. Określanie adresu połączonego hosta 3. #include int getpeername(int socket, struct sockaddr *addr, int *addrlen); Funkcja getpeername dostarcza adresu drugiej strony połączenia. Parametry:
2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania
Tablice wielowymiarowe. Przykład tablica 2-wymiarowa. Przykład. Przykład 3-wymiarowy. Tak naprawdę nie istnieją w C! Rozważmy tablicę o rozmiarze 3x2
Tablice wielowymiarowe Przykład tablica 2-wymiarowa Tak naprawdę nie istnieją w C! Tak naprawdę C i Java dopuszczają tworzenie tablic tablic tablica 2-wymiarowa = tablica (zwykłych) tablic tablica 3-wymiarowa
Podział programu na moduły
Materiały Podział programu na moduły Informatyka Szczegółowe informacje dotyczące wymagań odnośnie podziału na moduły: http://www.cs.put.poznan.pl/wcomplak/bfiles/c_w_5.pdf Podział programu na moduły pozwala
Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016
Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,
Część 4 życie programu
1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część
ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje
Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych
nowe operatory &. (kropka) * operator rzutowy ->, (przecinek) sizeof
nowe operatory &. (kropka) * operator rzutowy ->, (przecinek) sizeof 1 adres zmiennej Do pobrania adresu zmiennej używa się jednoargumentowego operatora & (uwaga & może mieć także znaczenie dwuargumentowego
int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania
Rok akademicki 2013/2014, Pracownia nr 10 2/20 Informatyka 1 Tablica elementów ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu Politechnika Białostocka - Wydział Elektryczny Elektrotechnika,
Materiał uzupełniający do ćwiczen z przedmiotu: Programowanie w C ++ - ćwiczenia na wskaźnikach
Materiał uzupełniający do ćwiczen z przedmiotu: Programowanie w C ++ - ćwiczenia na wskaźnikach 27 kwietnia 2012 Wiedząc, że deklarowanie typu rekordowego w języku C/ C++ wygląda następująco: struct element
Podstawy programowania. Wykład Co jeszcze... Przypomnienia, uzupełnienia. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Co jeszcze... Przypomnienia, uzupełnienia Krzysztof Banaś Podstawy programowania 1 Typy danych Podstawowe wbudowane typy danych języka C: _Bool 0 i 1 (C99) znaki (char) 7
Wykład 6_1 Abstrakcyjne typy danych stos Realizacja tablicowa i za pomocą rekurencyjnych typów danych
Wykład 6_ Abstrakcyjne typy danych stos Realizacja tablicowa i za pomocą rekurencyjnych typów danych Abstrakcyjny typ danych Klient korzystający z abstrakcyjnego typu danych: o ma do dyspozycji jedynie
Struktura programu. Projekty złożone składają się zwykłe z różnych plików. Zawartość każdego pliku programista wyznacza zgodnie z jego przeznaczeniem.
Struktura programu Projekty złożone składają się zwykłe z różnych plików. Zawartość każdego pliku programista wyznacza zgodnie z jego przeznaczeniem. W ostatnich latach najbardziej używanym stylem oprogramowania
۰ Elementem jednostkowym takiego pliku jest bajt. ۰ Format pliku binarnego: [bajty pliku][eof]
1 Plik jest wydzielonym fragmentem pamięci (najczęściej dyskowej) posiadającym nazwę. Z punktu widzenia C plik jest ciągiem bajtów, z których każdy może zostać oddzielnie odczytany. Zgodnie ze standardem
Programowanie Procedurale. Pliki w języku C++
Programowanie Procedurale. Pliki w języku C++ Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 10 Bożena Woźna-Szcześniak (AJD) Programowanie Procedurale. Pliki w języku C++
Etap 2 - Budowa interfejsu. typedef struct ELEMENT* stos; struct ELEMENT { dane Dane; stos Nastepny; }; struct kolejka { stos Poczatek, Koniec; };
Wykład 6_2 Abstrakcyjne typy danych kolejki. Implementacja za pomocą tablicy i rekurencyjnej struktury danych czyli listy wiązanej Etap 1 - Opis ADT Nazwa typu: Kolejka elementów Własności typu: Potrafi
Wskaźniki. Przemysław Gawroński D-10, p marca Wykład 2. (Wykład 2) Wskaźniki 8 marca / 17
Wskaźniki Przemysław Gawroński D-10, p. 234 Wykład 2 8 marca 2019 (Wykład 2) Wskaźniki 8 marca 2019 1 / 17 Outline 1 Wskaźniki 2 Tablice a wskaźniki 3 Dynamiczna alokacja pamięci (Wykład 2) Wskaźniki 8
Wykład X. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2016 Janusz Słupik
Wykład X Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2016 c Copyright 2016 Janusz Słupik Drzewa binarne Drzewa binarne Drzewo binarne - to drzewo (graf spójny bez cykli) z korzeniem (wyróżnionym
Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1 Pętle Pętla jest konstrukcją sterującą stosowaną w celu wielokrotnego wykonania tego samego zestawu instrukcji jednokrotne
Podstawy programowania w języku C++
Podstawy programowania w języku C++ Część trzynasta Tablice struktur, pliki struktur Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści
ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje
Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych
tablica: dane_liczbowe
TABLICE W JĘZYKU C/C++ tablica: dane_liczbowe float dane_liczbowe[5]; dane_liczbowe[0]=12.5; dane_liczbowe[1]=-0.2; dane_liczbowe[2]= 8.0;... 12.5-0.2 8.0...... 0 1 2 3 4 indeksy/numery elementów Tablica
Microsoft IT Academy kurs programowania
Microsoft IT Academy kurs programowania Podstawy języka C# Maciej Hawryluk Język C# Język zarządzany (managed language) Kompilacja do języka pośredniego (Intermediate Language) Kompilacja do kodu maszynowego
Podstawy Kompilatorów
Podstawy Kompilatorów Laboratorium 10 Translacja sterowana składnią w generatorze YACC. Zadanie 1: Proszę napisać program, który dla danej liczby całkowitej j oraz niepustego ciągu liczb naturalnych c
PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO
PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO LABORATORIUM Temat: QNX Neutrino Interrupts Mariusz Rudnicki 2016 Wstęp W QNX Neutrino wszystkie przerwania sprzętowe przechwytywane są przez jądro systemu. Obsługę
Wskaźniki. Programowanie Proceduralne 1
Wskaźniki Programowanie Proceduralne 1 Adresy zmiennych Sterta 1 #include 2 3 int a = 2 ; 4 5 int main ( ) 6 { 7 int b = 3 ; 8 9 printf ( " adres zmiennej a %p\n", &a ) ; 10 printf ( " adres
Poprzedni wykład [ ] :
Poprzedni wykład [ 18.12.2018 ] : - Argumenty wiersza poleceń - Podstawy obsługi błędów: stderr, exit, ferror - Parametry opcjonalne wywołania programu - Wskaźniki do funkcji: deklaracje, tablice - Użycie
Sieciowa komunikacja procesów - XDR i RPC
*** abc.x Przyklad pliku RPCGEN Obliczanie sumy, roznicy i iloczynu dwoch liczb calkowitych *** ************************************ Wywolanie procedury odleglej dopuszcza tylko jeden argument wywolania
Na ekranie monitora zostaną wyświetlone w dwu liniach teksty Pierwsza linia Druga linia
Struktura programu W programach napisanych w C++ litery wielkie i małe są rozróżniane i często po nauce Pascala są przyczyną błędów. Program napisany w języku C++ składa się zazw yczaj z następujących
Program w C. wer. 10 z drobnymi modyfikacjami! Wojciech Myszka :28:
Program w C wer. 10 z drobnymi modyfikacjami! Wojciech Myszka 2015-05-02 18:28:29 +0200 Tak wygląda program w języku C 1 / Hello World in C, Ansi s t y l e / 2 #include < s t d i o. h> 3 i n t main ( void
Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory
Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-19 Pętla while Pętla while Pętla
4. Tablica dwuwymiarowa to jednowymiarowa tablica wskaźników do jednowymiarowych tablic danego typu.
Języki i paradygmaty programowania 1 studia stacjonarne 2018/19 Lab 6. Tablice znakowe o dwóch indeksach, przekazywanie tablic do funkcji cd., dynamiczna alokacja pamięci, funkcje przetwarzające ciągi
Podstawy programowania 1
Podstawy programowania 1 Krzysztof Grudzień kgrudzi@kis.p.lodz.pl Wykład nr 2 1 Plan spotkań Wskaźniki Tablice jednowymiarowe & wska źniki. Programowanie w C. Wikibooks 2 Co to jest wskaźnik?? Wskaźnik
DANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE
DANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE Stała tekstowa / łańcuchowa jest tablicą znaków zakończoną znakiem o kodzie: 0 np. stała łańcuchowa: Jestem tekstem ASCII... J e s t e m t e k s t e m \0...
Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 9 - sem.iii. Dr inż. M. Czyżak
Katedra Elektrotechniki Teoretycznej i Informatyki wykład 9 - sem.iii Dr inż. M. Czyżak Język ANSI C tablice znaków Tablice znaków (łańcuchy) Tablice znaków stanowią specjalny rodzaj tablic o budowie ułatwiającej
Który ciąg instrukcji nada zmiennej n wartość równą ilości liczb w pliku binarnym skojarzonym ze strumieniem fp? Wymierz odpowiedź
Ile bajtów zajmuje tekst "\tansi-c\n"? a. 9 b. 10 c. 8 d. 11 Niepoprawny Ocena dla tego zadania: 0/1. Zaznacz poprawne definicje inicjujące tablice a. int M[ ] [ 4 ] = { { 1, 2 }, { 0 }, { 3, Tablica o
Łącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi.
Przykład: $ ls more Łącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi. Tworzenie łącza #include int pipe(int filedes[2]); Przykład: int
Wskaźniki. Informatyka
Materiały Wskaźniki Informatyka Wskaźnik z punktu widzenia programisty jest grupą komórek pamięci (rozmiar wskaźnika zależy od architektury procesora, najczęściej są to dwa lub cztery bajty ), które mogą
Podstawy programowania. Wykład 2 Zmienne i obsługa wejścia/wyjścia. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład 2 Zmienne i obsługa wejścia/wyjścia Krzysztof Banaś Podstawy programowania 1 Programowanie Programowanie typowe kroki zapis kodu źródłowego w pliku tekstowym kompilacja usuwanie
Wstęp do Programowania, laboratorium 02
Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite
TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ;
Ogólna postać definicji tablicy: TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ; np. int tablica [ 10 ]; // 10-cio elementowa tablica liczb całkowitych char tekst
Projektowanie klas c.d. Projektowanie klas przykład
Projektowanie klas c.d. ogólne wskazówki dotyczące projektowania klas: o wyodrębnienie klasy odpowiedź na potrzeby życia (obsługa rozwiązania konkretnego problemu) o zwykle nie uda się utworzyć idealnej
Dariusz Chaberski. UMK Toruń
przykłady w języku ANSI C Dariusz Chaberski UMK Toruń 1 rekurencja funkcji int silnia(int arg){ if(arg==1) return 1; return arg*silnia(arg-1); int liczba; printf("podaj liczbe: "); scanf("%d", &liczba);
Języki i paradygmaty programowania 1 studia stacjonarne 2018/19
Języki i paradygmaty programowania 1 studia stacjonarne 2018/19 Lab 4. Podstawowe biblioteki. Pętle. Operatory inkrementacji, dekrementacji, przypisania. Instrukcje goto, continue, break. Operacje na plikach.
Program w C. wer. 12 z drobnymi modyfikacjami! Wojciech Myszka :59:
Program w C wer. 12 z drobnymi modyfikacjami! Wojciech Myszka 2018-06-29 14:59:06 +0200 Tak wygląda program w języku C 1 /* H e l l o World i n C, Ansi s t y l e */ 2 # i n c l u d e < s t d i o. h> 3
Bardzo szybkie podsumowanie: wykład 1 wer. 6 z drobnymi modyfikacjami!
Bardzo szybkie podsumowanie: wykład 1 wer. 6 z drobnymi modyfikacjami! Wojciech Myszka 2016-05-08 17:54:50 +0200 Uwagi 1. Obowiązuje cały materiał! 2. Tu tylko podsumowanie. Program w C wer. 11 z drobnymi
Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 7- sem.iii. M. Czyżak
Katedra Elektrotechniki Teoretycznej i Informatyki wykład 7- sem.iii M. Czyżak Język C tablice znaków Tablice znaków (łańcuchy) Tablice znaków stanowią specjalny rodzaj tablic o budowie ułatwiającej przetwarzanie
Wstęp do Programowania 2
Wstęp do Programowania 2 dr Bożena Woźna-Szcześniak bwozna@gmail.com Akademia im. Jana Długosza Wykład 1 Literatura Literatura podstawowa: Prata Stephen. Szkoła programowania. Język C++. Wydanie V. Helion,
Język ANSI C. Pierwsze starcie. Programowanie Proceduralne 1
Język ANSI C Pierwsze starcie. Programowanie Proceduralne 1 Znowu trochę historii 1972 Dennis Ritchie (Bell Labs.,New Jersey), projekt języka C na bazie języka B 1973 UNIX, jądro w C, pierwszy przenośny
Język ANSI C. Pierwsze starcie. Programowanie Proceduralne 1
Język ANSI C Pierwsze starcie. Programowanie Proceduralne 1 Znowu trochę historii 1972 Dennis Ritchie (Bell Labs.,New Jersey), projekt języka C na bazie języka B 1973 UNIX, jądro w C, pierwszy przenośny
Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
programowania Wykład: 5 Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania w C++ Instrukcje sterujące 2 dr Artur Bartoszewski