Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Željezo
  • Struktura najjednostavnije aplikacije s. Ostale izlazne funkcije PUTS, PUTCHAR

Struktura najjednostavnije aplikacije s. Ostale izlazne funkcije PUTS, PUTCHAR

U C programima postoji određeni slijed:

Prvo dodajemo knjižnice koje su nam potrebne #include Ako se datoteka nalazi u trenutnom direktoriju projekta, označena je pod navodnicima. Za datoteku koja se nalazi u drugom direktoriju, morate navesti puni put u navodnicima.

#uključiti
#include "math.h"

Nakon toga možemo dodati konstante koje su nam potrebne #define A 3

Nakon toga, funkcija počinje naredbom Main ().

Nakon što je sve učinjeno, možete unijeti getchar ()

2. Čemu služi točka-zarez u C?

C koristi točku i zarez za označavanje kraja iskaza.

3. Da li svi prevoditelji C zahtijevaju povratnu naredbu u programu?

Za povratak cjelobrojne vrijednosti, redak se dodaje prije kraja funkcije

Također, u većini slučajeva povratak znači izlazak iz funkcije.

Naredbe tijela funkcije izvode se prije prve povratne izjave. Ako u tijelu funkcije nema takvog operatora (to jest, funkcija ne vraća nikakav rezultat), tada se izvršavaju svi operatori do zagrade za zatvaranje operatora.

Funkcija izlaza elemenata niza za ispis ne vraća nikakav rezultat, t.j. nema povratne izjave u tijelu funkcije.

4. U koju svrhu se komentari unose u tekst programa?

Komentari se unose kako bi se objasnila radnja

na primjer Printf (‘’ Hello World’’); // prikaz Hello World

Također možete unijeti komentare sa / * - na početku * / - na kraju komentara

5. Za što se koriste parametri prilikom pozivanja funkcije?

Veza je u biti drugo ime istog objekta. Kada se objekt po referenci prosljeđuje funkciji, taj se objekt zapravo prosljeđuje. Kada predamo objekt po vrijednosti, njegova kopija se prosljeđuje funkciji.

void func_1 (int a) // proći po vrijednosti

6. Da li sve funkcije zahtijevaju da se parametri proslijede kada se pozovu?

Po mom mišljenju, ne baš sve, jer možemo jednostavno napisati funkciju tipa main () bez prosljeđivanja parametara po vrijednosti

1. Što je tip podataka char?

Tip podataka char je cjelobrojni tip podataka koji se koristi za predstavljanje znakova. To jest, svaki znak odgovara određenom broju iz raspona. Tip podataka char se također naziva tipom podataka znakova, budući da je grafički prikaz znakova u C++ moguć zahvaljujući char. Za predstavljanje znakova u C ++, tipu podataka char dodjeljuje se jedan bajt, u jednom bajtu - 8 bita, zatim podižemo dva na stepen 8 i dobivamo vrijednost 256 - broj znakova koji se može kodirati. Dakle, koristeći tip podataka char, možete prikazati bilo koji od 256 znakova. Svi kodirani znakovi predstavljeni su u ASCII tablici.

2. Kako se simbol "3" razlikuje od broja 3?

znak 3 razlikuje se od cijelog broja 3 po tome što se znak ne može koristiti u aritmetičkim operacijama

3. Koja je razlika između konstante i varijable?

Razlika između varijable i konstante je prilično očita: tijekom izvođenja programa vrijednost varijable može se promijeniti (na primjer, dodjelom), ali vrijednost konstante ne može

4. Kako definirati konstantu?

Konstante u C ++ slične su konstantama u C. Za predstavljanje konstante u C-u korištena je samo direktiva predprocesora #define:

const tip Ime varijable = Početna vrijednost;

Opseg konstante je isti kao i obične varijable. Možete deklarirati pokazivač na konstantu pomoću ključne riječi const

5. Podržava li C tip podataka niza?

C ne podržava zasebnu vrstu podataka niza, ali dopušta definiranje nizova na dva različita načina. Prvi koristi niz znakova, a drugi koristi pokazivač na prvi znak niza.

6. Zadržava li varijabla svoju vrijednost tijekom cijelog programa?

tijekom izvođenja programa vrijednost varijable se može promijeniti (na primjer, korištenjem dodjele), ali vrijednost konstante ne može

7. Kako mogu promijeniti vrijednost konstante?

1. Koje su razlike između \ n i \ r izlaznih sekvenci?

Grubo govoreći, \ r je trebao nulirati broj znakova. ostavljajući broj reda nepromijenjenim (tj. pomaknut će nosač pisaćeg stroja na početak reda bez dodirivanja papira), a \ n, naprotiv, skočit će na sljedeći redak, ostavljajući trenutnu poziciju ispisa nepromijenjenom (pomicanje papira bez dodirivanja kočije).

2. Kako prikazati znak citata na ekranu?

