Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Fier
  • Structura celei mai simple aplicații cu. Alte funcții de ieșire PUTS, PUTCHAR

Structura celei mai simple aplicații cu. Alte funcții de ieșire PUTS, PUTCHAR

În programele C, există o anumită secvență:

Mai întâi, adăugăm bibliotecile de care avem nevoie #include Dacă fișierul se află în directorul curent al proiectului, acesta este indicat între ghilimele. Pentru un fișier aflat într-un alt director, trebuie să specificați calea completă între ghilimele.

#include
#include „math.h”

După care putem adăuga constantele de care avem nevoie #define A 3

După aceea, funcția începe cu comanda Main ().

După ce totul este făcut, puteți introduce getchar ()

2. Pentru ce este punctul și virgulă în C?

C folosește punct și virgulă pentru a marca sfârșitul unei instrucțiuni.

3. Toate compilatoarele C necesită o instrucțiune return în program?

Pentru a returna o valoare întreagă, linia este atașată înainte de sfârșitul funcției

De asemenea, în majoritatea cazurilor, returnare înseamnă părăsirea funcției.

Instrucțiunile corpului funcției sunt executate înainte de prima instrucțiune return. Dacă nu există un astfel de operator în corpul funcției (adică funcția nu returnează niciun rezultat), atunci toți operatorii până la paranteza operatorului de închidere sunt executați.

Funcția de ieșire a elementelor de matrice pentru a imprima nu returnează niciun rezultat, adică. nu există nicio instrucțiune return în corpul funcției.

4. În ce scop sunt introduse comentarii în textul programului?

Comentariile sunt introduse pentru a explica o acțiune

de exemplu Printf (‘’ Hello World’’); // afișează Hello World

De asemenea, puteți introduce comentarii cu / * - la început * / - la sfârșitul comentariului

5. Pentru ce sunt folosiți parametrii atunci când apelați o funcție?

O legătură este în esență al doilea nume al aceluiași obiect. Când un obiect prin referință este transmis unei funcții, acest obiect este de fapt transmis. Când trecem un obiect după valoare, o copie a acestuia este transmisă funcției.

void func_1 (int a) // trece prin valoare

6. Toate funcțiile necesită transmiterea unor parametri atunci când sunt apelate?

După părerea mea, nu totul, pentru că putem scrie cu ușurință o funcție de tipul principal () fără a trece parametri după valoare

1. Care este tipul de date char?

Tipul de date char este un tip de date întreg care este folosit pentru a reprezenta caractere. Adică, fiecărui caracter îi corespunde un anumit număr din interval. Tipul de date char se mai numește și tipul de date caracter, deoarece reprezentarea grafică a caracterelor în C++ este posibilă datorită char. Pentru a reprezenta caractere în C++, tipului de date char i se alocă un octet, într-un octet - 8 biți, apoi ridicăm doi la puterea lui 8 și obținem valoarea 256 - numărul de caractere care pot fi codificate. Astfel, folosind tipul de date char, puteți afișa oricare dintre cele 256 de caractere. Toate caracterele codificate sunt reprezentate în tabelul ASCII.

2. Cum diferă simbolul „3” de numărul 3?

caracterul 3 diferă de întregul 3 prin faptul că caracterul nu poate fi folosit în operații aritmetice

3. Care este diferența dintre o constantă și o variabilă?

Diferența dintre o variabilă și o constantă este destul de evidentă: în timpul execuției unui program, valoarea unei variabile poate fi modificată (de exemplu, folosind o atribuire), dar valoarea unei constante nu poate

4. Cum se definește o constantă?

Constantele din C++ sunt similare cu constantele din C. Pentru a reprezenta o constantă în C, a fost folosită numai directiva #define preprocesor:

tip const VariableName = InitialValue;

Sfera unei constante este aceeași cu cea a unei variabile obișnuite. Puteți declara un pointer către o constantă folosind cuvântul cheie const

5. C suportă tipul de date șir?

C nu acceptă un tip de date șir separat, dar permite definirea șirurilor în două moduri diferite. Primul folosește o matrice de caractere, iar al doilea folosește un pointer către primul caracter al matricei.

6. Variabila își păstrează valoarea pe tot parcursul programului?

în timpul execuției programului, valoarea unei variabile poate fi modificată (de exemplu, folosind o atribuire), dar valoarea unei constante nu poate

7. Cum pot schimba valoarea unei constante?

1. Care sunt diferențele dintre secvențele de evadare \ n și \ r?

În linii mari, \r trebuia să reducă numărul caracterului. lăsând neschimbat numărul rândului (adică, va muta căruciorul mașinii de scris la începutul liniei fără a atinge hârtia) și \ n, dimpotrivă, va sări la următoarea linie, lăsând neschimbată poziția curentă de imprimare (defilați hârtia fără a atinge trăsura).

2. Cum să afișați caracterul citat pe ecran?

