Variables, types, and arithmetic · Variables, types et arithmétique
Every value has a type
- In C, every variable has a type that says what kind of value it holds.
- The three you use most:
int(a whole number),double(a number with a decimal point), andchar(a single character). - You must give the type when you create the variable:
int n = 5;ordouble pi = 3.14;.
Chaque valeur a un type
- En C, chaque variable possède un type qui indique la nature de la valeur qu'elle contient.
- Les trois que vous utilisez le plus :
int(un nombre entier),double(un nombre à virgule) etchar(un caractère unique). - Vous devez spécifier le type lors de la création de la variable :
int n = 5;oudouble pi = 3.14;.
Doing arithmetic
- C does math with
+,-,*, and/, just like a calculator. *and/happen before+and-. Use brackets( )to change the order.- The
%operator gives the remainder of a division:17 % 5is2.
Effectuer des calculs arithmétiques
- Le C effectue des mathématiques avec
+,-,*et/, tout comme une calculatrice. *et/sont exécutés avant+et-. Utilisez des parenthèses( )pour modifier l'ordre.- L'opérateur
%donne le reste d'une division :17 % 5est2.
Integers divide differently
- When you divide two
ints, C throws away the fraction:7 / 2is3, not3.5. - To keep the fraction, at least one side must be a
double.7 / 2.0is3.5. - You can cast an
intto adoublewith(double):(double)sum / count.
La division entière fonctionne différemment
- Lorsque vous divisez deux
int, le C ignore la fraction :7 / 2est3, pas3.5. - Pour conserver la fraction, au moins un côté doit être un
double.7 / 2.0est3.5. - Vous pouvez convertir un
intendoubleavec(double):(double)sum / count.
Reading input
scanfreads typed input into a variable.scanf("%d", &n);reads oneintinton.- Note the
&beforen:scanfneeds the address of the variable so it can fill it in. - In this playground, Run first asks you for the input, one value per line; Check answer feeds the example input for you.
Lire les entrées
scanflit une saisie tapée dans une variable.scanf("%d", &n);lit unintdansn.- Notez le
&avantn:scanfnécessite l'adresse de la variable pour pouvoir la remplir. - Dans cet espace de jeu, Exécuter vous demande d'abord l'entrée, une valeur par ligne ; Vérifier la réponse fournit l'exemple d'entrée pour vous.
#include <stdio.h>
int main(void) {
int a = 7, b = 2;
printf("%d\n", a / b); // 3 (integer division)
printf("%.1f\n", a / 2.0); // 3.5 (one side is a double)
printf("%d\n", a % b); // 1 (remainder)
return 0;
}
Common mistakes
- Declare a variable with its type:
int n;. - Integer division truncates:
7 / 2is3, not3.5.
Erreurs courantes
- Déclarez une variable avec son type :
int n;. - La division entière tronque :
7 / 2est3, pas3.5.
Now you try
- Use
/and%for whole-number math, and adouble(or a cast) when you need a fraction. - For the function tasks, do not write a
main— the checker provides one. - Press Run to compile and run, then Check answer.
À vous maintenant
- Utilisez
/et%pour des mathématiques entières, et undouble(ou une conversion) lorsque vous avez besoin d'une fraction. - Pour les tâches de fonction, n'écrivez pas de
main— le vérificateur en fournit une. - Appuyez sur Exécuter pour compiler et exécuter, puis sur Vérifier la réponse.
Variables hold a value · Les variables contiennent une valeur
A variable is a named box of a fixed type; assigning replaces it. · Une variable est une boîte nommée de type fixe ; l'affectation la remplace.
Read one integer n with scanf. A box holds 6 items. Print two lines exactly: Full boxes: then the value of n / 6, and Left over: then the value of n % 6. · Lisez un entier n avec scanf. Une boîte contient 6 éléments. Imprimez deux lignes exactement : Full boxes: puis la valeur de n / 6, et Left over: puis la valeur de n % 6.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Complete double average3(int a, int b, int c) so it returns the average of the three as a double. Watch out for integer division — divide by 3.0, not 3. Do not · non write a main. · Complétez double average3(int a, int b, int c) pour qu'elle retourne la moyenne des trois comme double. Attention à la division entière — divisez par 3.0, pas par 3. N'écrivez pas de main.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Write double hyp(double a, double b) that returns the hypotenuse length: the square root of a*a + b*b. Use sqrt from <math.h>. Do not · non write a main. · Écrivez double hyp(double a, double b) qui retourne la longueur de l'hypoténuse : la racine carrée de a*a + b*b. Utilisez sqrt depuis <math.h>. Ne pas écrire de main.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.