printf ("Moj tekst je: \" moj tekst \ "\ n");

3. Koja su dva dijela popisa parametara printf ()?

Prilikom ispisa broja ili izraza prvo se upisuje Printf ().

U zagradama, na početku u navodnicima, upisujemo podatke koji su nam potrebni, tj

% s - jedan znak
% d - decimalni cijeli broj s predznakom
% f - broj s pomičnim zarezom (decimalni zapis)
% s - niz znakova (za varijable niza)
% u - decimalni cijeli broj bez predznaka
%% - ispis znaka postotka

Na primjer:

printf ("x =% 5i \ ty =% f \ tz =% 7.3f \ n", x, y, z);

4. Koje su prednosti funkcije printf () u odnosu na puts ()?

5. Što je indikator formata?

Čita vrijednost s pomičnim zarezom (samo C99)

Isto kao% kod (samo C99)

Čita jedan znak

Čita decimalni cijeli broj

Čita cijeli broj u bilo kojem formatu (decimalno, oktalno ili heksadecimalno)

Isto kao% e

Čita broj s pomičnim zarezom

Isto kao kod% f (samo C99)

Čita broj s pomičnim zarezom

Isto kao kod% g

Čita oktalni broj

Čita redak

Čita heksadecimalni broj

Isto kao kod% x

Čita pokazivač

Prihvaća cjelobrojnu vrijednost jednaku broju do sada pročitanih znakova

Čita decimalni cijeli broj bez predznaka

Traži skup znakova

Čita znak postotka

6. Kako prikazati vrijednost numeričke varijable?

Možete prikazati njegovu vrijednost pomoću funkcije Printf ().

printf ("% 7.3f \ t% 7.3f \ n", x, y);

%<количество_позиций_под_значение>.<количество_позиций_под_дробную_часть>f

%<количество_позиций_под_значение>i

Struktura C programa.

Korištenje programskog jezika C u rješavanju ekonomskih problema

Programi i podaci

Prednosti jezika C

1) S je moderan jezik, njegova struktura potiče programera na korištenje metoda u svom radu: top-down dizajn, strukturirano programiranje, modularna struktura programa.

2) C je učinkovit jezik. C programi su kompaktni i brzi.

3) C - prijenosni ili mobilni jezik.

4) C je moćan i fleksibilan jezik.

5) Programi napisani u C koriste se za rješavanje problema različitih razina. C ima niz moćnih asemblerskih konstrukcija.

6) C je zgodan jezik, strukturiran je i u isto vrijeme ne ograničava previše slobodu programera.

7) C je jezik za prevođenje. Budući da je C standardiziran, o uređaju neovisan, široko dostupan jezik, aplikacija napisana u C-u često se može izvoditi s malo ili bez izmjena na velikom broju računalnih sustava. Računalo je, unatoč svojoj brzini i računskoj snazi, jednostavan uređaj koji manipulira binarnim brojevima. Neke binarne brojeve računalo tumači kao naredbe, druge kao podatke. Da bi računalo učinilo nešto korisno, trebate napisati program.

Programiranje programske aktivnosti.

Program je opis algoritma za rješavanje problema danog u jeziku računala.

Naredba recept koji određuje sljedeći korak.

Primjer naredbe: C = A + B, gdje su A, B operandi, + je operacija.

Operacija je ono što računalo mora učiniti prema svakoj naredbi.

Operandi -sudionici operacije, zatim na čemu i čime se operacija izvodi. Skup elementarnih operacija iz metoda njihovih opisa tvori sustav naredbi programskog jezika.

Primjer br. 1:

# uključiti

(void main (void) // zaglavlje glavne funkcije programa

cout<< “Здравствуй, С!\ n”;

1 redak: povezivanje pomoćnih knjižnica usmjerenih na unos i izlaz podataka različitih tipova u tok.

2. red: naslov glavne funkcije programa. Cout-operator izlaza informacija<< – помещение в класс данных, \n-переход к новой строке вывода.

Program je slijed uputa koje implementiraju algoritam, skup recepata koji na jedinstven način određuju sadržaj i slijed operacija za rješavanje problema.

Koristeći C.

1. Programi i podaci.

2. Shema izvođenja programa na računalu:

Primjer br. 1:

# uključiti< stdio.h>

printf ("Studiram na BSUIR \ n");

Redak 1: naredba predprocesora uključi koja uključuje datoteku stdio.h koja opisuje funkciju knjižnice printf.

Redak 2: definicija funkcije pod nazivom main, koja ne prima nikakve argumente. Glavna izjava je zatvorena vitičastim zagradama. Glavna funkcija poziva funkciju knjižnice printf da ispiše navedeni niz znakova. Kosa crta (\ n) je znak novog reda, prijelaz na novi redak.

Da biste izvršili program na PVEM-u, morate učiniti sljedeće:

1) Napravite program u programskom jeziku.

2) Emitirajte ga na standardu ovog jezika.

3) Povežite ga s potrebnim programima i funkcijama.

4) Učitavanje u RAM.

5) Izvršite i dobit ćete rezultat.


SHEMA USKLAĐENOSTI

Prevoditelj je računalni program za prevođenje programa napisanog u programskom jeziku u oblik koji računalo može razumjeti. Prevoditelj proizvodi datoteku s nastavkom obj. Izvršna datoteka ili modul za učitavanje je datoteka koja sadrži preveden i spreman za pokretanje programa. Borland C ++ je okruženje za razvoj programa koji uključuje kompajler i nekoliko drugih alata.

Struktura C programa.

Svaki program u jeziku C sastoji se od jedne ili više funkcija i elemenata. Različitim funkcijama može se dati bilo koji naziv. F-cije sadrže upute (naredbe) koje propisuju radnje u određenoj fazi izvršenja, a varijabla pohranjuje vrijednosti koje se koriste u procesu tih radnji. Takve radnje mogu biti dodjeljivanje vrijednosti varijablama, provjera određenog stanja. Funkcija pod nazivom main. Izvršenje bilo kojeg programa počinje glavnom funkcijom.

a) Opća struktura C programa bez pozivanja potprograma:

b) Opća struktura C programa s pozivom na potprogram:

Argumenti su jedan od mehanizama interakcije između funkcija. Popis argumenata u zagradama slijedi nakon naziva funkcije. Vitičaste zagrade uokviruju početak i kraj programa. Instrukcije koje čine tijelo programa od operatora i operanda. U C-u svaki izraz i svaki redak poziva funkcije završava točkom i zarezom. Jedina iznimka su naredbe pretprocesora i nazivi funkcija na početku programske jedinice. Cilj većine programa je riješiti problem raznim transformacijama početnih podataka. Za to je potrebno.

