Autor: mgr inż. Sławomir Samolej. Zagadnienie 1. (instrukcja wyboru: switch)

Podobne dokumenty
Programowanie systemów czasu rzeczywistego laboratorium. Ćwiczenie 1

1. Programowanie strukturalne podstawowe typy danych, instrukcje, struktury danych i funkcje w języku C

Język C zajęcia nr 5

do instrukcja while(wyrażenie);

while(wyrażenie) instrukcja

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński

Argumenty wywołania programu, operacje na plikach

Język C zajęcia nr 11. Funkcje

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

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

if (warunek) instrukcja1; if (warunek) instrukcja1; else instrukcja2; a > b - a większe od b if (warunek) instrukcja1; a <= b - a mniejsze lub równe b

Programowanie komputerowe. Zajęcia 3

Programowanie strukturalne i obiektowe. Funkcje

Funkcje i tablice. Elwira Wachowicz. 23 maja 2013

1. Wprowadzanie danych z klawiatury funkcja scanf

1 Podstawy c++ w pigułce.

Język C, tablice i funkcje (laboratorium)

1 Podstawy c++ w pigułce.

Język ludzki kod maszynowy

Język C, tablice i funkcje (laboratorium, EE1-DI)

Zmienne, stałe i operatory

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru

Tablicę 2-wymiarową można przedstawić jako pewien zestaw tablic 1-wymiarowych np.:

Wprowadzenie do programowania w języku C

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

INFORMATYKA Studia Niestacjonarne Elektrotechnika

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

Instrukcje sterujące. Programowanie Proceduralne 1

2 Przygotował: mgr inż. Maciej Lasota

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji?

Wykład 3. Instrukcje powtarzające

Struktury Struktura polami struct struct struct struct

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41

Programowanie strukturalne język C

Laboratorium 10: Maszyna stanów

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Proste typy zmiennych języka C++ *) Zapis 3.4 e-38 jest równoważny zapisowi 3,

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Część 4 życie programu

Podstawy programowania skrót z wykładów:

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors.

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Podstawy Programowania C++

Podstawy Programowania Podstawowa składnia języka C++

Funkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów

Podstawy programowania w języku C i C++

Programowanie I C / C++ laboratorium 03 arytmetyka, operatory

Wstęp do Programowania, laboratorium 02

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

Ćwiczenie nr 3. Temat: Definicje i wykorzystanie funkcji, parametry funkcji

Programowanie strukturalne i obiektowe

Wstęp do programowania. Wykład 1

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

4. Funkcje. Przykłady

int tab1[30]; // 30-elementowa tablica elementów typu int char tekst[10]; // 10-elementowa tablica elementów typu char (tablica tekstowa)

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje

Języki i metodyka programowania. Wprowadzenie do języka C

3. Opracować program kodowania/dekodowania pliku tekstowego. Algorytm kodowania:

/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h>

Operatory. Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1

1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998.

Warto też w tym miejscu powiedzieć, że w C zero jest rozpoznawane jako fałsz, a wszystkie pozostałe wartości jako prawda.

1 Powtórzenie wiadomości

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

Języki i metody programowania. Omówienie języków C, C++ i Java

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta Strona 1 z 26. Powrót. Full Screen. Zamknij.

Microsoft IT Academy kurs programowania

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Wstęp do programowania

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1

Wstęp do informatyki- wykład 2

Programowanie w języku Python. Grażyna Koba

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Ćwiczenia podstawowe, zestaw 5, część 1

Podstawy programowania. Wykład 3 Konstrukcje sterujące. Krzysztof Banaś Podstawy programowania 1

KURS C/C++ WYKŁAD 1. Pierwszy program

Podstawy programowania w C++

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

IX. Wskaźniki.(3 godz.)

Wyrażenia arytmetyczne

Wstęp do programowania

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Podstawy i języki programowania

#include <stdio.h> void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Powtórka algorytmów. Wprowadzenie do języka Java.

Język C część 2. Podejmowanie decyzji w programie. if else. switch

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby

Podstawy i języki programowania

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Transkrypt:

Temat zajęć: Funkcje w języku C Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (instrukcja wyboru: switch) Instrukcji switch używa się wtedy, gdy zachodzi potrzeba dokonania wyboru na podstawie pewnego wyrażenia liczbowego o ograniczonym zbiorze wartości. Postać instrukcji switch jest następująca: switch(wyrażenie) case wyrażenie stałe 1: case wyrażenie stałe 2:... case wyrażenie stałe 3: default: lista instrukcji 1 lista instrukcji 2 lista instrukcji n awaryjna lista instrukcji Przykład: case 0 : printf("zero\n"); case 2 : printf("mała\n"); case 5 : printf("średnia\n"); default : printf("duża\n"); W czasie wykonywania instrukcji switch w pierwszej kolejności następuje obliczenie wyrażenia znajdującego się w nawiasie po słowie kluczowym switch. Wynik wyrażenia porównywany jest z zestawem stałych wyrażeń podawanych po słowach kluczowych case, a

zakończonych znakiem :. Jeśli wartość wyrażenia w nawiasie po słowie switch jest identyczna z wartością pewnego wyrażenia stałego, następuje wykonanie wszystkich instrukcji znajdujących się po tym wyrażeniu stałym. W instrukcji switch zamiast słowa kluczowego case można w jednym miejscu wstawić słowo default. Jeśli w czasie wykonywania instrukcji switch żadne z wyrażeń stałych po słowach case nie będzie odpowiadać wyrażeniu po słowie kluczowym switch, to w czasie wykonywania instrukcji switch wykonane zostaną instrukcje umieszczone po słowie kluczowym default. Częstą praktyką jest stosowanie wewnątrz instrukcji switch instrukcji break. Umożliwia to przerwanie ciągu wykonywanych instrukcji. Zadania: Dany jest przykładowy program, uruchomić i wyjaśnić wynik jego działania, dla następujących wartości wejściowych: 0, 1, 4, 10, -5. Program przykładowy: case 0 : printf("zero\n"); case 2 : printf("mała\n"); case 5 : printf("średnia\n"); default : printf("duża\n"); Dany jest przykładowy program, uruchomić i wyjaśnić wynik jego działania, dla następujących wartości wejściowych: 0, 1, 4, 10, -5. Program przykładowy: case 0 : printf("zero\n");

case 2 : printf("mała\n"); case 5 : printf("średnia\n"); default : printf("duża\n"); Dany jest przykładowy program, uruchomić i wyjaśnić wynik jego działania, dla następujących wartości wejściowych: 0, 1, 4, 10, -5. Program przykładowy: case 0 : printf("zero\n"); case 2 : printf("mała\n"); default : printf("duża\n"); case 5 : printf("średnia\n"); Dany jest przykładowy program, uruchomić i wyjaśnić wynik jego działania, dla następujących wartości wejściowych: 0, 1, 4, 10, -5. Program przykładowy: case 0 : printf("zero\n"); case 2 : printf("mała\n"); default : printf("duża\n");

case 5 : printf("średnia\n"); Dany jest program wyliczający ilość spacji i kropek w linii tekstu z zastosowaniem instrukcji switch. Należy uzupełnić program w taki sposób, aby obliczał ilość cyfr i tabulacji. Dany program: int c, n_space, n_dot; c=n_space=n_dot=0; do c=getchar(); switch(c) case '.' : n_dot++; case ' ' : n_space++; default : while(c!='\n'); printf("kropki: %d, Spacje: %d",n_dot,n_space);

