Osnove C/C++

Transcription

Osnove C/C++
Računalniški praktikum, 2006-2007, SKLOP 1: osnove jezika C/C++
Zgradba programa:
Pri nekazalcnih spremenljivkah je pred
spremenljivko potrebno dati znak & sicer program ne
deluje!!
glava
funkcije
glavni program
Primer: &ime_spremenljivke
Glavni program:
Primer:
scanf(“%d”,&a);
cin >> a;
void main() {
// tekst...
}
Določila za scanf(…) imajo naslednjo obliko:
%[*] [širina] [{h | l | I64 | L}]tip
int main(int argc, char* argv[])
{
// tekst...
return 0;
}
Begin-end blok:
{ ... begin
} ... end
Komentarji:
// komentar do konca vrstice
/* komentar preko vec vrstic */
Glava:
#include “ime_datoteke”
#include <ime_sistemske_datoteke>
#define MAX 100 // konstanta
deklaracija globalnih spremenljivk
Tipi spremenljivk:
int .... cela stevila
float, double ... realna stevila
char ... znak
bool ... logicna vrednost
tip* ... kazalčni tip
deklaracije so lahko kjerkoli!
Primer: int a,b;
Prireditev:
ime_spremenljivke = vrednost;
ime_spremenljivke += vrednost;
ime_spremenljivke++;
tip je določen z enim od naslednjih znakov:
Znak
Tip
Oblika izpisa
c
char
Izpis znaka.
d
int
Predznačeno decimalno število.
i
int
Predznačeno decimalno število.
e
double
Predznačeno število oblike [-]d.dddd e
[predznak]ddd kjer je d ena decimalna
števka, dddd je ena ali več decimalnih
števk, ddd je natančno tri decimalne
števke, predznak je pa + ali -.
E
double
Enako kot pri e, le da je eksponent
označen z E.
f
double
Predznačeno število oblike [-]
dddd.dddd, kjer je dddd ena ali več
decimalnih števk. Število decimalnih
števk pred decimalno piko je odvisno
od celega dela števila, število števk
za decimalno piko pa od želene
natančnosti.
s
srting
Izpis niza znakov.
zastavice določajo:
Zastavica
Pomen
Privzeta vrednost
–
Leva poravnava
znotraj polja
podane dolžine.
Desna poravnanost.
+
Izpisani
vrednosti
pripiši tudi
predznak (+ ali
-), če je
vrednost
predznačenega
tipa.
Predznak se izpiše le pri
negativnih vrednostih (–).
Izpis:
printf(oblika_izpisa,spremenljivke);
ali
cout << vrednost;
cout << endl; ... prehod v novo vrstico.
Primer:
printf(“Vsota znasa : %d\n”,vsota);
cout << “Vsota znasa :” << vsota << “\n”;
Določila v obliki izpisa za
naslednjo obliko:
printf(…) imajo
%[zastavice][širina][.natančnost][{h|l|I64|L}] tip
Branje:
scanf(določila,spremenljivke);
ali
cin >> ime_spremenljivke;
h | l | I64 | L
določajo velikost tipa:
Oznaka
Pomen
h
kratek tip (npr. short int)
l
daljši tip (npr. long int, double)
Knjižnice:
Za ukaze printf() in scanf() je potrebno vključiti
sistemsko knjižnico stdio.h
Za ukaze cout in cin je potrebeno vključiti sistemsko
knjižnico iostream.h
Računalniški praktikum, 2006-2007, SKLOP 1: osnove jezika C/C++
If struktura:
if (pogoj)
ukaz;
if (pogoj) {
// vec ukazov
}
if (pogoj)
ukaz;
else
ukaz;
if (pogoj) {
// ukazi
}
else {
// ukazi
}
Pogoji:
&& .. logicni and
|| .. logicni or
== .. enakost
!= .. neenakost
Case stavek:
switch (spremenljivka) {
case vrednost1 :
// ukazi
break;
case vrednost2 :
case vrednost3 :
// ukazi
break;
// ukazi
break;
default : // ce noben case ni ustrezal
}
Naloge:
1. Napišite program, ki preko tipkovnice prebere celo število. Če je število tro- ali manj mestno,
izpišite stotice, desetice in enice tega števila, sicer izpišite, da je število preveliko.
2. Vnesite datum (dan, mesec in leto) preko tipkovnice ter izračunajte ali datum obstaja ali ne.
Če obstaja, izpišite OBSTAJA, sicer NE OBSTAJA. Namig: dan in mesec ne smeta biti negativna,
pazite na prestopno leto in na število dni v mesecih.
3. Preko tipkovnice vnesite polmer kroga in dolžine obeh stranic pravokotnika ter izračunajte njun
obseg in ploščino. Če lik ne obstaja (negativne vrednosti), izpišite da lik ne obstaja. Namig:
število PI ne obstaja, definirajte ga kot konstanto.