Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Fier
  • Structura generală a programului c. Structura programelor C

Structura generală a programului c. Structura programelor C

Programul C++ în sine este un fișier text care conține constructele și operatorii limbajului dat în ordinea specificată de programator. În cel mai simplu caz, acest fișier text poate conține următoarele informații:

Lista 1.1. Un exemplu de program simplu.

/* Exemplu de program simplu */
#include
int main()
{
printf("Bună lume!");
returnează 0;
}

și de obicei are o extensie cpp, cum ar fi „ex1.cpp”.

Următorul pas este compilarea codului sursă. Compilarea este procesul prin care conținutul unui fișier text este convertit în cod de mașină executabil, care este înțeles de procesorul computerului. Totuși, compilatorul nu creează un program gata de execuție, ci doar cod obiect (un fișier cu extensia *.obj). Acest cod este un pas intermediar în crearea unui program terminat. Faptul este că programul creat poate conține funcții ale bibliotecilor standard C++, ale căror implementări sunt descrise în fișierele obiect ale bibliotecilor. De exemplu, programul de mai sus folosește funcția printf() a bibliotecii standard „stdio.h”. Aceasta înseamnă că fișierul obiect ex1.obj va conține doar instrucțiuni pentru apelarea acestei funcție, dar codul funcției în sine va fi absent în el.

Pentru ca programul executabil final să conțină toate implementările necesare ale funcțiilor, se folosește un linker de cod obiect. Un linker este un program care combină într-un singur fișier executabil codurile obiect ale programului creat, codurile obiect ale implementărilor de funcții de bibliotecă și codul standard de pornire pentru un anumit sistem de operare. În cele din urmă, atât fișierul obiect cât și fișierul executabil constau din instrucțiuni de cod de mașină. Cu toate acestea, fișierul obiect conține doar rezultatul traducerii în limbajul mașinii a textului programului creat de programator, iar fișierul executabil conține și codul mașină pentru rutinele standard de bibliotecă utilizate și pentru codul de pornire.

Să aruncăm o privire mai atentă la programul exemplu din Listarea 1.1. Prima linie specifică comentarii, adică comentarii pentru a vă ajuta să înțelegeți mai bine programul. Sunt doar pentru citire și sunt ignorate de compilator. A doua linie conține directiva #include, care instruiește preprocesorul C++ să insereze conținutul fișierului „stdio.h” în locul acestei linii la compilare. A treia linie definește o funcție numită main care returnează un număr întreg (tip int) și nu acceptă argumente (tip void). Funcția main() este o funcție obligatorie pentru toate programele C++, iar fără ea apare un mesaj de eroare în etapa de compilare, indicând absența acestei funcții. Caracterul obligatoriu al acestei funcții se datorează faptului că este punctul de intrare în program. În acest caz, punctul de intrare este înțeles ca funcția cu care începe și se termină programul. De exemplu, atunci când un fișier exe este lansat, funcția main() este activată, toate instrucțiunile incluse în acesta sunt executate și programul se termină. Astfel, logica întregului program este cuprinsă în această funcție. În exemplul de mai sus, când este apelată funcția main(), este apelată funcția printf(), care afișează mesajul „Hello World!” pe ecranul monitorului, iar apoi este executată instrucțiunea return, care returnează o valoare nulă. Acest număr este returnat de funcția main() în sine sistemului de operare și indică finalizarea cu succes a programului. Acoladele () sunt folosite pentru a defini începutul și sfârșitul corpului funcției, de exemplu. ele conţin toţi operatorii posibili care descriu activitatea acestei funcţii. De remarcat că după fiecare operator în limbajul C++ este plasat simbolul „;”. Astfel, exemplul de mai sus arată structura generală a programelor C++.

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

Limbajul C este structurat în bloc. Fiecare bloc este cuprins între paranteze () .

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ă -; . O acțiune poate fi un apel de funcție sau o operațiune.

Numele funcției este numele colectiv al unui grup de declarații și declarații,
închis într-un bloc (acolade). Numele funcției este urmat de parametrii funcției din paranteze.

Comentarii în limbaj C

Limbajul C folosește simboluri pentru comentarii.

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

Întreaga secvență cuprinsă între aceste caractere este un comentariu.

Este la îndemână pentru scris comentarii pe mai multe linii:

int a; /* întreg
variabil */

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

În plus, caracterele // pot fi folosite pentru a scrie comentarii scurte. În acest caz, un comentariu este tot ceea ce se află după caractere // ș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 limbajul C, sistemul de operare al computerului transmite controlul unei funcții numite main() . Funcția main() nu poate fi apelată din alte funcții de program, este funcția 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 main().