Zagadnienie 2. (definiowanie funkcji w języku C) Pojęcie funkcji wprowadzono w języku C w celu umożliwienia tworzenia podprogramów fragmentów programów, które mają zdefiniowany interfejs z otoczeniem i mogą być wykorzystywane wielokrotnie w obrębie danego programu lub stosowane w wielu pisanych programach. Typowy program w języku C jest zestawem definicji funkcji oraz sposobu ich wywoływania. Przykład: int suma(int a, int b); int x,y,s; x=6; y=8; printf("x=%d\ty=%d\n",x,y); s=suma(x,y); printf("suma=%d\n",s); s=suma(3,4); printf("suma=%d\n",s); int suma(int a, int b) int c; c=a+b; return c; //definicja funkcji Do funkcji przekazuje się dane poprzez jej parametry (listę nazw i typów danych umieszczoną w nawiasie po nazwie funkcji). W czasie definiowania funkcji określa się również typ danych, jaki funkcja może zwracać (typ danych podany przed nazwą funkcji). Funkcja w programie rozpoznawana jest przez swoją nazwę. Niezależnie od położenia i ilości zadeklarowanych w programie funkcji, program zawsze rozpoczyna swoje działanie od wywołania funkcji main. Przesłanie danych do funkcji odbywa się przez wypełnienie listy jej parametrów, np.: suma(1,4) Przejęcie wyniku zwracanego przez funkcję odbywa się przy pomocy operatora przypisania: s=suma(23,44) Zadania:

Dany jest przykładowy program: float fabs(float x); float a, w_bz; printf("podaj liczbę zmiennopozycyjna:"); scanf("%f",&a); w_bz=fabs(a); printf(" a =%f",w_bz); float fabs(float x) //definicja funkcji Uzupełnić treść funkcji fabs, w taki sposób, aby wyliczała ona wartość bezwzględną z wprowadzanej do niej liczny zmiennopozycyjnej i zwracała ją. Dany jest przykładowy program: int ile_zerowych_bitow(unsigned char a); unsigned char dana=0x11; int wyn; wyn=ile_zerowych_bitow(dana); printf("liczba: %x (szesnastkowo) zawiera: %d zerowych bitow\n",dana,wyn); int ile_zerowych_bitow(unsigned char a) //definicja funkcji Zaproponować treść funkcji ile_zerowych _bitów, która obliczać będzie ilość bitów będących zerami w danej przekazywanej do funkcji i która będzie zwracała obliczoną wartość. Dany jest przykładowy program: int czy_duza(char a);

char c; int l_duza=0; do c=getchar(); if(czy_duza(c)==1) l_duza++; while(c!='\n'); printf("w linii tekstu było %d duzych liter",l_duza); int czy_duza(char a) //definicja funkcji Zaproponować treść funkcji czy_duza, która ma zwracać wartość 1, gdy jej parametr wywołania jest dużą literą lub 0 w przeciwnym wypadku. Przykładowy program, który podano powyżej stosuje funkcję czy_duza do wyliczenia ilości dużych liter we wprowadzonej linii tekstu. Dany jest przykładowy program: char na_duza(char a); char c; do c=getchar(); c=na_duza(c); putchar(c); while(c!='\n'); char na_duza(char a) //definicja funkcji Zaproponować treść funkcji na_duza, która ma zamieniać wszystkie małe litery na duże, pozostałe zaś znaki pozostawiać bez zmian. Przykładowy program, który podano powyżej

stosuje funkcję na_duza do przekształcenia linii tekstu w taki sposób, aby wszystkie małe litery tekstu zapisane były jako duże. Dany jest program: long silnia(long n); long n,s; printf("podaj, dla jakiej liczby ma zostać obliczona silnia:"); scanf("%ld",&n); s=silnia(n); printf("%ld! = %ld",n,s); long silnia(long n) //definicja funkcji Należy uzupełnić funkcję silnia w taki sposób, aby obliczała i zwracała silnię z parametru n. Poniżej zamieszczono algorytm obliczania silni: START n s=1 i=2 N i<=n s T s=s*i i=i+1 STOP Dany jest wykres funkcji:

y 1-1 1 x Dany jest program: float f1(float x); float a=-3.0, b=0.45, c=11.0, f1a, f1b, f1c; f1a=f1(a); f1b=f1(b); f1c=f1(c); printf("\n f1(%f) = %f",a, f1a); printf("\n f1(%f) = %f",b, f1b); printf("\n f1(%f) = %f",c, f1c); float f1(float x) Należy uzupełnić funkcję f1 w taki sposób, aby obliczała i zwracała wartości zgodne z danym wykresem funkcji.