Bonjour a tous,
je souhaite que vous m'aider sur l'utilisation de goto en c.
voici mon code en pièce-jointe.
quand j'exécute mon code il y a une erreur qui dit que mon label n'est pas defini.

Mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <stdio.h>
#define pi 3.14
 
float buffer1,buffer2;
 
float surface(float r){
 
   buffer1= r*r*pi;
 
    return buffer1;
    }
float perimetre(float r){
 
 
     buffer2=r*2*pi;
     return buffer2;
 }
 
char continuer(char d){
 
    d=getchar();
    char B = '\a';
 
  if (d=='O' || d=='o'){
 
    goto buffer4;
 
    }
    else if (d=='N' || d=='n'){
 
     printf("Merci et a bientot");
    }
    else if  (d!='O' || d!='o' || d!='N' || d!='n'){
    putchar(B);
    printf("Erreur du choix de caractere\n ");  
    printf("Veuillez choisir le bon caractere");   
    goto etiquette;
    } 
}    
 
int main(){
 
    buffer4:  
    float ray,k;
    char w;
 
    printf("Bienvenue dans le monde des calculs:");
    printf("\n");
    printf("Veuillez Entrer le rayon du cercle pour calculer sa surface\n");
    printf("Ainsi que son perimetre:");
    scanf("%f",&ray);
    printf("La surface du cercle et son perimetre donne %f :",surface(ray));
    printf("\n");
    printf("la perimetre du cercle donne %f:",perimetre(ray));
    printf("\n");
    printf("tapez O si vous voulez faire un autre calcul\n:");
    printf("tapez N si vous voulez terminer le calcul:");
    etiquette:
    scanf("%s",w);
    printf("Voulez Vous effectuer un autre calcul?",continuer(w));
    printf("Merci de faire confiance et A Bientot!!!!!!!!!\n");
    scanf("%d",&k);
 
}