1. Структура на програма
Потсетување: изворниот код на програмскиот јазик C е организиран во функции
int main() {
deklaracija na promenlivi;
programski_naredbi;
}
2. Функции во C
-
main
-
Функциите може да примаат влезни аргументи во делот ()
-
Типот на резултатот кој го враќа функцијата стои пред името на функцијата (
int
– функцијата враќа цел број) -
Телото на функцијата започнува со
{
, а завршува со}
-
Сите наредби се одделуваат меѓусебно со
;
3. Употреба на коментари
За дополнително до објаснување или документирање на изворниот код се користат коментари. Постојат два вида коментари:
-
коментари во еден ред
// komentar vo eden red
-
коментари во повеќе редови
/* komentar vo povekje redovi */
3.1. Основна програма во C
#include <stdio.h>
// glavna funkcija
int main() {
/*
pechatenje poraka na ekran
*/
printf("Dobredojdovte na FINKI!\n");
return 0;
}
-
#include
- директива за вклучување на надворешни библиотеки -
stdio.h
- библиотека со функции за работа со стандардни влезно/излезни текови (тастатура, екран) -
printf
- функција за печатње на стандарден излез
3.2. Основна програма во C++
#include <iostream>
using namespace std;
// glavna funkcija
int main() {
/*
pechatenje poraka na ekran
*/
cout << "Dobredojdovte na FINKI!" << endl;
return 0;
}
-
#include
- директива за вклучување на надворешни библиотеки -
<iostream>
- библиотека за работа со стандардни влезно/излезни текови (тастатура, екран) -
cout
- глобален објект за работа со излезен тек (екран) -
<<
со оператор за печатење на излезен тек (екран)
3.3. Програма за собирање два броја
#include <stdio.h>
int main() {
int a = 5;
int b = 10;
int c = a + b;
return 0;
}
4. Променливи (variables)
-
Променливите се симболички имиња за места во меморијата во кои се чуваат некакви вредности.
-
Сите променливи пред да се користат треба да се декларираат.
-
Со секое ново сместување на вредност во променливата, старата вредност се брише
4.1. Начин на декларација на променливи
тип_на_променлива име_на_променлива = почетна_вредност;
int a = 5;
float x = 2.3;
char c = 'a';
4.2. Типови на променливи во C
Цели броеви | Знаковни | Децимални |
---|---|---|
|
|
|
|
|
|
|
4.3. Дефинирање на имиња на променливи
При именувањето на променливите може да се користат:
-
мали букви од
a
доz
; -
големи букви од
A
доZ
; -
цифри од
0
до9
(не смее да започнува со цифра);
Избирјте имиња на променливи кои јасно го означуваат она што се чува во неа. |
С ги разликува малите и големите букви! |
5. Именувани константи
Именуваните константи се креираат со користење на клучниот збор const
#include <stdio.h>
int main() {
const long double PI = 3.141592653590L;
const int DENOVI_VO_NEDELA = 7;
const NEDELA = 0; // po default int
DENOVI_VO_NEDELA = 7; // greshka
return 0;
}
Именуваните константи може да се креираат и со користење на претпроцесорот и за нив по правило се користат големи букви
Користење на #define
#define tekst_za_baranje tekst_za_zamena
#include <stdio.h>
#define PI 3.141592653590L
#define DENOVI_VO_NEDELA 7
#define NEDELA 0
int main() {
long broj = PI;
int den = NEDELA;
return 0;
}
6. Печатење на стандарден излез
За печатење на стандарден излез (екран) во C се користи готова функција
printf
од бибилиотеката stdio.h
(Standard Input Otput)
#include <stdio.h>
Функцијата која се употребува е:
int printf(kontrolna_niza, lista_na_argumenti)
Контролната низа содржи било каков текст, ознаки за форматот на печатење
на аргументите предводени со %
или специјални знаци кои започнуваат со
\
.
Ознаките за форматот на печатење се одредуваат според видот на променливата чија вредноста треба да се испише.
6.1. Најчесто користени ознаки за форматот на печатењето
Ознака | Објаснување |
---|---|
|
за цели броеви ( |
|
за цели броеви ( |
|
за децимални броеви ( |
|
за знаци ( |
|
за низа од знаци (стринг, |
|
за знакот |
6.2. Пример на користење на функцијата printf
Да се отпечати на екран во следниов редослед:
Prva recenica. Vtora recenica. Treta recenica.
#include <stdio.h>
int main() {
printf("Prva rechenica.\n");
printf("Vtora rechenica.\nTreta rechenica.");
return 0;
}
#include <iostream>
using namespace std;
int main() {
cout << "Prva rechenica.\n";
cout << "Vtora rechenica.\nTreta rechenica.";
return 0;
}
#include <stdio.h>
int main() {
printf(" e zbor dolg %d bukvi.\n", printf("Makedonija"));
return 0;
}
7. Оператори
7.1. Аритметички оператори
Се применуваат на броеви (цели или децимални)
Оператор | Операција |
---|---|
+ |
Собирање |
- |
Одземање |
* |
Множење |
/ |
Делење |
% |
Делење по модул (остаток при делењето) |
8. Задачи
8.1. Задача 1
Да се напише програма која ќе ја пресметува вредноста на математичкиот
израз: x = 3/2 + (5 – 46*5/12)
#include <stdio.h>
int main() {
float x = 3.0 / 2 + (5 - 46 * 5.0 / 12);
printf("x = %.2f\n", x);
return 0;
}
8.2. Задача 2
Да се напише програма која за зададена вредност на х (при декларација на променливата) ќе го пресмета и отпечати на екран х2.
#include <stdio.h>
int main() {
int x = 7;
printf("Brojot %d na kvadrat e %d\n", x, x * x);
return 0;
}
#include <iostream>
using namespace std;
int main() {
int x = 7;
cout << "Brojot " << x << " na kvadrat e " << x * x << endl;
return 0;
}
8.3. Задача 3
Да се напише програма која за дадени страни на еден разностран триаголник
ќе ги отпечати на екран периметарот и квадратот од
плоштината (нека се работи со a = 5
, b = 7.5
, c = 10.2
).
#include <stdio.h>
int main() {
float a = 5.0;
float b = 7.5;
float c = 10.2;
float L = a + b + c;
float s = L / 2;
float P = s * (s - a) * (s - b) * (s - c);
printf("Perimetarot e: %.2f\n", L);
printf("Kvadratot na ploshtinata e: %.2f\n", P);
return 0;
}
#include <iostream>
using namespace std;
int main() {
float a = 5.0;
float b = 7.5;
float c = 10.2;
float L = a + b + c;
float s = L / 2;
float P = s * (s - a) * (s - b) * (s - c);
cout << "Perimetarot e: " << L << endl;
cout << "Kvadratot na ploshtinata e: " << P << endl;
return 0;
}
8.4. Задача 4
Да се напише програма за пресметување на аритметичката средина на броевите 3, 5 и 12.
#include <stdio.h>
int main() {
int a = 3;
int b = 5;
int c = 12;
float as = (a + b + c) / 3.0;
printf("Aritmetichkata sredina e %2.f\n", as);
return 0;
}
8.5. Задача 5
Да се напише програма која ќе ги отпечати на екран остатоците при делењето на бројот 19 со 2, 3, 5 и 8.
#include <stdio.h>
int main() {
int a = 19;
printf("Ostatokot pri delenje so 2 e: %d\n", a % 2);
printf("Ostatokot pri delenje so 3 e: %d\n", a % 3);
printf("Ostatokot pri delenje so 5 e: %d\n", a % 5);
printf("Ostatokot pri delenje so 8 e: %d\n", a % 8);
return 0;
}
8.6. Задача 6
Да се напише програма за пресметување и печатење на плоштината и периметарот на круг. Радиусот на кругот се чита од стандарден влез (тастатура) како децимален број.
#include <stdio.h>
#define PI 3.14
int main() {
float radius;
scanf("%f", &radius);
float perimetar = 2 * radius * PI ;
float plostina = radius * radius * PI;
printf("L = %f\n", perimetar);
printf("P = %f\n", plostina);
return 0;
}
8.7. Задача 7
Да се напише програма која од СВ ќе прочита два цели броеви и ќе ја испечати на компјутерскиот екран нивната сума, разлика, производ и остатокот при делењето.
#include <stdio.h>
int main() {
int x, y;
scanf("%d %d", &x, &y);
printf("%d + %d = %d\n", x, y, x + y);
printf("%d - %d = %d\n", x, y, x - y);
printf("%d * %d = %d\n", x, y, x * y);
printf("%d %% %d = %d\n", x, y, x % y);
return 0;
}
8.8. Задача 8
Да се напише програма која чита голема буква од стандарден влез и ја печати истата како мала буква.
Секој знак се претставува со ASCII број. |
A = 65, a = 97
#include <stdio.h>
int main() {
char c;
printf("Vnesete golema bukva: ");
scanf("%c", &c);
printf("%c malo se pishuva: '%c'\n", c, c + ('a' - 'A'));
return 0;
}