C program se sastoji od jednog ili više potprograma koji se nazivaju funkcije.

C jezik je blokovske strukture. Svaki blok je zatvoren vitičastim zagradama ().

Glavni blok u aplikacijskom programu C konzole je glavna funkcija pod nazivom main ().

Svaka radnja u jeziku C završava točkom i zarezom -; ... Akcija može biti poziv funkcije ili neke operacije.

Naziv funkcije je skupni naziv grupe opisa i operatora,
zatvoreno u blok (kovrčave zagrade). Parametri funkcije navedeni su u zagradama iza naziva funkcije.

C Komentari

C jezik koristi simbole za komentare

/ * - početak komentara;
* / - kraj komentara.

Cijeli niz između ovih znakova je komentar.

Zgodno je pisati višelinijski komentari:

int a; / * cijeli
varijabla * /

Komentari u više redaka također su korisni prilikom otklanjanja pogrešaka kako bi se sakrili dijelovi koda od izvršavanja.

Osim toga, // simboli se mogu koristiti za pisanje kratkih komentara. U ovom slučaju, komentar je sve što se nalazi iza // simbola i do kraja retka:

plutati b; // realna varijabla

Glavna funkcija

Prilikom izvršavanja konzolne aplikacije napisane u C-u, operativni sustav računala prenosi kontrolu na funkciju pod nazivom main (). Funkcija main () ne može se pozvati iz drugih programskih funkcija, to je kontrolna funkcija.

Zagrade iza naziva funkcije koriste se za označavanje parametara (argumenata) koji se prosljeđuju funkciji kada se ona pozove. U ovom slučaju operativni sustav ne prosljeđuje nikakve argumente funkciji main (), pa je popis argumenata u zagradama prazan.

Glavna funkcija može se napisati na različite načine:

  • int main ()
  • void main ().

Tip povratne vrijednosti naveden je prije naziva funkcije. Kada se pozove glavna funkcija, vrijednost se vraća operativnom sustavu. Posljednji unos neće vratiti vrijednosti. ali void main ()- nije sasvim ispravna notacija, budući da prevoditelju govori da funkcija main () ne vraća nikakvu vrijednost.

U ovom slučaju, zapisnik int main () govori prevoditelju da vrati cjelobrojnu vrijednost koju zahtijeva operativni sustav i govori mu da je program ispravno prekinut. Ako se ova vrijednost ne vrati, operativni sustav razumije da je program prekinut u nenormalnom načinu rada.
Za povratak cjelobrojne vrijednosti, redak se dodaje prije kraja funkcije

vrati 0; // realna varijabla

Opisi i operatori su zatvoreni u vitičaste zagrade.

Općenito, program može sadržavati nekoliko funkcija. Svaka funkcija ima popis parametara koji su joj proslijeđeni, naznačeni u zagradama, i skup operacija, zatvorenih u blok, ograničenih vitičastim zagradama.

Primjer: Prikaz poruke "Zdravo, svijet!" ...

1
2
3
4
5
6
7

#uključiti // Povežite I/O biblioteku
int main () // Glavna funkcija
{
printf ("Zdravo, svijet!"); // Prikažite poruku
getchar (); // Odgodi prozor konzole
vrati 0;
}


Rezultat programa:

Pokušajmo sada napisati tekst na ruskom.

1
2
3
4
5
6
7

#uključiti
int main ()
{
printf ( "Pozdrav svijete!");
getchar ();
vrati 0;
}


Rezultat programa:


Problem s ruskim jezikom u konzolnim aplikacijama je taj što konzola i uređivač koda Microsoft Visual Studio podržavaju različite kodne stranice. Da biste vidjeli ruske znakove u konzoli, morate promijeniti kodnu stranicu u konzoli tako da odgovara kodnoj stranici urednika (1251). U tu svrhu, sustav ( "chcp 1251") s odgovarajućom naredbenom linijom. Prototip funkcije sustava () nalazi se u knjižnici .

U ovom slučaju, tekst programa će izgledati ovako.

Sastav jezika U tekstu na bilo kojem prirodnom jeziku, četiri
osnovni elementi: simboli, riječi, fraze i rečenice.
Algoritamski jezik sadrži slične elemente:
Abeceda jezika, odnosno njegovi simboli, glavni su nedjeljivi znakovi, s
uz pomoć kojih su napisani svi tekstovi na jeziku.
Leksem je minimalna jedinica jezika koja ima samostalnu
značenje.
Izraz specificira pravilo za izračunavanje određene vrijednosti.
Operator navodi potpuni opis neke radnje.
Složena radnja zahtijeva slijed
operateri. Operatori se mogu kombinirati u spoj
operator ili blok (blok u C ++ je
niz izjava zatvorenih vitičastim zagradama ()).
U ovom slučaju oni se tretiraju kao jedan operater.
Svaki element jezika definiran je sintaksom i semantikom.
Sintaktičke definicije uspostavljaju pravila građenja
elemenata jezika, a semantika određuje njihovo značenje i pravila
koristiti.
Skup opisa kombiniranih jednim algoritmom i
operatori tvore program u algoritamskom jeziku.

Proces izvođenja programa

Da biste izvršili program, morate ga prevesti
u jezik razumljiv procesoru - u strojne kodove. Ovaj
proces se sastoji od nekoliko faza:
Prvo se program prosljeđuje pretprocesoru, koji
uključuje tekstualne datoteke koje sadrže opis
elemenata koji se koriste u programu.
Rezultirajući puni tekst programa šalje se na ulaz
prevodilac koji izvlači tokene i zatim se temelji na
gramatika jezika prepoznaje izraze i operatore,
izgrađen od ovih žetona. U ovom slučaju prevodilac otkriva
sintaktičke pogreške i, u njihovom nedostatku, građe
objektni modul.
Linker, ili linker, generira
izvršni modul programa koji se povezuje s objektom
module ostali objektni moduli. Ako se program sastoji
iz nekoliko izvornih datoteka, sastavlja ih
odvojeno i kombinirano u fazi povezivanja.
Izvršni modul ima ekstenziju .exe i može biti
pokrenut na izvršenje.

C++ abeceda

C abeceda uključuje:
velika i mala slova latinske abecede (A, B, ..., Z, a, b, ..., z) i i
podvlaka;
znamenke: 0,1,2,3,4,5,6,7,8,9
posebni znakovi: ", () | () * + - /% \;". :?< = >_! & # znak koji se ne može prikazati ("generički razmak"),
koristi se za odvajanje tokena jedan od drugog (na primjer, razmak,
tabela, prijelom reda).
Od simbola abecede
tvore se leksemi jezika:
identifikatori;
ključne (rezervirane) riječi;
znakovi rada;
konstante;
graničnici (zagrade, točka, zarez, razmak).
Granice tokena definirane su drugim tokenima kao npr
separatori ili znakovi rada.

Identifikatori

Identifikator je naziv programskog objekta. V
identifikator se može koristiti na latinskom
slova, brojke i donja crta. Velika slova i
mala su slova različita. Prvi lik
identifikator može biti slovo ili znak
podvlake. pri čemu:
identifikator ne smije odgovarati ključu
riječi i imena koje koristi standard
jezični objekti;
ne preporuča se započinjati identifikatore znakom
podcrtavanje;
Identifikatori mogu biti bilo koje duljine, ali
prevodilac ne broji više od 31 znak od
početak identifikatora;
Primjeri identifikatora:
COM_16, veličina 88, _MIN, VRIJEME, vrijeme

Ključne riječi

Ključne riječi su rezervirani identifikatori koji imaju
posebno značenje za sastavljača. Mogu se koristiti samo ako
smislu u kojem su definirani. Za popis ključnih riječi C ++ pogledajte
stol:
INT
CHAR
Plutati
DVOSTRUKO
STRUKT
UNIJA
DUGO
KRATAK
NEPOTPISAN
AUTO
KONST
PRAVI
VANJSKI
REGISTAR
TYPEDEF
STATIČKI
IĆI
POVRATAK
VELIČINA
PAUZA
NASTAVITI
AKO
PONIŠTITI
NOVI
DRUGO
ZA
ČINI
DOK
SKLOPKA
SLUČAJ
ZADANO
ULAZ
I
STRUKT
TYPEDEF
Bool

Znakovi operacije

Znak operacije je jedan ili više
akcijski simboli
nad operandima. Unutar znaka
radni prostori nisu dopušteni.
Operacije se dijele na unarne,
binarni i ternarni po količini
operandi koji u njima sudjeluju.

Jednostavne vrste podataka

Tip podataka definira:
interni prikaz podataka u memoriji
Računalo;
skup vrijednosti koji može
uzeti vrijednosti ove vrste;
operacije i funkcije koje mogu
primijeniti na vrijednosti ove vrste.
Jezik C ++ definira šest standarda
jednostavne vrste podataka za predstavljanje
cijeli brojevi, realni, simbolički i
logičke vrijednosti.

Vrste podataka
Specifikatori vrste uključuju:
char
- simbolički;
double - realna dvostruka preciznost s pomičnim zarezom;
float - pravi plutajući zarez;
int - cijeli broj;
dugo
- cjelina povećane duljine (duga cijela);
kratki - cijeli broj smanjene duljine (kratki cijeli broj);
potpisan - potpisan, t.j. predznačeni cijeli broj (najznačajniji bit je
ikona);
nepotpisan - nepotpisan, t.j. cijeli broj bez predznaka (najznačajniji bit nije
smatra se ikoničnim);
poništiti
- nedostatak smisla;
bool - boolean (može uzeti samo vrijednosti true i false.
Unutarnji oblik lažne vrijednosti je 0 (nula).
Svaka druga vrijednost se tumači kao istinita.)
Da biste opisali konstante, prije upotrijebite ključnu riječ const
opis vrste. Na primjer, const float g = 9,8;

10. Struktura C programa

C++ program je
jednu ili više funkcija. Jedna od funkcija
treba zvati glavni (). S ovim je
funkcija počinje izvršavati program, a od
ovu funkciju, prema potrebi,
druge funkcije se pozivaju.
Najjednostavnija definicija funkcije ima sljedeći format:
naziv vrste povrata ([opcije])
{
operatori koji čine tijelo funkcije
}
Obično se za izračunavanje neke koristi funkcija
vrijednosti, pa je tip naznačen prije naziva funkcije. Ako
funkcija ne smije vratiti vrijednost, specificiran je tip void.
pri čemu:
- Tijelo funkcije zatvoreno je vitičastim zagradama.
- Funkcije se ne mogu ugniježditi.
- Svaka izjava završava točkom i zarezom (osim
složeni operator).

11. Struktura C programa

Program se može sastojati od nekoliko modula (izvornih datoteka) i, u pravilu,
sadrži upute za pretprocesor. Primjer strukture programa koji sadrži
glavne funkcije, f1 i f2:
direktive predprocesora
opisi
int main ()
{
operatori glavne funkcije
}
int f1 () (
operatori funkcije f1
}
int f2 () (
operatori funkcije f2
}
/ * Primjer jednostavnog programa * /
#uključiti
int main ()
{
printf ("Zdravo svijet!");
vrati 0;
}

12. I/O funkcije u stilu C

Osnovne I/O značajke u C stilu:
int scanf (const char * format ...) // ulaz
int printf (const char * format ...) // izlaz
Oni izvode formatirani unos i izlaz proizvoljnog broja vrijednosti prema nizu.
format formata. Niz formata sadrži znakove koji se kopiraju u tok (na ekran) na izlazu, ili
traže se od streama (s tipkovnice) na ulazu, a specifikacije pretvorbe počevši od
% znakova, koji se zamjenjuju određenim vrijednostima tijekom unosa i izlaza.
#uključiti
int main () (
int i;
printf ("Unesite cijeli broj \ n");
scanf ("% d", & i);
printf ("Upisali ste broj% d, hvala!", i);
vrati 0; )
Prvi redak ovog programa je direktiva pretprocesora, prema kojoj se umeće u tekst programa
datoteka zaglavlja koji sadrži opis ulaznih/izlaznih funkcija koje se koriste u programu. Sve
direktive pretprocesora počinju znakom #.
Treći red je opis cjelobrojne varijable pod nazivom i.
Funkcija printf u četvrtom retku ispisuje upit Unesite cijeli broj i nastavlja na novi redak u
prema escape sekvenci \ n.
Funkcija scanf stavlja cijeli broj unet s tipkovnice u varijablu i, a sljedeća izjava izlazi na
pregledajte navedeni niz, zamjenjujući specifikaciju konverzije vrijednošću ovog broja.

13.I / O funkcije u C ++ stilu

Isti program koji koristi knjižnicu
C++ klase :
#uključiti
korištenje imenskog prostora std;
int main ()
{
int i;
cout<< "Введите целое число\n";
cin >> i;
cout<< "Вы ввели число" << i << ", спасибо!"; return 0;
}

14. Standardne knjižnice

C jezik ima bogatu podršku u obliku
više od 450 knjižničnih funkcija rutina i makronaredbi koje možete
nazovite iz svojih C programa za rješavanje
širok raspon zadataka, uključujući ulaz/izlaz
niska i visoka razina, rad s
linije i datoteke, dodjela memorije,
kontrola procesa, transformacija
podaci, matematički izračuni i
mnogo više.

15. Smjernice za pretprocesor

Prva faza naziva se pretprocesor.
prevodilac. Upute za pretprocesor
nazivaju se direktivama. Oni moraju
započnite znakom #, kojem prethodi
redak može sadržavati samo razmak
simboli.
Potražite datoteku ako puna staza nije navedena,
održava se u standardnim katalozima
uključiti datoteke. Umjesto kuta
zagrade mogu koristiti navodnike ("")
- u ovom slučaju, datoteka se traži u
direktorij koji sadrži izvornu datoteku, i
zatim u standardnim katalozima.
Datoteke zaglavlja obično imaju
proširenje .h.

16. # uključuje direktivu za pretprocesor

Za povezivanje knjižnica koristite
direktiva za pretprocesor
# uključuje [naziv datoteke]
#Uključi direktivu<имя_файла>umetci
sadržaj navedene datoteke do te točke
izvornu datoteku gdje je napisana.
Na primjer:
#uključiti
#include "mylib.h"

17. Direktiva #define pretprocesora

Direktiva #Define definira zamjenu u tekstu
programe. Koristi se za određivanje
simboličke konstante.
Format za definiranje simboličke konstante je:
#define name substitution_text / * Sva pojavljivanja
imena se zamjenjuju zamjenskim tekstom * /
primjeri:
#definiraj M 1000
#define Vasia "Vasily Ivanovich"

18. Neke standardne knjižnice

ALLOC.H
Opis funkcija upravljanja memorijom
(dodjela, raspodjela itd.)
BIOS.H
Opisi različitih funkcija koje se koriste u
pristup BIOS rutinama (osnovni
ulazno-izlazni sustav).
CONIO.H Opis različitih funkcija koje se koriste u
pristup DOS I/O rutinama s
tipkovnica.
GRAPHICS.H Sadrži prototipove grafičkih funkcija.
MATH.H Sadrži opis matematičkih prototipova
funkcije
STDIO.H Definira vrste i makronaredbe potrebne za
standardni I/O paket. Definira isto
standardni I/O tokovi stdin, stdout i
opisuje ulazne/izlazne rutine.
STDLIB.H opisuje neke rutine opće namjene:
rutine za transformaciju, pretraživanje, sortiranje i druge.
STRING.H
Opisuje nekoliko rutina za obradu nizova i
rad s pamćenjem.

19. Funkcija formatiranja izlaza PRINTF

Već smo koristili najčešće
C izlazna funkcija je printf potprogram. Nju
cilj je zapisivanje informacija na ekran.
Njegov je format jednostavan i fleksibilan:
printf (<строка формата>, <объект>, <объект>, ...);

20. Funkcija unosa SCANF formata

Za interaktivni način unosa se vjerojatno može koristiti u
u većini slučajeva, scanf. scanf je ulazna funkcija, unutar značenja
ekvivalent printf; njegov format izgleda ovako:
scanf (<строка формата>,<адрес>,<адрес>,...)
Međutim, scanf ima jednu vrlo važnu razliku: objekte koji slijede
formatni niz mora biti adrese, a ne vrijednosti. Na primjer, u
program sadrži sljedeći poziv:
scanf ("% d% d", & a, & b);
Ovaj poziv govori programu da očekuje unos od vas.
dva decimalna (cijela) broja odvojena razmakom; prvi će biti
dodijeljen a, a drugi b. Imajte na umu da se ovdje koristi operacija
adrese (&) za prosljeđivanje adresa a i b u scanf.