printf ("Textul meu este: \" textul meu \ "\ n");

3. Care sunt cele două părți ale listei de parametri printf ()?

Când imprimați un număr sau o expresie, este mai întâi scris Printf ().

Între paranteze, la început între ghilimele, scriem datele de care avem nevoie și anume

% s - un singur caracter
% d - întreg zecimal cu semn
% f - număr în virgulă mobilă (notație zecimală)
% s - șir de caractere (pentru variabile șir)
% u - întreg zecimal fără semn
%% - tipăriți semnul procentual

De exemplu:

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

4. Care sunt avantajele funcției printf () față de puts ()?

5. Ce este un indicator de format?

Citește o valoare în virgulă mobilă (numai C99)

La fel ca% un cod (numai C99)

Citește un caracter

Citește un număr întreg zecimal

Citește un număr întreg în orice format (zecimal, octal sau hexazecimal)

La fel ca% e

Citește un număr în virgulă mobilă

La fel ca și codul% f (doar C99)

Citește un număr în virgulă mobilă

La fel ca codul% g

Citește un număr octal

Citește un rând

Citește un număr hexazecimal

La fel ca codul% x

Citește un indicator

Acceptă o valoare întreagă egală cu numărul de caractere citite până acum

Citește un întreg zecimal fără semn

Caută un set de caractere

Citește semnul procentului

6. Cum se afișează valoarea unei variabile numerice?

Puteți afișa valoarea acestuia folosind funcția Printf ().

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

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

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

Structura unui program C.

Utilizarea limbajului de programare C în rezolvarea problemelor economice

Programe și date

Avantajele limbajului C

1) C este un limbaj modern, structura sa încurajează programatorul să folosească metode în munca sa: design de sus în jos, programare structurată, structură de program modulară.

2) C este un limbaj eficient. Programele C sunt compacte și rapide.

3) C - limbaj portabil sau mobil.

4) C este un limbaj puternic și flexibil.

5) Programele scrise în C sunt folosite pentru a rezolva probleme de diferite niveluri. C are o serie de constructii de asamblare puternice.

6) C este un limbaj convenabil, este structurat și în același timp nu limitează prea mult libertatea programatorilor.

7) C este un limbaj de tip compilare. Deoarece C este un limbaj standardizat, independent de dispozitiv, disponibil pe scară largă, o aplicație scrisă în C poate rula adesea cu modificări mici sau deloc pe o mare varietate de sisteme informatice. Un computer, în ciuda vitezei și puterii sale de calcul, este un dispozitiv simplu care manipulează numere binare. Unele numere binare sunt interpretate de computer ca comenzi, altele ca date. Pentru a face computerul să facă ceva util, trebuie să scrieți un program.

Programare activitati de programare.

Program este o descriere a algoritmului de rezolvare a unei probleme dată în limbajul calculatorului.

Echipă o rețetă care determină următorul pas.

Exemplu comenzi: C = A + B, unde A, B sunt operanzi, + este o operație.

Operațiune este ceea ce trebuie să facă computerul în funcție de fiecare comandă.

Operanzi -participanti la operatie, apoi pe ce si cu ce se realizeaza operatia. Un set de operații elementare din metodele descrierilor lor formează un sistem de comandă al unui limbaj de programare.

Exemplul # 1:

# include

(void main (void) // antetul funcției principale a programului

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

1 linie: conectarea bibliotecilor auxiliare axate pe intrarea și ieșirea datelor de diferite tipuri la flux.

a doua linie: titlul funcției principale a programului. Cout-operator de ieșire de informații<< – помещение в класс данных, \n-переход к новой строке вывода.

Program este o secvență de instrucțiuni care implementează algoritmul, un set de prescripții care determină în mod unic conținutul și succesiunea operațiilor pentru rezolvarea problemelor.

Folosind C.

1. Programe și date.

2. Schema de execuție a programului pe computer:

Exemplul # 1:

# include< stdio.h>

printf („Eu studiez la BSUIR \ n”);

Linia 1: comanda include preprocesor care include fișierul stdio.h care descrie funcția de bibliotecă printf.

Linia 2: definiția unei funcții numită main, care nu primește niciun argument. Declarația principală este închisă între acolade. Funcția principală apelează funcția de bibliotecă printf pentru a tipări secvența de caractere specificată. O bară oblică (\ n) este un caracter de linie nouă, o tranziție la o linie nouă.

Pentru a executa programul pe PVEM, trebuie să faceți următoarele:

1) Creați un program într-un limbaj de programare.

2) Difuzați-l în standardul acestei limbi.

3) Asociați-l cu programele și funcțiile necesare.

4) Încărcați în RAM.

5) Executați și obțineți rezultatul.


SCHEMA DE CONFORMITATE

Un traducător este un program de calculator pentru traducerea unui program scris într-un limbaj de programare într-o formă care poate fi înțeleasă de un computer. Compilatorul produce un fișier cu extensia obj. Un fișier executabil sau un modul de încărcare este un fișier care conține un program compilat și gata de rulat. Borland C ++ este un mediu pentru dezvoltarea de programe care includ atât un compilator, cât și câteva alte instrumente.

Structura unui program C.

Orice program în limbajul C constă dintr-una sau mai multe funcții și elemente. Diferitele funcții pot primi orice nume. F-tions conțin instrucțiuni (comenzi) care prescriu acțiuni într-un anumit stadiu de execuție, iar variabila stochează valorile utilizate în procesul acestor acțiuni. Astfel de acțiuni pot fi atribuirea de valori variabilelor, verificarea unei anumite condiții. O funcție numită main. Execuția oricărui program începe cu funcția principală.

a) Structura generală a unui program C fără apelarea unei subrutine:

b) Structura generală a unui program C cu apel la subrutină:

Argumentele sunt unul dintre mecanismele de interacțiune între funcții. Lista de argumente din paranteze urmează numele funcției. Acoladele încadrează începutul și sfârșitul programului. Instrucțiuni care alcătuiesc corpul de programe de la operatori și operanzi. În C, fiecare instrucțiune și fiecare linie de apelare a funcției se termină cu punct și virgulă. Singurele excepții sunt comenzile preprocesorului și numele funcțiilor de la începutul unei unități de program. Scopul majorității programelor este de a rezolva problema prin diverse transformări ale datelor inițiale. Pentru aceasta este necesar.