Numele funcției este precedat de tipul valorii returnate. Când funcția principală este apelată, valoarea este returnată sistemului de operare. Ultima intrare nu va returna o valoare. in orice caz void main()- notația nu este tocmai corectă, deoarece îi spune compilatorului că funcția main () nu returnează nicio valoare.

În același timp, recordul int main() spune compilatorului să returneze o valoare întreagă de care are nevoie sistemul de operare și îi spune că programul s-a încheiat cu grație. Dacă această valoare nu este returnată, sistemul de operare înțelege că programul sa încheiat în modul de urgență.
Pentru a returna o valoare întreagă, se adaugă o linie înainte de sfârșitul funcției

returnează 0; // variabilă reală

Acoladele includ descrieri și operatori.

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

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

1
2
3
4
5
6
7

#include // Conectarea bibliotecii I/O
int main() // functie principala
{
printf("Bună lume!"); // Afișează mesajul
getchar(); // Întârzierea ferestrei consolei
returnează 0;
}


Rezultatul programului:

Acum să încercăm să scriem textul î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ă schimbați pagina de coduri din consolă, astfel încât să se potrivească cu pagina de cod a editorului (1251). În acest scop, funcția de sistem se numește ( „chcp 1251” ) cu linia de comandă corespunzătoare. Prototipul funcției system() este conținut în bibliotecă .

Textul programului va arăta astfel:

Compoziția limbiiÎn textul în orice limbă naturală, patru
elemente de bază: simboluri, cuvinte, fraze și propoziții.
Elemente similare sunt conținute în limbajul algoritmic:
Alfabetul unei limbi, sau simbolurile sale, sunt semnele indivizibile de bază, cu
cu care sunt scrise toate textele din limbă.
Un lexem este cea mai mică unitate a unei limbi care are un independent
sens.
O expresie definește o regulă pentru calcularea unei valori.
Un operator specifică o descriere completă a unei acțiuni.
Pentru a descrie o acțiune complexă, este necesară o secvență
operatori. Operatorii pot fi combinați într-un compus
instrucțiune sau bloc (un bloc în limbajul C++ este
o secvență de afirmații cuprinse între acolade ( )).
În acest caz, ele sunt tratate ca o singură declarație.
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.
Combinate printr-un singur algoritm, un set de descrieri și
operatori formează un program într-un limbaj algoritmic.

Procesul de executare a programului

Pentru a rula un program, trebuie să îl traduceți
într-un limbaj înțeles de procesor - în coduri de mașină. Acest
procesul constă din mai multe etape:
Programul este mai întâi transmis preprocesorului, care
include fișiere text care conțin descriere
elemente utilizate în program.
Se introduce textul integral rezultat al programului
compilator, care evidențiază jetoane și apoi se bazează pe
gramatica limbii recunoaște expresii și operatori,
construit din aceste lexeme. Compilatorul detectează apoi
erori de sintaxă și, dacă nu există, build-uri
modul obiect.
Linkerul, sau linkerul, generează
modul executabil al programului, conectarea la obiect
module alte module obiect. Dacă programul este
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 limbajului 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 („caractere cu spații albe generalizate”),
folosite pentru a separa lexemele unele de altele (de exemplu, spațiu,
filă, linie nouă).
Din caracterele alfabetului
se formează lexemele de limbă:
identificatori;
cuvinte cheie (rezervate);
semne de operare;
constante;
separatoare (paranteze, punct, virgulă, caractere de spațiu).
Limitele jetoanelor sunt definite de alte jetoane, cum ar fi
separatoare sau semne de operare.

Identificatori

Identificatorul este numele obiectului programului. LA
Se pot folosi identificatori latini
litere, cifre și liniuțe 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 cuvintele cheie
cuvintele și denumirile standardului folosit
obiecte limbaj;
nu este recomandat să începeți identificatorii cu un caracter
subliniere;
Identificatorii pot fi de orice lungime, dar
compilatorul ia în considerare nu mai mult de 31 de caractere din
începutul identificatorului;
Exemple de identificare:
KOM_16, dimensiune88, _MIN, TIME, oră

Cuvinte cheie

Cuvintele cheie sunt identificatori rezervați care au
valoare specială pentru compilator. Ele pot fi folosite doar în
sensul în care sunt definite. Lista de cuvinte cheie C++ este dată în
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 operațiuni

Semnul operațiunii este unul sau mai multe
simboluri de acțiune
peste operanzi. semn interior
spatiile nu sunt permise.
Operațiunile sunt împărțite în unare,
binare și ternare ca număr
operanzii implicați.

Tipuri simple de date

Tipul de date definește:
reprezentarea internă a datelor în memorie
calculator;
set de valori care pot
accepta valori de acest tip;
operațiuni și funcții care pot fi
se aplică valorilor de acest tip.
Limbajul C++ definește șase standarde
tipuri de date simple de reprezentat
întreg, real, caracter ș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
- întreg de lungime mărită (întreg lung);
scurt - număr întreg de lungime redusă (întreg scurt);
semnat - semnat, i.e. întreg cu semn (cei mai semnificativi biți numără ca
simbolic);
nesemnat - nesemnat, i.e. întreg fără semn (cel mai semnificativ bit nu
considerat iconic).
gol
- lipsa de valoare;
bool - boolean (poate lua numai valorile adevărate și false.
Reprezentarea internă a lui false este 0 (zero).
Orice altă valoare este interpretată ca adevărată.)
Pentru a descrie constante, utilizați cuvântul de serviciu const înainte
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 main(). Este de la asta
funcția începe să execute programul ș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 ([ parametrii ])
{
enunţuri care alcătuiesc corpul funcţiei
}
De regulă, funcția este utilizată pentru a calcula unele
valori, astfel încât numele funcției este precedat de tipul acesteia. În cazul în care un
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ă de program care conține
funcții 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
}
/* Exemplu de program simplu */
#include
int main()
{
printf("Bună lume!");
returnează 0;
}

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

Funcții 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. Șirul de format conține caractere care sunt copiate în flux (pe ecran) sau
sunt solicitate din flux (de la tastatură) la intrare, iar specificațiile de conversie începând cu
Semnul %, care sunt înlocuite cu valori specifice în timpul introducerii și ieșirii.
#include
int main() (
int i;
printf("Introduceti un intreg\n");
scanf("%d", &i);
printf("Ai introdus numarul %d, multumesc!", i);
returnează 0; )
Prima linie a acestui program este o directivă de preprocesor care se inserează în textul programului
fișier antet , care conține o descriere a funcțiilor de intrare/ieșire utilizate în program. Toate
directivele de preprocesor încep cu semnul #.
A treia linie este o descriere a unei variabile de tip întreg numită i .
Funcția printf de pe a patra linie tipărește promptul Introduceți un număr întreg și trece la o nouă linie
conform secvenței de evadare \n.
Funcția scanf stochează întregul introdus de la tastatură în variabila i, iar următoarea instrucțiune se tipărește la
ecranați șirul pe care îl conține, înlocuind specificația de conversie cu valoarea acelui 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ă
peste 450 de rutine de bibliotecă de funcții și macrocomenzi pe care le puteți
apelați din programele dvs. C pentru a rezolva
o gamă largă de sarcini, inclusiv I/O
nivel scăzut și înalt, lucrați cu
linii și fișiere, alocarea memoriei,
managementul proceselor, 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 un caracter #, precedat de
linia poate conține doar spații
simboluri.
Căutați un fișier dacă nu este specificată calea completă,
menţinute în cataloage standard
fișierele incluse. În loc de unghiular
pot fi folosite paranteze, ghilimele (" ").
- în acest caz, căutarea dosarului se efectuează în
directorul care conține fișierul sursă și
apoi deja în directoare standard.
Fișierele antet au de obicei
extensie.h .

16. Directiva preprocesor #include

Pentru a conecta biblioteci, utilizați
directiva de preprocesor
# include [nume fișier]
directiva #include<имя_файла>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 o substituție în text
programe. Este folosit pentru a determina
constante simbolice.
Formatul definiției constantei simbolice:
#define name substitution_text /*Toate aparițiile
numele sunt înlocuite cu textul 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
Descrierea diferitelor funcții utilizate în
accesarea subrutinelor BIOS (de bază
sistem I/O).
CONIO.H Descrierea diferitelor funcții utilizate în
accesarea rutinelor I/O DOS cu
tastaturi.
GRAPHICS.H Conține prototipuri de funcție grafică.
MATH.H Conține o descriere a prototipurilor de matematică
funcții
STDIO.H Definește tipurile și macrocomenzile necesare pentru
pachet standard I/O. De asemenea defineste
fluxuri standard de intrare/ieșire stdin, stdout și
descrie subrutinele I/O.
STDLIB.H Descrie câteva rutine cu scop general:
subrutine pentru transformare, căutare, sortare și altele.
STRING.H
Descrie mai multe rutine de procesare a șirurilor și
munca de memorie.

19. Funcția de ieșire în format PRINTF