21. Formatni niz

Niz formata je niz koji počinje
i završava dvostrukim navodnicima ("ovako");
svrha printf-a je ispisati ovaj redak na ekran. Ispred
s printf izlazom sve dodatno zamjenjuje
navedeni objekti po retku prema
sa danim specifikacijama formata
sama linija. Primjer printf izjave:
printf ("d =% f \ n", d);

22. Formatni niz

% f u nizu formata je specifikacija formata. Sve
specifikacije formata počinju sa znakom postotka (%) i
(obično) nakon čega slijedi jedno slovo koje označava vrstu
podatke i kako se oni pretvaraju.
% f korišten u specifikaciji označava što se očekuje
neki pravi broj. Evo nekoliko drugih najčešće korištenih specifikacija formata:
-% u cijeli broj bez predznaka
-% ld dugi cijeli broj
-% p vrijednost pokazivača
-% d cijeli broj
-% e broj s pomičnim zarezom u eksponencijalnom obliku
-% c znak
-% s niz
-% x ili% X je cijeli broj u heksadecimalnom formatu.

23. Formatni niz

Širinu polja možete postaviti tako da ga postavite
između% i slova, npr. decimalno polje
širina 4 je data kao % 4d. Vrijednost će biti
ispisano pomaknuto udesno (ispred
razmaci) tako da je ukupna širina polja 4.
Ili će, na primjer, % 6.2f to značiti
6 pozicija je dodijeljeno za stvarni broj,
i 2 - za frakcijski dio.
Ako želite ispisati znak %, umetnite %%.

24. Formatni niz

\ n u retku nije specifikacija formata, već
korišten (iz povijesnih razloga) kao
izlazni slijed i predstavlja
poseban znak koji treba umetnuti u niz. U ovom slučaju
\ n umeće znak na početak novog retka, dakle
nakon prikaza retka, kursor će se pomaknuti na početak novog
žice.
- \ f (format prijevoda ili brisanje zaslona)
- \ t (kartica)
- \ b (povratnica<-)
- \ xhhh (umetnite znak s ASCII kodom hhh, gdje je hhh
sadrži od 1 do 3 heksadecimalne znamenke)
Ako trebate ispisati obrnutu kosu crtu
umetnuti \\.

25. Primjer C programa

#uključiti
#uključiti
glavni ()
{
plutaju x1, y1, x2, y2;
printf ("Unesite dva broja:");
scanf ("% f% f% f% f", & x1, & y1, & x2, & y2);
float d = sqrt (pow ((x2-x1), 2) + pow ((y2-y1), 2));
printf ("d =% f \ n", d);
}

26. Ostale izlazne funkcije PUTS, PUTCHAR

Postoje još dvije izlazne funkcije koje vam mogu pomoći
kamata: puts i putchar. Funkcija puts ispisuje string na
zaslon i završava izlaz znakom novog reda.
Pogledajmo primjer programa:
#uključiti
glavni ()
{
stavlja ("Zdravo, student VKI NSU");
}
Imajte na umu da je \ n izostavljen na kraju retka; nije potrebno kao
stavlja se dodaje ovaj lik.
Suprotno tome, funkcija putchar upisuje jedan znak
zaslon i ne dodaje \ n. Naredba putchar (ch) je ekvivalentna
printf ("% c", ch).

27. Funkcije GETS, GETCH

glavni ()
{
char naziv;
printf ("Kako se zoveš:");
scanf (“% s”, ime);

}
Ako unesete prezime i ime, tada će se prikazati samo prezime. Jer
prostor koji unesete nakon naziva signalizira skeniranje do kraja unosa
žice.
Ovaj problem možete riješiti pomoću funkcije gets.
glavni ()
{
char naziv;
printf ("Kako se zoveš:");
dobiva (ime);
printf ("Zdravo% s \ n", ime);
}

28. Funkcije GETS, GETCH

# uključiti
# uključiti
glavni ()
{
clrscr ();
char naziv;
printf ("Kako se zoveš:");
dobiva (ime);
printf ("Zdravo% s \ n", ime);
dobiti ();
}
Ovdje funkcija getch očekuje unos bilo kojeg znaka.
Getch čita jedan znak s tipkovnice bez ispisa
to na ekran (za razliku od scanf i gets). Imajte na umu da ona nema
parametar. Ako funkciju dodijelimo simboličkoj varijabli, onda
dobit će vrijednost pritisnutog znaka.
Na primjer: c = getch ();

29. Operacija zadatka

Najčešća operacija je dodjela,
na primjer p = a / b ili ch = getch (). U Xi
dodjela se označava jednim znakom
jednakost (=); vrijednost desno od znaka
jednakost se dodjeljuje varijabli s lijeve strane.
Također možete koristiti sekvencijalno
zadaci, na primjer: zbroj = a = b. Takav
slučajevima zadatak je s desna
lijevo, odnosno b ​​će biti dodijeljen a, što u
red će biti dodijeljen zbroju, tako da sve
tri varijable će dobiti istu vrijednost (i
naime početna vrijednost b).

30. Aritmetičke operacije. Povećanje. Smanjenje.

C podržava uobičajeni skup aritmetičkih operacija:
- množenje (*)
- podjela (/)
- određivanje ostatka od dijeljenja (%)
- dodatak (+)
- oduzimanje (-)
Za povećanje vrijednosti varijable za jedan, koristite inkrement (++),
dekrement (-) smanjiti za jedan.
Tako:
x ++; // povećaj x za jedan
y--; // smanji y za jedan
Primjeri postfiksnih i prefiksnih operacija:
a = 2;
a = 2;
x = 18-2 * a ++;
x = 18-2 * (++ a);
dobivamo:
a = 3
a = 3
x = 14
x = 12