Un program C este format din una sau mai multe subrutine numite funcții.

Limbajul C este structurat în bloc. Fiecare bloc este închis în acolade ().

Blocul principal dintr-un program de aplicație C console este funcția principală numită main ().

Fiecare acțiune în limbajul C se termină cu punct și virgulă -; ... Acțiunea poate fi un apel de funcție sau unele operații.

Numele funcției este numele colectiv al grupului de descrieri și al operatorilor,
închis într-un bloc (acolade). Parametrii funcției sunt indicați în paranteze după numele funcției.

C Comentarii

Limbajul C folosește simboluri pentru comentarii

/ * - începutul comentariului;
* / - sfârșitul comentariului.

Întreaga secvență dintre aceste personaje este un comentariu.

Este convenabil să scrii comentarii pe mai multe rânduri:

int a; / * întreg
variabil * /

Comentariile pe mai multe rânduri sunt utile și la depanare pentru a ascunde părți ale codului de la execuție.

În plus, simbolurile // pot fi folosite pentru a scrie comentarii scurte. În acest caz, un comentariu este tot ceea ce se află după simbolurile // și până la sfârșitul rândului:

plutitor b; // variabilă reală

Functie principala

Când executați o aplicație de consolă scrisă în C, sistemul de operare al computerului transferă controlul către o funcție numită main (). Funcția principală () nu poate fi apelată din alte funcții de program, este o funcție de control.

Parantezele care urmează după numele funcției sunt folosite pentru a indica parametrii (argumentele) care sunt transmise funcției atunci când este apelată. În acest caz, sistemul de operare nu transmite niciun argument funcției main (), deci lista de argumente din paranteze este goală.

Funcția principală poate fi scrisă în diferite moduri:

  • int main ()
  • void principal ().

Tipul valorii returnate este specificat înainte de numele funcției. Când funcția principală este apelată, valoarea este returnată sistemului de operare. Ultima intrare nu va returna valori. dar void principal ()- notația nu este tocmai corectă, deoarece îi spune compilatorului că funcția main () nu returnează nicio valoare.

În acest caz, înregistrarea int main () spune compilatorului să returneze o valoare întreagă care este cerută de sistemul de operare și îi spune că programul sa terminat corect. Dacă această valoare nu este returnată, sistemul de operare înțelege că programul s-a încheiat în mod anormal.
Pentru a returna o valoare întreagă, linia este adăugată înainte de sfârșitul funcției

returnează 0; // variabilă reală

Descrierile și operatorii sunt încadrați în acolade.

În general, un program poate conține mai multe funcții. Fiecare funcție are o listă de parametri trecuți la ea, indicați în paranteze, și un set de operații, închise într-un bloc, delimitate de acolade.

Exemplu: Afișarea mesajului „Bună, lume!” ...

1
2
3
4
5
6
7

#include // Conectați biblioteca I/O
int main () // Functie principala
{
printf ("Bună ziua, lume!"); // Afișează mesajul
getchar (); // Întârzie fereastra consolei
returnează 0;
}


Rezultatul programului:

Acum să încercăm să scriem un text în rusă.

1
2
3
4
5
6
7

#include
int main ()
{
printf ( "Salut Lume!");
getchar ();
returnează 0;
}


Rezultatul programului:


Problema cu limba rusă în aplicațiile de consolă este că consola și editorul de cod Microsoft Visual Studio acceptă pagini de cod diferite. Pentru a vedea caracterele rusești în consolă, trebuie să modificați pagina de coduri din consolă pentru a se potrivi cu pagina de cod a editorului (1251). În acest scop, sistemul ( „chcp 1251”) cu linia de comandă corespunzătoare. Prototipul funcției de sistem () este conținut în bibliotecă .

În acest caz, textul programului va arăta astfel.

Compunerea limbajului Într-un text în orice limbă naturală, patru
elemente de bază: simboluri, cuvinte, fraze și propoziții.
Limbajul algoritmic conține elemente similare:
Alfabetul limbii, sau simbolurile sale, sunt principalele semne indivizibile, cu
cu ajutorul căruia sunt scrise toate textele din limbă.
Lexemul este o unitate minimă a unei limbi care are un independent
sens.
O expresie specifică o regulă pentru calcularea unei anumite valori.
Operatorul specifică o descriere completă a unei acțiuni.
O acțiune complexă necesită o secvență
operatori. Operatorii pot fi combinați într-un compus
operator sau bloc (un bloc în C++ este
o succesiune de afirmații cuprinse între acolade ()).
În acest caz, ei sunt tratați ca un singur operator.
Fiecare element al limbajului este definit de sintaxă și semantică.
Definițiile sintactice stabilesc reguli de construcție
elementele limbajului, iar semantica determină sensul și regulile acestora
utilizare.
Un set de descrieri combinate printr-un singur algoritm și
operatori formează un program într-un limbaj algoritmic.

Procesul de executare a programului

Pentru a executa programul, trebuie să îl traduceți
într-un limbaj înțeles de un procesor - în coduri de mașină. Acest
procesul constă din mai multe etape:
În primul rând, programul este transmis preprocesorului, care
include fișiere text care conțin descriere
elemente utilizate în program.
Textul complet rezultat al programului este trimis la intrare
un compilator care extrage jetoane și apoi se bazează pe
gramatica limbii recunoaște expresii și operatori,
construit din aceste jetoane. În acest caz, compilatorul detectează
erori de sintaxă și, în absența lor, build-uri
modul obiect.
Linkerul, sau linkerul, generează
modulul executabil al programului, conectându-se la obiect
module alte module obiect. Dacă programul constă
din mai multe fișiere sursă, acestea sunt compilate de
separat și combinat în etapa de legătură.
Modulul executabil are extensia .exe și poate fi
lansat spre executare.

Alfabetul C++

Alfabetul C include:
literele mari și mici ale alfabetului latin (A, B, ..., Z, a, b, ..., z) și și
sublinia;
cifre: 0,1,2,3,4,5,6,7,8,9
caractere speciale: ", () | () * + - /% \;". :?< = >_! & # caractere care nu se pot afișa ("spații albe generice"),
folosit pentru a separa jetoanele unul de celălalt (de exemplu, un spațiu,
tabulare, întrerupere de linie).
Din simbolurile alfabetului
se formează lexemele limbii:
identificatori;
cuvinte cheie (rezervate);
semne de operare;
constante;
delimitatori (paranteze, punct, virgulă, spațiu alb).
Granițele jetoanelor sunt definite de alte jetoane, cum ar fi
separatoare sau semne de operare.

Identificatori

Un identificator este numele unui obiect programatic. V
identificatorul poate fi folosit în latină
litere, cifre și liniuță de subliniere. Litere mari și
literele mici sunt diferite. Primul personaj
identificatorul poate fi o literă sau un semn
subliniază. în care:
identificatorul nu trebuie să se potrivească cu cheia
cuvintele și denumirile folosite de standard
obiecte limbaj;
nu este recomandat să începeți identificatorii cu un caracter
subliniere;
Identificatorii pot fi de orice lungime, dar
compilatorul numără nu mai mult de 31 de caractere din
începutul identificatorului;
Exemple de identificatori:
COM_16, dimensiune88, _MIN, TIME, oră

Cuvinte cheie

Cuvintele cheie sunt identificatori rezervați care au
semnificație specială pentru compilator. Ele pot fi folosite numai dacă
sensul în care sunt definite. Pentru o listă de cuvinte cheie C++, consultați
masa:
INT
CHAR
Pluti
DUBLA
STRUCT
UNIUNE
LUNG
MIC DE STATURA
NESEMNAT
AUTO
CONST
ADEVĂRAT
EXTERN
INREGISTREAZA-TE
TYPEDEF
STATIC
MERGI LA
ÎNTOARCERE
SIZEOF
PAUZĂ
CONTINUA
DACĂ
NUL
NOU
ALTE
PENTRU
DO
IN TIMP CE
INTRERUPATOR
CAZ
MOD IMPLICIT
INTRARE
ȘI
STRUCT
TYPEDEF
Bool

Semne de operare

Un semn de operație este unul sau mai multe
simboluri de acțiune
peste operanzi. În interiorul semnului
spațiile de operare nu sunt permise.
Operațiunile sunt împărțite în unare,
binare și ternare după cantitate
operanzi care participă la ei.

Tipuri de date simple

Tipul de date definește:
reprezentarea internă a datelor în memorie
calculator;
set de valori care pot
ia valori de acest tip;
operațiuni și funcții care pot
se aplică valorilor de acest tip.
Limbajul C++ definește șase standarde
tipuri de date simple de reprezentat
numere întregi, reale, simbolice și
valori logice.

Tipuri de date
Specificatorii de tip includ:
char
- simbolic;
dublu - virgulă mobilă de precizie dublă reală;
float - virgulă mobilă reală;
int - număr întreg;
lung
- un întreg de lungime mărită (întreg lung);
scurt - număr întreg de lungime redusă (întreg scurt);
semnat - semnat, i.e. întreg cu semn (cel mai semnificativ bit este
simbolic);
nesemnat - nesemnat, i.e. întreg fără semn (cel mai semnificativ bit nu este
considerat iconic);
gol
- lipsa de sens;
bool - boolean (poate lua numai valorile adevărate și false.
Forma internă a valorii false este 0 (zero).
Orice altă valoare este interpretată ca adevărată.)
Pentru a descrie constantele, utilizați înainte cuvântul cheie const
descrierea tipului. De exemplu, const float g = 9,8;

10. Structura unui program C

Un program C++ este
una sau mai multe funcții. Una dintre funcții
ar trebui numit principal (). Este cu asta
funcția începe executarea programului și de la
această funcție, după cum este necesar,
sunt numite alte funcții.
Cea mai simplă definiție a funcției are următorul format:
return_type name ([opțiuni])
{
operatorii care alcătuiesc corpul funcției
}
De obicei, o funcție este utilizată pentru a calcula unele
valori, astfel încât tipul este indicat înaintea numelui funcției. Dacă
funcția nu trebuie să returneze o valoare, este specificat tipul void.
în care:
- Corpul funcției este închis în acolade.
- Funcțiile nu pot fi imbricate.
- Fiecare instrucțiune se termină cu punct și virgulă (cu excepția
operator compus).

11. Structura unui program C

Un program poate consta din mai multe module (fișiere sursă) și, de regulă,
conţine directive de preprocesor. Un exemplu de structură a unui program care conține
funcțiile principale, f1 și f2:
directive de preprocesor
descrieri
int main ()
{
operatori de funcţii principale
}
int f1 () (
operatori ai funcției f1
}
int f2 () (
operatori ai funcției f2
}
/ * Un exemplu de program simplu * /
#include
int main ()
{
printf („Bună lume!”);
returnează 0;
}

