suivant: À propos de ce
Tableau:
Table des priorités des opérateurs C.
| Priorité |
Opérateur |
Description |
Exemple |
| 0 |
( ) |
appel de fonction, associativité |
|
| |
[ ] |
indexation |
| int tab[3]; |
| tab[0] = tab[1] = tab[2] = 0; |
|
| |
. |
nommage d'un champ |
obj.cdr = NULL; |
| |
-> |
nommage indirect de champ |
pt->cdr = NULL; |
| 1 |
! |
négation |
(!a) est vraie si a est fausse |
| |
~ |
complément à 1 |
a & ( a) = 0 |
| |
- |
opposé |
|
| |
++ |
incrémentation |
i++; ++i; |
| |
-- |
décrémentation |
i--; --i; |
| |
& |
adresse |
|
| |
* |
valeur indirecte |
*pt = 0; /* donne i = 0 */ |
| |
(type_de_donnée) |
force le type (cast) |
int i = (int)1.5; |
| |
sizeof |
taille en octets |
i = sizeof i; |
| 2 |
* |
Multiplication |
|
| |
/ |
Division |
|
| |
% |
Modulo |
|
| 3 |
+ |
Addition |
|
| |
- |
Soustraction |
|
| 4 |
<< |
Décalage à gauche |
|
| |
>> |
Décalage à droite |
|
| 5 |
< |
Strictement inférieur |
|
| |
<= |
Inférieur ou égal |
|
| |
> |
Strictement supérieur |
|
| |
>= |
Supérieur ou égal |
|
| 6 |
== |
Egal |
|
| |
!= |
Différent |
|
| 7 |
& |
``et'' binaire |
|
| 8 |
^ |
``ou'' exclusif binaire |
|
| 9 |
 |
``ou'' binaire |
|
| 10 |
&& |
``et'' logique |
|
| 11 |
 |
``ou'' logique |
|
| 12 |
?: |
conditionnelle |
c = (a < b) ? a : b; |
| 13 |
= *= /= %= |
Affectations |
|
| |
+= -= ^= &= |
|
|
| |
<<= >>= |= |
|
|
| 14 |
, |
Séquence |
|
|
#include <stdio.h>
int main(void) {
char c;
c = getchar();
if (c >= 'a' && c <= 'z')
printf("Majuscule de %c : %c\n",c , c - 'a' + 'A');
else if (c >= 'A' && c <= 'Z')
printf("Minuscule de %c : %c\n",c , c + 'a' - 'A');
else
printf("Inconnu !\n");
return 0;
}
|
|
#include <stdio.h>
int main(void) {
char c;
int etat = 1;
while(1) {
if (etat == 1) {
printf("\nEntrer des lettres quelconques -> ");
etat = 0;
}
c = getchar();
if (c == '\n') {
if(etat == 0) {
printf("Good bye !\n");
break;
}
etat = 1;
continue;
} else
etat = 2;
if (c >= 'a' && c <= 'z')
printf("Majuscule de %c : %c\n",c , c - 'a' + 'A');
else if (c >= 'A' && c <= 'Z')
printf("Minuscule de %c : %c\n",c , c + 'a' - 'A');
else
printf("Caractere non-alphabetique !\n");
}
return 0;
}
Conversion Majuscule-Minuscule.
|
|
Lire le man des fonctions vues en cours. Exemple :
$ man 3 printf
$ man scanf
...
Pour
obtenir la documentation du man, faire :
$ man
man
Devoir 03 :
a. Écrire un programme qui affiche les caractères
imprimables de la table ASCII à la manière de la commande man ascii.
b. Écrire, en utilisant la fonction scanf ou fgets, un programme qui transforme les minuscules d'une phrase en majuscules et vice-versa. Par exemple :
(Bonjour, il est 8h00)
(bONJOUR, IL EST 8H00)
Le programme demande à l'utilisateur d'entrer une phrase puis la convertit et l'affiche. Il recommence tant que l'utilisateur entre une chaîne non vide.
Dans l'exemple, vous remarquerez que les caractères non-alphabétiques n'ont pas été modifiés.
Faire attention aux entrées vides (ctrl-d).
suivant: À propos de ce
Fares Belhadj
2007-03-16