31. Kombinirane operacije

Slijedi nekoliko primjera izraza
i načini za njihovo smanjenje:
a = a + b; skraćeno na a + = b;
a = a - b; svodi se na a - = b;
a = a * b; skraćeno na a * = b;
a = a / b; svodi se na a / = b;
a = a% b; svodi se na a% = b;

32. Primjer 1

Izračunajte X3 i X10 koristeći četiri operacije množenja za
zadanu cjelobrojnu vrijednost X.
#uključiti
int x, x2, x3, x5, x10;
glavni () (
printf ("\ n Program za izračunavanje X ^ 3 i X ^ 10 \ n");
puts ("Unesite vrijednost X");
scanf ("% i", & x);
x2 = x * x;
x3 = x * x2;
x5 = x2 * x3;
x10 = x5 * x5;
printf ("% i u 3. stepenu =% i \ n", x, x3);
printf ("% i na 10. stepen =% i", x, x10);
}

33. Primjer 2

Kut je dan u radijanima. Izračunajte sinus i kosinus kuta.
#uključiti
#uključiti
float kut, rezultat1, rezultat2;
glavni ()
{
printf ("\ n Program za izračun sin i cos kut \ n");
puts ("Postavite kut u radijanima");
scanf ("% f", & Kut);
Rezultat1 = sin (kut);
Rezultat2 = cos (kut);
printf ("Sinus kuta je% f \ n", Rezultat1);
printf ("Kosinus kuta je% f", Rezultat2);

Molimo obustavite AdBlock na ovoj stranici.

Nadam se da ste već instalirali neki IDE na svoje računalo i naučili kako kompajlirati programe u njemu. Ako ne, onda

Svi programi napisani u C-u imaju zajedničku strukturu. O čemu ćemo govoriti u ovoj lekciji. U tome će nam pomoći naš prvi program napisan u prethodnom koraku.

Ispunit ćemo jednostavnu karticu. Trenutno znamo da postoje programi, ali kako su raspoređeni unutra ne znamo. Stoga će naša karta izgledati ovako.

Slika 1 Karta "Struktura C programa." Prva razina.

Tijekom tečaja vraćat ćemo se ovoj karti, usavršavati je, dopunjavati je novim elementima i blokovima.

Sada pažnja. Nemojte se uplašiti! Ispod je izvorni kod za tri jednostavna programa. Vaš zadatak je da ih pažljivo pogledate i pokušate pronaći neki uzorak u njihovom kodu (nešto zajedničko što svaki program ima).

Listing 1. Program 1. Ispisuje "Hello, World!"

#uključiti

Listing 2. Program 2

Int main (void) (int a, b, c; a = 5; b = 10; c = a + b; povratak 0;)

Listing 3. Program 3

#uključiti int main (void) (FILE * fp; fp = fopen ("input.txt", "w"); fprintf (fp, "Ovo je Sparta!"); fclose (fp); return 0;)

Uzmite si vremena da pogledate ostatak lekcije i točan odgovor na ovaj problem. Prvo pokušajte sami odgovoriti. Nakon toga pritisnite gumb "Gledaj nastavak!"

Dakle, odgovor: U svim gore navedenim programima prisutna je sljedeća konstrukcija:

Popis 4. Glavna funkcija bilo kojeg C programa je glavna funkcija.

Int main (void) (povratak 0;)

Kakav je ovo dizajn. Ovo je deklaracija glavne funkcije. Takva funkcija je obavezna u svakom programu koji je napisan u C-u. Veliki ili mali program, računalna igrica ili program "Hello, World!", koji ste napisali vi ili Bill Gates - ako je program napisan u C - ima glavnu funkciju ... To je, da tako kažem, glavna funkcija našeg programa. Kada pokrećemo program, možemo misliti da izvodimo glavnu funkciju ovog programa.

Zaustavimo se na trenutak. Čini se da smo shvatili nešto o strukturi C programa. Svaki C program mora sadržavati glavnu funkciju. Prikažimo ovu činjenicu na našoj karti znanja "Struktura programa u jeziku C".

Slika 2 Karta "Struktura C programa." Glavni.

Sada nas karta ne smeta svojom zjapećom prazninom. Nastavimo naše istraživanje.

Dopustite mi da vam kažem nešto o glavnoj funkciji i funkcijama općenito.

Ime funkcije prethodi int, što je skraćenica za riječ integer, što je s engleskog prevedeno kao "cjelina". Ova notacija znači da kada glavna funkcija završi svoj rad, ona mora vratiti neki cijeli broj pozivnom programu (u našem slučaju to je operativni sustav). Obično, za glavnu funkciju, ovo je broj nula, koji obavještava operativni sustav: "Kao, sve je u redu. Nisu se dogodili incidenti."

Jeste li ikada vidjeli poruke o pogrešci na zaslonu računala? Obično napišu nešto poput "Program je nenormalno prekinut ... bla bla bla ... Šifra -314." Ovo je otprilike isto. Razlika je u tome što nas operativni sustav, kada se pojave problemi, o tome obavijesti, a kada je sve u redu, više nam ne smeta.

Riječ void ispisuje se u zagradama iza naziva funkcije. Općenito, argumenti funkcije se obično pišu u zagradama, ali u našem slučaju, kada pišu void u zagradama, to znači da funkcija nema argumente. Drugim riječima, da bi glavna funkcija počela raditi, nisu joj potrebni nikakvi dodatni podaci izvana. O svemu tome ćemo detaljnije, ali za sada samo zapamtite da riječ void umjesto argumenata funkcije znači da za ovu funkciju nisu potrebni argumenti.

Unutar vitičastih zagrada nalazi se opis glavne funkcije, t.j. izravno što bi ova funkcija trebala činiti.

Prije zatvaranja vitičaste zagrade vidimo naredbu return. Upravo je ova naredba odgovorna za vraćanje vrijednosti iz funkcije. Oni. pogledajte, ako je program dosegao ovu točku, onda je sve bilo u redu i nije bilo pogrešaka, što znači da možete vratiti vrijednost nulu.

Zašto točno nula, pitate se? A vrag samo zna! Obično to rade samo tako. U principu možete vratiti neki drugi cijeli broj, na primjer 100, ili -236. Kad bi barem bio cijeli broj. Zapamtite int? Stoga cjelina.

Tako smo shvatili glavnu funkciju. Još jedna točka. Ono što je napisano u vitičastim zagradama obično se naziva "tijelo funkcije" (ili opis funkcije), a prvi dio, onaj prije vitičastih zagrada, naziva se zaglavlje funkcije.

Vratimo se sada našem prvom programu "Hello, World" i vidimo što je što.

Listing 5. Program "Hello, World".

#uključiti int main (void) (printf ("Zdravo, svijet! \ n"); vrati 0;)

Već razumijemo nešto u ovom programu. Ostaju nejasna samo dva reda, idemo redom.

Listing 6. Direktiva uključivanja

#uključiti

Ova linija je poruka kompajleru. Ove poruke, koje počinju sa # znakom, nazivaju se direktivama kompajlera. Doslovno: "uključi stdio.h datoteku". U vrijeme prevođenja, sadržaj stdio.h datoteke bit će umetnut umjesto ovog retka. Hajdemo sada malo o ovoj datoteci. stdio.h (od engleskog STanDart Input Output) je datoteka zaglavlja, opisuje različite standardne funkcije vezane za ulaz i izlaz.

Postavlja se razumno pitanje: "Zašto trebamo napisati ovaj redak? Zašto smo uopće trebali umetnuti ovu datoteku ovdje?" To je neophodno kako bismo u našem programu mogli koristiti standardnu ​​funkciju printf () za ispis na ekran.

Evo u čemu je stvar. Prije upotrebe bilo čega u našem programu, prvo to moramo opisati. Zamislite situaciju, zamolili su vas da donesete kandelabar, a vi ne znate što je to. Nije jasno što učiniti.

Takav je i prevodilac. Kada naiđe na funkciju, traži njen opis (tj. što bi trebala raditi i što znači) na početku programa (od samog početka do trenutka kada se koristi u programu). Dakle, funkcija printf () opisana je u datoteci stdio.h. Stoga ga povezujemo. Ali kada ga spojimo, prevodilac će moći pronaći funkciju printf (), inače će ispustiti pogrešku.

Usput, vrijeme je da dodamo našu kartu znanja. Prije glavne funkcije dodajte još jedan blok, blok za povezivanje datoteka zaglavlja.

Slika 3 Karta "Struktura C programa." Blok povezivanja datoteka zaglavlja.

Nastavimo se baviti našim programom.

Listing 7. funkcija printf ().

Printf ("Zdravo, svijete! \ N");

U ovom retku nazivamo standardnu ​​printf () funkciju prikaza. U ovom najjednostavnijem slučaju, prosljeđujemo mu jedan parametar, niz navodnika koji treba prikazati, u našem slučaju to je Hello, World! \ n. Ali čekaj, što je ovo \ n? Na ekranu nije bilo \ n kad je program pokrenut. Zašto smo onda ovo napisali ovdje? Ovaj niz je poseban znak koji je naredba za prelazak na sljedeći redak. To je kao da pritisnete tipku Enter u MS Wordu. Postoji nekoliko takvih posebnih znakova, svi su napisani znakom "\" - obrnutom kosom crtom. Ovi posebni znakovi nazivaju se kontrolni znakovi. Kasnije ću vam ih pokazati. Inače će se na ekranu prikazati točno ono što ste napisali u dvostrukim navodnicima.

Usput, imajte na umu da svaka C naredba završava s ";" (točka i zarez). Izgleda kao točka na kraju rečenice na ruskom. U običnom jeziku rečenice odvajamo točkom, a u programskom jeziku C naredbe odvajamo jednu od druge točkom-zarezom. Stoga je točka-zarez obavezna. U suprotnom, prevodilac će opsovati i baciti grešku.

Da biste pozvali bilo koju funkciju, trebate napisati njezino ime i navesti parametre koji su joj proslijeđeni u zagradama. Funkcija može imati jedan ili više parametara. Ili možda uopće nema parametara, u tom slučaju ne morate ništa pisati u zagradama. Na primjer, gore smo pozvali funkciju printf () i proslijedili joj jedan parametar niz koji se ispisuje na ekran.

Usput, koristan savjet. Budući da svaki program ima glavnu funkciju, a doslovno u svakom programu trebamo nešto prikazati na ekranu, preporučam da odmah kreirate datoteku sa sljedećim prazninom kako ne biste svaki put pisali isto.

Listing 8. Standardni stub za C programe.

#uključiti int main (void) (povratak 0;)

Pa, čini se da je to sve. Ova prva lekcija može se smatrati završenom. Iako ne, postoji još jedna stvar.

Najvažnija stvar u ovoj lekciji je, naravno, opća struktura programa. No, osim toga, naučili smo kako prikazati proizvoljan tekst na ekranu. Čini se da ne znaju baš ništa, ali i to bi bilo dovoljno da, na primjer, mami napravim mali poklon za 8. ožujka.


Izvorni kod za program razglednica nalazi se u arhivi izvornog koda za ovaj vodič. Eksperiment! Uspjet ćeš.

Vrhunski povezani članci