12.Funcții I/O în stil C

Caracteristici de bază I/O în stil C:
int scanf (const char * format ...) // intrare
int printf (const char * format ...) // ieșire
Ei efectuează introducerea și ieșirea formatate a unui număr arbitrar de valori în funcție de șir.
format format. Șirul de format conține caractere care sunt copiate în flux (pe ecran) la ieșire sau
sunt solicitate din flux (de la tastatură) la intrare, iar specificațiile de conversie începând cu
Semne %, care sunt înlocuite cu valori specifice în timpul introducerii și ieșirii.
#include
int main () (
int i;
printf ("Vă rugăm să introduceți un număr întreg \ n");
scanf ("% d", & i);
printf ("Ai introdus numarul% d, multumesc!", i);
returnează 0; )
Prima linie a acestui program este o directivă de preprocesor, conform căreia este inserată în textul programului
fișier antet conţinând o descriere a funcţiilor de intrare/ieşire utilizate în program. Tot
directivele de preprocesor încep cu semnul #.
A treia linie este descrierea unei variabile întregi numite i.
Funcția printf de pe a patra linie tipărește promptul Introduceți un număr întreg și continuă până la o nouă linie în
conform secvenței de evadare \ n.
Funcția scanf pune întregul introdus de la tastatură în variabila i, iar următoarea instrucțiune iese la
ecranați șirul specificat, înlocuind specificația de conversie cu valoarea acestui număr.

13.Funcții I/O în stil C++

Același program folosind biblioteca
Clasele C++ :
#include
folosind namespace std;
int main ()
{
int i;
cout<< "Введите целое число\n";
cin >> i;
cout<< "Вы ввели число" << i << ", спасибо!"; return 0;
}

14. Biblioteci standard

Limbajul C are un suport bogat în formă
mai mult de 450 de rutine de funcții de bibliotecă și macrocomenzi pe care le puteți
apelați din programele dvs. C pentru a rezolva
o gamă largă de sarcini, inclusiv intrare/ieșire
nivel scăzut și înalt, lucrați cu
linii și fișiere, alocarea memoriei,
controlul procesului, transformarea
date, calcule matematice și
mult mai mult.

15. Directive preprocesor

Prima fază se numește preprocesor.
compilator. Instrucțiuni pentru preprocesor
se numesc directive. Ei trebuie sa
începe cu caracterul #, precedat de
linia poate conține doar spații albe
simboluri.
Căutați un fișier dacă nu este specificată calea completă,
menţinute în cataloage standard
include fișiere. În loc de colț
parantezele pot folosi ghilimele ("")
- in acest caz, fisierul este cautat in
directorul care conține fișierul sursă și
apoi în cataloage standard.
Fișierele antet au de obicei
extensia .h.

16. # include directiva de preprocesor

Pentru a conecta biblioteci, utilizați
directiva de preprocesor
# include [nume fișier]
#Include directiva<имя_файла>inserții
conținutul fișierului specificat până la acel punct
fișierul sursă în care este scris.
De exemplu:
#include
#include „mylib.h”

17. Directiva #define preprocesor

Directiva #Define definește substituția în text
programe. Este folosit pentru a determina
constante simbolice.
Formatul pentru definirea unei constante simbolice este:
#define name substitution_text / * Toate aparițiile
numele sunt înlocuite cu text de substituție * /
Exemple:
#define M 1000
#define Vasia „Vasili Ivanovici”

18. Unele biblioteci standard

ALLOC.H
Descrierea funcțiilor de gestionare a memoriei
(alocare, dealocare etc.)
BIOS.H
Descrieri ale diferitelor funcții utilizate în
acces la rutinele BIOS (de bază
sistem de intrare-ieșire).
CONIO.H Descrierea diferitelor funcții utilizate în
accesarea rutinelor I/O DOS cu
tastatură.
GRAPHICS.H Conține prototipuri de funcții grafice.
MATH.H Conține o descriere a prototipurilor matematice
funcții
STDIO.H Definește tipurile și macrocomenzile necesare pentru
pachet standard I/O. Definește la fel
fluxuri standard I/O stdin, stdout și
descrie rutinele de intrare/ieșire.
STDLIB.H Descrie câteva rutine cu scop general:
rutine pentru transformare, căutare, sortare și altele.
STRING.H
Descrie mai multe rutine de procesare a șirurilor și
lucra cu memoria.

19. Formatarea funcției de ieșire PRINTF

Am folosit deja cele mai comune
funcția de ieșire C este subrutina printf. A ei
scopul este de a scrie informații pe ecran.
Formatul său este atât simplu, cât și flexibil:
printf (<строка формата>, <объект>, <объект>, ...);

20. Funcția de introducere a formatului SCANF

Pentru modul de intrare interactiv poate fi probabil utilizat în
în cele mai multe cazuri, scanf. scanf este o funcție de intrare, în sensul respectiv
echivalent cu printf; formatul său arată astfel:
scanf (<строка формата>,<адрес>,<адрес>,...)
Cu toate acestea, scanf are o diferență foarte importantă: obiectele care urmează
șirul de format trebuie să fie adrese, nu valori. De exemplu, în
programul contine urmatorul apel:
scanf ("% d% d", & a, & b);
Acest apel îi spune programului să aștepte informații de la dvs.
două numere zecimale (întregi) separate printr-un spațiu; primul va fi
atribuit lui a, iar al doilea lui b. Rețineți că operația este folosită aici
adrese (&) pentru a trece adresele a și b la scanf.

