CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

la ses de la faute du livre ...

lord_kalipsy
lord_kalipsy
Niveau 10
24 août 2003 à 22:29:10

voici mon code ( que jai recopier du livre que jai acheter pour aprendre le c note que ce qui est ecrit dans les printf est un peu differen je voulai le racourcir un peu . .. mai le code est le meme

  1. include < stdio.h>

main()
{

int day;

printf ( "tapez un nummero de jour\n");
printf ( "de 1 a 7 \n");

day = getchar();
switch ( day){
case ´1´:
printf ( "jour 1 \n");
break;
case ´2´:
printf ( "jour 2 \n");
break;
case ´3´:
printf ( "jour 3 \n");
break;
case ´4´:
printf ( "jour 4 \n");
break;
case ´5´:
printf ( "jour 5 \n");
break;
case ´6´:
printf ( "jour 6 \n");
break;
case ´7´:
printf ( "jour 7 \n");
break;
default:
printf ( "doi etere compri de 1 A 7 \n");
break;
}
getchar();
return 0;
}

sa devrai faire sa a lecran :
tapez un nummero de jour
de 1 a 7
2
jour 2

mai la seul chose que sa fai :
sa devrai faire sa a lecran :
tapez un nummero de jour
de 1 a 7
2

( je peu taper 123345 peu import il ne swe pase rien pas de : jour 2

jai eseyer avec dev et visual c++

je ni comprend rien svp si vous i comprener de koi expliquer moi . .. :(

lord_kalipsy
lord_kalipsy
Niveau 10
24 août 2003 à 23:01:08

:up:

lord_kalipsy
lord_kalipsy
Niveau 10
24 août 2003 à 23:44:04

laisser faire . ..

voici mon nouveau code :

  1. include < stdio.h>
  2. include < stdlib.h>
  3. include < string.h>

int main(void)
{
printf( " Bienvenue dans l´univers de Krumland ! \n\n");
printf( " choiser votre race : Archer(A) , Soldat(S) , Mage(M) \n");

char ch[1];
int ch2;
ch[1] = ch2;
int choosechar;
int classe;
char * class_name;
gets ( ch);

switch ( ch2) {
case ´A´:
case ´a´:
classe = 1;
class_name = " archer";
break;

case ´S´:
case ´s´:
classe = 2;
class_name = " soldat";
break;

case ´M´:
case ´m´:
classe = 3;
class_name = " mage";
break;

default:
printf ( " Vous devez presser un des characteres suivant : A , a , S , s , M , m" ) ;
break;
}

printf ( " Votre race est %c" , class_name);

getchar();
return 0;
}

tou marche bien sauf ke je ne peu pas afficher le class name a la fin :( :
printf ( " Votre race est %c" , class_name);

si vou saver commen merci davance

Kelios
Kelios
Niveau 8
25 août 2003 à 01:12:43

D´abord et avant tout, c´est une chaîne de caractères, donc ça doit s´écrir comme ceci:
class_name = " mage\0";
À la fin, il doit y avoir le \0 pour pouvoir ensuite l´écrire à l´écran.

Ensuite, c´est :
printf ( " Votre race est %s" , class_name);
pas %c, mais %s: tu veux en effet écrire une chaîne de caractères je pense. Voilou.

Kelios
---------

lord_kalipsy
lord_kalipsy
Niveau 10
25 août 2003 à 01:29:08

merci mais pourquoi kan j´ecrit ´a´ e bien sa fait default ? c bizar

Kelios
Kelios
Niveau 8
25 août 2003 à 02:14:26

Non, c´est que tu t´es gourré là:
"
gets ( ch);

switch ( ch2) {
"
Tu demande la lettre dans la variable ch, puis tu évalue ch2... C´est complêtement con, non? Ça serait ch que tu devrais évaluer....

AUTRE CHOSE:
Hyper dangereux! Tu fais une déférenciation hors de portée du buffer!
"
char ch[1];
int ch2;
ch[1] = ch2;
"
Hors les tableaux se déférencent à partir de 0, pas de 1!
Et en plus, ça ne set rien , ça! Qu´essayais-tu de faire comme ça?
En plus, tu n,as pas choisi une solution facile: c,est plus simple de n´utiliser que un char, plutot qu´une chaîne de caractères dans ce cas...

Voici comment je l´écrirais, avec des chaînes, comme tu l´as fait:

  1. include < stdio.h>
  2. include < stdlib.h>
  3. include < string.h>

int main(void)
{
printf( " Bienvenue dans l´univers de Krumland ! \n\n choisissez votre race : Archer(A) , Soldat(S) , Mage(M) \n");

char ch[2] = {NULL,NULL};
int choosechar;
int classe;
char * class_name;
gets ( ch);

switch ( ch[0]) {
case ´A´:
case ´a´:
classe = 1;
class_name = " archer\0";
break;

case ´S´:
case ´s´:
classe = 2;
class_name = " soldat\0";
break;

case ´M´:
case ´m´:
classe = 3;
class_name = " mage\0";
break;

default:
printf ( " Vous devez presser un des characteres suivant : A , a , S , s , M , m" ) ;
break;
}

printf ( " Votre race est %s" , class_name);

getchar();
return 0;
}

Kelios
---------

lord_kalipsy
lord_kalipsy
Niveau 10
25 août 2003 à 02:25:10

merci mai vous vous utilizer quel compilateur ?

lord_kalipsy
lord_kalipsy
Niveau 10
25 août 2003 à 14:35:32

voici mon code ( que jai recopier du livre que jai acheter pour aprendre le c note que ce qui est ecrit dans les printf est un peu differen je voulai le racourcir un peu . . . mai le code est le meme

  1. include < stdio.h>

main()
{

int day;

printf ( " tapez un nummero de jour\n");
printf ( " de 1 a 7 \n");

day = getchar();
switch ( day){
case ´1´:
printf ( " jour 1 \n");
break;
case ´2´:
printf ( " jour 2 \n");
break;
case ´3´:
printf ( " jour 3 \n");
break;
case ´4´:
printf ( " jour 4 \n");
break;
case ´5´:
printf ( " jour 5 \n");
break;
case ´6´:
printf ( " jour 6 \n");
break;
case ´7´:
printf ( " jour 7 \n");
break;
default:
printf ( " doi etere compri de 1 A 7 \n");
break;
}
getchar();
return 0;
}

sa devrai faire sa a lecran :
tapez un nummero de jour
de 1 a 7
2
jour 2

mai la seul chose que sa fai :
sa devrai faire sa a lecran :
tapez un nummero de jour
de 1 a 7
2

( je peu taper 123345 peu import il ne swe pase rien pas de : jour 2

jai eseyer avec dev et visual c++

je ni comprend rien svp si vous i comprener de quoi expliquer moi .

lord_kalipsy
lord_kalipsy
Niveau 10
25 août 2003 à 15:21:54

SA MARCHE WHOUUUUUUUUU!! merci de mavoir aider

nb : merci Kelios pour ta patience et pour ne pas m´avoir traiter de con :)

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment