h2. Aritmeettiset operaattorit
C-kieleen kuuluvat aritmeettiset perusoperaattorit, jotka ovat seuraavat:
||merkki||operaatio||esimerkki||
|{{-}}|vähennyslasku|{{x = a-3;}}|
|{{+}}|yhteenlasku|{{x = b+2;}}|
|{{*}}|kertolasku|{{x = a*b;}}|
|{{/}}|jakolasku|{{x = a/2;}}|
|{{%}}|jakolaskun jakojäännös|{{x = a % 2; // testaa onko a jaollinen kahdella vai ei}}|
h2. Unaarioperaattorit
||merkki||operaatio||esimerkki||
|{{-=}}|vähennyslasku ja sijoitus|{{a-=3;}}|
|{{+=}}|lisäyslasku ja sijoitus|{{a+=3;}}|
|{{*=}}|tulo ja sijoitus|{{a*=3;}}|
|{{/=}}|osamäärä ja sijoitus|{{a/=3;}}|
|{{%=}}|modulo ja sijoitus|{{a%=3; // poistaa a:sta kolmen moninkerrat}}|
|{{--}}|dekrementointi eli vähennys yhdellä|{{x--; tai --x; (x:stä pois 1)}}|
|{{++}}|inkrementointi eli lisäys yhdellä|{{x++; tai ++x; (x:sään lisää 1)}}|
* Inkrementointi- ja dekrementointimerkit voidaan laittaa muuttujan eteen tai sen jälkeen.
* Jos lisäys on [for|Toistorakenteet#for] tai [while|Toistorakenteet#while]-silmukan sisällä, tehdään ennen olevilla merkeillä testaus ennen silmukkaa ja jälkeen olevilla merkeillä silmukan suorituksen jälkeen.
h3. Esimerkki unaarioperaattorien käytöstä
Seuraava sijoituslause
{code}
Luku = Luku+5;
{code}
voidaan kirjoittaa muotoon:
{code}
Luku += 5;
{code}
h2. Operaatioiden sijoitus
Matemaattisia operaatioita voidaan sijoittaa kaikkiin paikkoihin mihin muuttujiakin.
h3. Sijoituslauseessa
{code}
int x, luku1, luku2; // Esitellään muuttujat x, luku1 ja luku2
x = luku1 * luku2; // Sijoitetaan luku1 kertaa luku2 tulos muuttujaan x
{code}
h3. Funktion parametrilistassa
{code}
int luku1, luku2;
printf("%d + %d = %d\n", luku1, luku2, luku1+luku2);
{code}
h3. Muuttujien alkuarvona
{code}
int a = 3;
int b = 5;
int c = a*b; // Sijoitetaan tulon a * b tulos muuttujan c arvoksi
{code}
h2. Matemaattiset apufunktiot
Suuri osa kaikista matemaattisista toiminnoista on ohjelmakirjastoissa, kuten esimerkiksi:
||toiminto||funktio||esimerkki||
|neliöjuuri|*sqrt()*|{{float a = sqrt\(x\);}}|
|potenssi|*pow()*|{{int a = sqrt\(x, 3\);}}|
|sini|*sin()*|{{float a = sin\(x\);}}|
|kosini|*cos()*|{{float a = cos\(x\);}}|
|tangentti|*tan()*|{{float a = tan\(x\);}}|
|jne|kts math.h||
Nämä löytyvät headerista _math.h_.
|