Am folosit deja cele mai comune
funcția de ieșire în 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 introducere interactiv, probabil poate fi folosit în
în cele mai multe cazuri, funcția scanf. scanf este o funcție de intrare, prin definiție
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 conține următorul apel:
scanf("%d %d", &a, &b);
Acest apel îi spune programului că ar trebui să aștepte informații din partea dvs.
două numere zecimale (întregi) separate printr-un spațiu; primul testament
atribuit lui a, iar al doilea lui b. Rețineți că aici folosim operația
adrese (&) pentru a trece adresele a și b la scanf.

21. Formatați șirul

Șirul de format este șirul care începe
și se termină cu ghilimele duble ("ca acesta");
scopul printf este de a scrie această linie pe ecran. Inainte de
ieșirea printf înlocuiește totul în plus
obiectele enumerate în linie conform
cu specificațiile de format specificate în
linia în sine. Un exemplu de instrucțiune printf:
printf(“ d= %f \n”,d);

22. Formatați șirul

%f din șirul de format este specificația formatului. Toate
specificațiile de format încep cu un semn de procent (%) și
(de obicei) urmată de o singură literă care indică tipul
date și cum să le transforme.
%f folosit în specificație spune 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ă
- %c caracter
- %s șir
- %x sau %X întreg în format hexazecimal.

23. Formatați șirul

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

24. Formatați șirul

\n într-un șir nu este o specificație de format, dar
folosit (din motive istorice) ca
secvența de evacuare și reprezintă
un caracter special introdus într-un șir. În acest caz
\n inserează un caracter la începutul unei linii noi, deci
după ce linia este scoasă, cursorul se va muta la începutul noii linii
linii.
- \f (format traducere sau ecran clar)
- \t (filă)
- \b (backspace<-)
- \xhhh (inserați caracterul cu codul ASCII hhh, unde hhh
conține 1 până 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("Introduceti doua 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
de interes: puts și putchar. Funcția put oferă un șir către
ecran și încheie ieșirea cu un caracter newline.
Luați în considerare un exemplu de program:
#include
principal()
{
puts("Bună, student la VKI NSU");
}
Rețineți că \n este omis la sfârșitul liniei; acest lucru nu este necesar, deoarece
se pune adaugă acest caracter.
Dimpotrivă, funcția putchar scrie un singur caracter în
ecran și nu adaugă \n. putchar(ch) este echivalent cu
printf("%c",ch).

27. Funcții GETS, GETCH

principal()
{
nume char ;
printf("Care este numele tau: ");
scanf("%s",nume);

}
Dacă introduceți un nume de familie și un prenume, va fi afișat doar numele de familie. pentru că
spațiul pe care îl introduceți după nume indică scanarea sfârșitului intrării
linii.
Puteți rezolva această problemă folosind funcția gets.
principal()
{
nume char ;
printf("Care este numele tau: ");
primește(nume);
printf("Bună, %s\n", nume);
}

28. Funcții GETS, GETCH

#include
#include
principal()
{
clrscr();
nume char ;
printf("Care este numele tau: ");
primește(nume);
printf("Bună, %s\n", nume);
getch();
}
Aici funcția getch așteaptă să fie introdus orice caracter.
Funcția getch citește un singur caracter de la tastatură fără să emită
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. Operațiunea de atribuire

Cea mai comună operație este atribuirea,
de exemplu, p=a/b sau ch = getch(). În C
atribuirea este notată printr-un singur caracter
egalitate (=); în timp ce 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
cazuri, cesiunea se face pe dreapta
la stânga, adică b va fi atribuit lui a, care în
la rândul său va fi atribuit la sumă, 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 diviziei (%)
- adăugare (+)
- scădere (-)
Pentru a crește valoarea unei variabile cu unul, 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

Mai jos sunt câteva exemple de expresii
și modalități de reducere a acestora:
a = a + b prescurtat la a += b;
a = a - b; prescurtat la a -= b;
a = a * b; prescurtat la a *= b;
a = a / b; prescurtat la a /= b;
a = a % b; redus la a %= b;

32. Exemplul 1

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

33. Exemplul 2

Dat un unghi î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 valoarea unghiului în radiani");
scanf("%f",&Unghi);
Rezultat1=sin(Unghi);
Rezultat2=cos(Unghi);
printf("Sinusul unghiului este %f \n",Rezultat1);
printf("Cosinusul unghiului este %f",Rezultat2);

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

Pentru început, adăugăm bibliotecile de care avem nevoie #include Dacă fișierul se află în directorul actual al proiectului, 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ă aceea, putem adăuga constantele de care avem nevoie #define A 3

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

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

2. La ce se folosește punctul și virgulă în C?

Punctul și virgulă este folosit pentru a marca sfârșitul unei declarații în C.

3. Toate compilatoarele C necesită utilizarea unei instrucțiuni return în program?

Pentru a returna o valoare întreagă, linia este atașată înainte ca funcția să se încheie

De asemenea, în majoritatea cazurilor, returnare înseamnă ieșire din funcție.

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 tipărire a elementelor matricei 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 anumită acțiune.

de exemplu, Printf ("Bună ziua, lume"); // afișează inscripția Hello World

De asemenea, comentariile pot fi introduse cu caracterele /* - la început */ - la sfârșitul comentariului

5. De ce sunt folosiți parametrii la apelarea unei funcții?

O legătură este în esență un al doilea nume pentru același obiect. Când un obiect este transmis unei funcții prin referință, acel 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 precum main () 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 atribuie 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, poate fi afișat oricare dintre cele 256 de caractere. Toate caracterele codificate sunt reprezentate în tabelul ASCII.

2. Cum este simbolul „3” diferit 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, prin 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. Cuvântul cheie const poate fi folosit pentru a declara un pointer către o constantă.

5. C suportă tipul de date șir?

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

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

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

7. Cum se schimbă valoarea unei constante?

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

În linii mari, \r trebuia să seteze numărul caracterului la zero. lăsând numărul rândului neschimbat (adică va muta căruciorul mașinii de scris la începutul liniei fără a atinge hârtia) și \n - dimpotrivă, va face o tranziție la următoarea linie, lăsând neschimbată poziția curentă de imprimare (va derula hârtia fără a atinge căruciorul).

2. Cum să afișați caracterul „ghilimeleu” pe ecran?

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

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

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

Î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ă (reprezentare 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 printf() față de puts()?

5. Ce este un pointer de format?

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

La fel ca %a (doar C99)

Citește un caracter

Citește un î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 %f (doar C99)

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

La fel ca %g

Citește un număr octal

Citește un rând

Citește un număr hexazecimal

La fel ca %x

Citește indicatorul

Preia 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 un semn de procente

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

Puteți imprima valoarea acesteia 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ă, structura modulară a programelor.

2) C este un limbaj eficient. Programele C sunt compacte și rapid de executat.

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 și disponibil pe scară largă, aplicațiile scrise în C pot rula adesea cu modificări reduse sau deloc pe o mare varietate de sisteme informatice. Calculatorul, î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 un computer 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ă instrucțiuni pentru pasul următor.

Exemplu comenzi: С=А+В, unde А, В-operanzi, +- operație.

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

operanzi -participanti la operatie, apoi peste ce si cu ce se realizeaza operatia. Un set de operații elementare din modurile descrierilor lor formează un sistem de comenzi ale limbajului de programare.

Exemplul #1:

#include

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

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

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

a doua linie: antetul funcției principale a programului. Declarația Cout pentru a scoate informații<< – помещение в класс данных, \n-переход к новой строке вывода.

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

Utilizarea lui S.

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, inclusiv fișierul stdio.h, care descrie funcția de bibliotecă printf.

Linia 2: definiția unei funcții numită main care nu acceptă argumente. Declarația principală este închisă între acolade. Funcția principală apelează funcția de bibliotecă printf pentru a tipări, dată în secvență de caractere. Slash (\n) - linie nouă literală, tranziție la linie nouă.

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

1) Scrieț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) Alergați și obțineți rezultatul.


