Multiplikation, Division og Modulo
Stryg for at vise menuen
Multiplikationsoperator
Multiplikationsoperatoren * giver produktet af sine operander. For eksempel, hvis du skal bestemme mængden af vand, der kræves for at fylde en pool:
Main.c
123456789101112131415#include <stdio.h> int main() { int height = 2; // In meters int width = 7; // In meters int length = 10; // In meters // A cubic meter contains one thousand liters int liters = (height * width * length) * 1000; printf("Size of pool: %d liters", liters); return 0; }
Divisionsoperator
Divisionsoperatoren / dividerer venstre operand med højre operand.
Antag, at du ønsker at beregne en bils hastighed:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters double t = 3; // Three hours double v = s / t; printf("Velocity = %f m/h", v); return 0; }
Ved at bruge double-variabler sikrer vi, at vores resultat kan være en decimalværdi, hvilket giver et mere præcist svar. Hvis vi kun arbejdede med heltalstyper, ville resultatet også være et heltal:
int + int => int
int + double => double
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters int t = 3; // Three hours // Without `double v` variable printf("Velocity = %d m/h", s/t); return 0; }
Det er vigtigt at bemærke, at det ikke er tilstrækkeligt blot at ændre formatangiveren for at rette en forkert heltalsdivision:
Main.c
12345678910#include <stdio.h> int main() { int s = 200; // In meters int t = 3; // Three hours printf("Velocity = %f m/h", s/t); // Changed specifier return 0; }
Der er dog en måde at opnå en korrekt division uden at introducere en ekstra variabel:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters double t = 3; // Three hours printf("Velocity = %f m/h", s/t); // Changed specificator return 0; }
For at en division skal give et decimalt resultat, skal mindst én af operanderne være af en decimaltype som double.
Modulo-operatoren
Operatoren % returnerer resten af en division. For eksempel:
Main.c
1234567891011#include <stdio.h> int main() { printf("Modulo 8 %% 5 = %d\n", 8 % 5); printf("Modulo 10 %% 3 = %d\n", 10 % 3); printf("Modulo 7 %% 5 = %d\n", 7 % 5); printf("Modulo 20 %% 5 = %d\n", 20 % 5); return 0; }
Hvis du forsøger at vise tegnet % i en streng (f.eks. i en printf-sætning), skal du bruge %% for at repræsentere et enkelt %. Dette fortæller compileren, at du ønsker at udskrive tegnet % og ikke bruge det som et format-specifikator.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat