W02_wej-wyj_if_else_switch.doc

(50 KB) Pobierz
1 Wykład: Jezyk C

Funkcja: printf()              biblioteka: <stdio.h>

wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout)

int   printf ( tekst_sterujący , argument_1 , argument_2 ,  . . .  ) ;

tekst sterujący

jest to stała łańcuchowa (w podwójnych cudzysłowach) zawierająca:

              - zwykłe znaki (które są po prostu kopiowane na ekran)

              - kody formatujące kolejnych argumentów:

              %c              -              pojedynczy znak

              %s              -              łańcuch znaków

              %d              -              liczba dziesiętna ze znakiem

              %f              -              liczba zmiennoprzecinkowa (notacja dziesiętna)

              %e              -              liczba zmiennoprzecinkowa (notacja wykładnicza)

              %g              -              liczba zmiennoprzecinkowa (krótszy z formatów %f %e)

              %u              -              liczba dziesiętna bez znaku

              %x              -              liczba w kodzie szesnastkowym (bez znaku)

              %o              -              liczba w kodzie ósemkowym (bez znaku)

              l              -              przedrostek (long) stosowany przed:  d  u  x  o

 

np.              #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  );

              }

efekt na ekranie ® Wynik obliczen 10 + 20 = 30.000000

Aby określić ilość drukowanych cyfr do kodu formatującego można dodać kody długości:   %Xd     %X.Xf

np.              %4d              -              liczba dziesiętna na czterech pozycjach

              %10f              -              liczba rzeczywista na 10 pozycjach

              %10.2f              -              liczba rzeczywista na 10 pozycjach, 2 cyfry po przecinku

              %.3f              -              liczba rzeczywista z dokladnoscią do 3 cyfr po przecinku

M.Piasecki: INFORMATYKA 1               - 3 -              (W2)   Operacje wejścia/wyjścia


Funkcja: scanf()              <stdio.h>

odczytuje dane ze standardowego strumienia wejściowego (stdin)
w/g zadanego formatu i zapamiętuje je pod zadanymi adresami pamięci

int  scanf ( tekst_sterujący , adres_1 , adres_2 ,  . . .  ) ;

tekst sterujący ® jest to stała łańcuchowa (w podwójnych cudzysłowach) zawierająca instrukcję jak traktować kolejne dane wczytywane ze strumienia (jakie typy zmiennych są pod adresami adres_1, adres_2, ... )

Kody formatujące (podobne jak dla printf() ):

              %c              -              pojedynczy znak

              %s              -              łańcuch znaków

              %d              -              liczba dziesiętna ze znakiem

              %f  lub  %e              -              liczba zmiennoprzecinkowa

              %u              -              liczba dziesiętna bez znaku

              %x              -              liczba w kodzie szesnastkowym (bez znaku)

              %o              -              liczba w kodzie ósemkowym (bez znaku)

              l              -              przedrostek stosowany przed:  d  u x (long int)

              l              -              przedrostek stosowany przed:  f (double)

              L              -              przedrostek stosowany przed:  f (long double)

-   operator adresowania (zwraca adres zmiennej podanej po operatorze)

np.              #include <stdio.h>

              void main(void)

              {

                            int x;

                            double y;

                            char znak;

                            printf( ”Podaj jedna liczbe calkowita: ” );

                            scanf ( ”%d”  ,  &x  );

                            printf( ”Podaj jedna liczbe rzeczywista i jeden znak: ”);

                            scanf ( ”%lf  %c”  ,  &y&znak  );

              }

Wydruk ®   Podaj jedna liczbe calkowita:

Odczyt  ¬   123 ¿

Wydruk ®   Podaj jedna liczbe rzeczywista i jeden znak:

Odczyt  ¬   456.789  a ¿

Wynik wczytywania:  x == 123,  y == 456.789,  znak == ’a’


PODSTAWOWE  INSTRUKCJE  JĘZYKA C++

·     Nawiasy klamrowe { } są używane do grupowania wielu deklaracji i instrukcji w jedną instrukcję złożoną (jeden blok).

przykład:

                            #include <stdio.h>

                            void main( void )





                            {

                                          int  a = 10,  b = 20 ;





                                                        {

                                                                      int a = 30 ;                            // przesłonięcie poprzedniej definicji a

                                                                      printf( A = %d, B = %d \n” , a , b );              // wydruk:    A=30, B=20



                                                        }

                                          printf( ”A = %d, B = %d \n” , a , b );              // wydruk:    A=10, B=20

                                          . . .

                                          if( a > 0 )





                                                        {

                                                                      printf( ”Podaj nową wartość A =” );

                                                                      scanf( ”%d” , &a );



                                                        }



                            }

·     Instrukcja warunkowa:

              if ( wyrażenie )
                            instrukcja_1 ;
              else
                            instrukcja_2 ;

- część od słowa else można pominąć,
- instrukcja sprawdza czy wyrażenie jest różne od zera
        tzn.  if ( wyrażenie )      jest równoważne      if ( wyrażenie != 0 )

              #include <stdio.h>

              void main( void )

              {              int a;

                            printf( Podaj wartość dodatnią A = ” );     scanf( ”%d” , &a );

                            if( a < 0 ) a = -a ;

                            if( a==0 )
                                          {              printf( A jest zerowe, podaj nową wartość A = ” );  scanf( ”%d...

Zgłoś jeśli naruszono regulamin