SCHEMA DE COMPILARE

Un traducător este un program de calculator care traduce un program scris într-un limbaj de programare într-o formă pe care computerul o poate înțelege. Ieșirea compilatorului este 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 executat. Borland C++ este un mediu de dezvoltare pentru programe care includ atât un compilator, cât și alte instrumente.

Structura unui program C.

Orice program C constă dintr-una sau mai multe funcții și elemente. Diferite funcții pot primi orice nume. Funcțiile conțin instrucțiuni (comenzi) care prescriu acțiuni la un anumit pas de execuție, iar variabila stochează valorile utilizate în cursul acestor acțiuni. Astfel de acțiuni pot fi atribuirea de valori variabilelor, verificarea unor condiții. Funcția numită main. Execuția oricărui program începe cu funcția principală.

a) Structura generală a unui program C fără a face referire la o subrutină:

b) Structura generală a unui program C cu referire la subproiecte:

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 unui program. Instrucțiuni care alcătuiesc corpul de programe de la operatori și operanzi. În C, fiecare instrucțiune și fiecare linie de apeluri de funcție se termină cu punct și virgulă. Excepție fac comenzile preprocesorului și numele funcțiilor care apar la începutul unei unități de program. Scopul majorității programelor este de a rezolva problema prin diverse transformări ale datelor sursă. Pentru aceasta este necesar.

Top articole similare