21. Formatați șirul

Un șir de format este un șir care începe
și se termină cu ghilimele duble („așa”);
scopul printf este de a scrie această linie pe ecran. Față
cu ieșire printf înlocuiește totul în plus
obiectele enumerate pe linie conform
cu specificațiile de format date în
linia în sine. Exemplu de declarație printf:
printf ("d =% f \ n", d);

22. Formatați șirul

% f din șirul de format este o specificație de format. Tot
specificațiile de format încep cu un caracter procentual (%) și
(de obicei) urmată de o singură literă care indică tipul
datele și modul în care acestea sunt convertite.
% f folosit în specificație indică ceea ce este de așteptat
un număr real. Iată câteva alte specificații de format utilizate în mod obișnuit:
-% u întreg fără semn
-% ld întreg lung
-% p valoarea indicatorului
-% d întreg
-% e număr în virgulă mobilă în formă exponențială
-% caracter c
-% s șir
-% x sau% X este un număr întreg în format hexazecimal.

23. Formatați șirul

Puteți seta lățimea câmpului prin plasarea acestuia
între% și literă, de exemplu, câmp zecimal
lățimea lui 4 este dată ca% 4d. Valoarea va fi
imprimat deplasat la dreapta (în față
spații) deci lățimea totală a câmpului este 4.
Sau, de exemplu, % 6,2f va însemna asta
6 poziții sunt alocate pentru un număr real,
și 2 - pentru partea fracționată.
Dacă doriți să imprimați semnul %, atunci introduceți %%.

24. Formatați șirul

\ n de pe linie nu este o specificație de format, dar
folosit (din motive istorice) ca
o secvență de evadare și reprezintă
un caracter special care trebuie introdus în șir. În acest caz
\ n inserează un caracter la începutul unei linii noi, deci
după afișarea unei linii, cursorul se va muta la începutul uneia noi
siruri de caractere.
- \ f (format traducere sau ecran clar)
- \ t (filă)
- \ b (backspace<-)
- \ xhhh (inserați caracterul cu codul ASCII hhh, unde hhh
conține de la 1 la 3 cifre hexazecimale)
Dacă trebuie să imprimați o bară oblică inversă, atunci
introduceți \\.

25. Un exemplu de program C

#include
#include
principal ()
{
float x1, y1, x2, y2;
printf ("Introduceți două numere:");
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. Alte funcții de ieșire PUTS, PUTCHAR

Există alte două funcții de ieșire care vă pot ajuta
dobândă: puts și putchar. Funcția puts tipărește șirul la
ecran și încheie ieșirea cu un caracter newline.
Să ne uităm la un exemplu de program:
#include
principal ()
{
pune („Bună ziua, student al VKI NSU”);
}
Rețineți că \ n este omis la sfârșitul liniei; nu este necesar ca
se pune adaugă acest caracter.
Dimpotrivă, funcția putchar scrie un singur caracter în
ecran și nu adaugă \ n. Declarația putchar (ch) este echivalentă cu
printf ("% c", ch).

27. Funcții GETS, GETCH

principal ()
{
nume char;
printf ("Cum te cheamă:");
scanf („% s”, nume);

}
Dacă introduceți numele de familie și prenumele, atunci va fi afișat doar numele de familie. pentru că
spațiul pe care îl introduceți după nume semnalează scanf până la sfârșitul intrării
siruri de caractere.
Puteți rezolva această problemă folosind funcția gets.
principal ()
{
nume char;
printf ("Cum te cheamă:");
primește (nume);
printf ("Bună ziua% s \ n", nume);
}

28. Funcții GETS, GETCH

# include
# include
principal ()
{
clrscr ();
nume char;
printf ("Cum te cheamă:");
primește (nume);
printf ("Bună ziua% s \ n", nume);
getch ();
}
Aici funcția getch se așteaptă să fie introdus orice caracter.
Getch citește un singur caracter de la tastatură fără a imprima
pe ecran (spre deosebire de scanf și devine). Rețineți că ea nu are
parametru. Dacă atribuim funcția unei variabile simbolice, atunci
va primi valoarea caracterului apăsat.
De exemplu: c = getch ();

29. Funcționarea de atribuire

Cea mai comună operație este atribuirea,
de exemplu p = a / b sau ch = getch (). În Xi
atribuirea este notată cu un caracter
egalitate (=); valoarea din dreapta semnului
egalitatea este atribuită variabilei din stânga.
Puteți utiliza, de asemenea, secvențial
sarcini, de exemplu: sum = a = b. Astfel de
cazurile atribuirea este din dreapta
la stânga, adică b va fi atribuit lui a, care în
rândul va fi atribuit sumei, deci toate
trei variabile vor obține aceeași valoare (și
și anume valoarea inițială b).

30. Operatii aritmetice. Creştere. Decrementează.

C acceptă setul obișnuit de operații aritmetice:
- inmultire (*)
- Divizia (/)
- determinarea restului din diviziune (%)
- adăugare (+)
- scădere (-)
Pentru a crește valorile unei variabile cu una, utilizați incrementul (++),
decrement (-) a micșora cu unu.
Asa de:
x ++; // incrementează x cu unu
y--; // decrementează y cu unu
Exemple de operații postfix și prefix:
a = 2;
a = 2;
x = 18-2 * a ++;
x = 18-2 * (++ a);
Primim:
a = 3
a = 3
x = 14
x = 12

31. Operații combinate

În continuare sunt câteva exemple de expresii
și modalități de reducere a acestora:
a = a + b; scurtat la a + = b;
a = a - b; se reduce la a - = b;
a = a * b; scurtat la a * = b;
a = a / b; se reduce la a / = b;
a = a% b; se reduce la a% = b;

32. Exemplul 1

Calculați X3 și X10 folosind patru operații de înmulțire pentru
o valoare întreagă dată X.
#include
int x, x2, x3, x5, x10;
principal () (
printf ("\ n Program pentru calcularea X ^ 3 și X ^ 10 \ n");
puts ("Introduceți valoarea lui X");
scanf ("% i", & x);
x2 = x * x;
x3 = x * x2;
x5 = x2 * x3;
x10 = x5 * x5;
printf ("% i în a 3-a putere =% i \ n", x, x3);
printf ("% i la a 10-a putere =% i", x, x10);
}

33. Exemplul 2

Unghiul este dat în radiani. Calculați sinusul și cosinusul unui unghi.
#include
#include
float Angle, Result1, Result2;
principal ()
{
printf ("\ n Program pentru calcularea unghiului sin și cos \ n");
puts ("Setați unghiul în radiani");
scanf ("% f", & Angle);
Rezultat1 = sin (Unghi);
Rezultat2 = cos (Unghi);
printf ("Sinusul unui unghi este% f \ n", Rezultat1);
printf ("Cosinusul unghiului este% f", Rezultat2);

Vă rugăm să suspendați AdBlock pe acest site.

Sper că ați instalat deja un IDE pe computer și ați învățat cum să compilați programe în el. Dacă nu, atunci

Toate programele scrise în C au o structură comună. Despre care vom vorbi în această lecție. Primul nostru program scris la pasul anterior ne va ajuta în acest sens.

Vom completa un card simplu. Momentan știm că există programe, dar nu știm cum sunt aranjate în interior. Prin urmare, harta noastră va arăta astfel.

Fig.1 Harta „Structura programelor C”. Primul nivel.

Pe parcursul cursului, vom reveni la această hartă, o vom perfecționa, o vom completa cu elemente și blocuri noi.

Acum atentie. Nu vă alarmați! Mai jos este codul sursă pentru trei programe simple. Sarcina ta este să le privești cu atenție și să încerci să găsești un model în codul lor (ceva comun pe care îl are fiecare program).

Listare 1. Program 1. Tipărește „Hello, World!”

#include

Lista 2. Programul 2

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

Lista 3. Programul 3

#include int main (void) (FILE * fp; fp = fopen ("input.txt", "w"); fprintf (fp, "Acesta este Sparta!"); fclose (fp); return 0;)

Fă-ți timp pentru a urmări restul lecției și răspunsul corect la această problemă. În primul rând, încearcă să răspunzi singur. După aceea apăsați butonul „Uită-te la continuare!”

Deci, răspunsul: În toate programele de mai sus, este prezentă următoarea construcție:

Lista 4. Funcția principală a oricărui program C este funcția principală.

Int main (void) (return 0;)

Ce este acest design. Aceasta este declarația funcției principale. O astfel de funcție este obligatorie în fiecare program care este scris în C. Un program mare sau unul mic, un joc de calculator sau programul „Hello, World!”, scris de dvs. sau de Bill Gates - dacă programul este scris în C - are o funcție principală... Aceasta este funcția principală a programului nostru, ca să spunem așa. Când rulăm un program, putem crede că rulăm funcția principală a acestui program.

Să ne oprim o secundă. Se pare că ne-am dat seama de ceva sau două despre structura programelor C. Orice program C trebuie să conțină o funcție principală. Să arătăm acest fapt pe harta noastră de cunoștințe „Structura programelor în limbajul C”.

Fig.2 Harta „Structura programelor C”. Principalul.

Acum cardul nu ne deranjează cu golul ei căscat. Să ne continuăm cercetările.

Permiteți-mi să vă spun puțin despre funcția principală și funcțiile în general.

Numele funcției este precedat de int, care este o abreviere pentru cuvântul întreg, care este tradus din engleză ca „tot”. Această notație înseamnă că atunci când funcția principală își finalizează activitatea, trebuie să returneze un număr întreg programului apelant (în cazul nostru, este sistemul de operare). De obicei, pentru funcția principală, acesta este numărul zero, care anunță sistemul de operare: „Ca, totul este în regulă. Nu s-au întâmplat incidente”.

Ați văzut vreodată mesaje de eroare pe ecranul computerului dvs.? De obicei ei scriu ceva de genul „Programul s-a terminat anormal... bla bla bla... Cod -314”. Acesta este cam la fel. Diferența este că atunci când apar probleme, sistemul de operare ne anunță despre asta, iar când totul este în regulă, nu ne deranjează încă o dată.

Cuvântul void este scris între paranteze după numele funcției. În general, argumentele funcției sunt de obicei scrise între paranteze, dar în cazul nostru, când scriu void între paranteze, aceasta înseamnă că funcția nu are argumente. Cu alte cuvinte, pentru ca funcția principală să înceapă să funcționeze, nu are nevoie de date suplimentare din exterior. Vom vorbi despre toate acestea mai detaliat, dar pentru moment, amintiți-vă doar că cuvântul void în loc de argumente de funcție înseamnă că nu sunt necesare argumente pentru această funcție.

În interiorul bretelelor există o descriere a funcției principale, adică. direct ce ar trebui să facă această funcție.

Înainte de acolada de închidere, vedem comanda return. Această comandă este responsabilă pentru returnarea valorii din funcție. Acestea. uite, dacă programul a ajuns în acest punct, atunci totul a fost în regulă și nu au apărut erori, ceea ce înseamnă că poți returna valoarea zero.

De ce exact zero, vă puteți întreba? Și numai diavolul știe! De obicei o fac chiar așa. Puteți, în principiu, să returnați un alt număr întreg, de exemplu 100 sau -236. De-ar fi un număr întreg. Îți amintești int? Prin urmare întregul.

Așa că ne-am dat seama de funcția principală. Încă un punct. Ceea ce este scris în acolade se numește de obicei „corpul funcției” (sau descrierea funcției), iar prima parte, cea dinaintea acoladelor, se numește antetul funcției.

Să ne întoarcem acum la primul nostru program „Hello, World” și să vedem ce este.

Lista 5. Programul „Hello, World”.

#include int main (void) (printf ("Bună ziua, lume! \ n"); return 0;)

Înțelegem deja ceva în acest program. Doar două rânduri rămân neclare, să mergem în ordine.

Lista 6. Directiva include

#include

Această linie este un mesaj către compilator. Aceste mesaje, începând cu caracterul #, sunt numite directive de compilator. Literal: „include fișierul stdio.h”. În timpul compilării, conținutul fișierului stdio.h va fi inserat în locul acestei linii. Acum să vorbim puțin despre acest fișier. stdio.h (din engleză STanDart Input Output) este un fișier antet, care descrie diferite funcții standard legate de intrare și ieșire.

Apare o întrebare rezonabilă: „De ce trebuie să scriem această linie? De ce a trebuit să inserăm acest fișier aici?” Acest lucru este necesar pentru ca în programul nostru să putem folosi funcția standard printf () pentru ieșirea pe ecran.

Iată chestia. Înainte de a folosi ceva în programul nostru, trebuie să-l descriem mai întâi. Imaginează-ți o situație, ți s-a cerut să aduci un candelabru și nu știi ce este. Nu este clar ce să faci.

La fel și compilatorul. Când întâlnește o funcție, el caută descrierea acesteia (adică ce ar trebui să facă și ce înseamnă aceasta) la începutul programului (de la început până în momentul în care este utilizată în program). Deci, funcția printf () este descrisă în fișierul stdio.h. Prin urmare, îl conectăm. Dar când îl conectăm, compilatorul va putea găsi funcția printf (), altfel va arunca o eroare.

Apropo, este timpul să adăugăm harta noastră de cunoștințe. Înainte de funcția principală, adăugați încă un bloc, blocul pentru conectarea fișierelor de antet.

Fig.3 Harta „Structura programelor C”. Bloc de conectare la fișierele antet.

Să continuăm să ne ocupăm de programul nostru.

Lista 7. funcția printf ().

Printf ("Bună ziua, lume! \ N");

În această linie, numim funcția de afișare standard printf (). În acest caz cel mai simplu, îi pasăm un parametru, un șir între ghilimele care trebuie afișat, în cazul nostru este Hello, World! \ n. Dar stai, ce este asta \ n? Nu era niciun \ n pe ecran când a pornit programul. Atunci de ce am scris asta aici? Această secvență este un caracter special care este o comandă pentru a trece la linia următoare. Este ca și cum ai apăsa tasta Enter în MS Word. Există mai multe astfel de caractere speciale, toate sunt scrise cu caracterul „\” - o bară oblică inversă. Aceste caractere speciale sunt numite caractere de control. Vă voi arăta mai târziu. În caz contrar, ecranul va afișa exact ceea ce ați scris între ghilimele duble.

Apropo, rețineți că fiecare comandă C se termină cu „;” (punct şi virgulă). Arată ca un punct la sfârșitul unei propoziții în rusă. Într-un limbaj obișnuit, separăm propozițiile cu un punct, iar în limbajul de programare C, separăm comenzile unele de altele cu punct și virgulă. Prin urmare, punctul și virgulă este obligatoriu. În caz contrar, compilatorul va jura și va arunca o eroare.

Pentru a apela orice funcție, trebuie să scrieți numele acesteia și să indicați parametrii trecuți acesteia în paranteze. O funcție poate avea unul sau mai mulți parametri. Sau este posibil să nu existe deloc parametri, caz în care nu trebuie să scrieți nimic între paranteze. De exemplu, mai sus am numit funcția printf () și i-am transmis un parametru un șir pentru a fi imprimat pe ecran.

Apropo, sfaturi utile. Deoarece fiecare program are o funcție principală și, literalmente, în fiecare program trebuie să afișăm ceva pe ecran, vă recomand să creați imediat un fișier cu următorul gol, astfel încât să nu scrieți același lucru de fiecare dată.

Lista 8. Stub standard pentru programele C.

#include int main (void) (return 0;)

Ei bine, asta pare să fie tot. Această primă lecție poate fi considerată completă. Deși nu, mai este un lucru.

Cel mai important lucru din această lecție este, desigur, structura generală a programului. Dar, în plus, am învățat cum să afișam text arbitrar pe ecran. Se pare că nu știau deloc nimic, dar chiar și asta ar fi suficient pentru a-i face, de exemplu, un mic cadou mamei mele pe 8 martie.


Codul sursă pentru programul de cărți poștale se află în arhiva codului sursă pentru acest tutorial. Experiment! Vei reusi.

Top articole similare