Programme c max

Bonjour,
g un probleme pour compiler se programe qui determine le max de 3 nombres reels, mais g un probleme aparament , esque quelqu'un pourai me dire ou se trouve la faute , je sais que c un truc d'acolade , mais je trouve , merci pour l'aide :

#include<stdio.h>
void main()
{
float a,b,c,max;
printf("entrez les valeur de a , b et c");
printf("\n a= ");
scanf("%f",&a);
printf("\n b= ");
scanf("%f",&b);
printf("\n c= ");
scanf("%f",&c);
if(a>b)
{ if(b>c)
max=a;
printf("max=%f",a);

else max=a;
printf("max=%f",a);
{
else
if(a>c)
{ max=b
printf("max=%f",b); }
{ else max=b;
printf("max=%f",b);
}
if(c>a)
{ if(b>a)
max=c;
printf("max=%f",c);
else max=c;
printf("max=%f",c);
}}}
Configuration: Windows XP sp2
Internet Explorer 6.0

7 réponses

  1. c'est un probleme d'accollade que tu as
    essaye ça
    #include<stdio.h>
    
    void main()
    {
    	float a,b,c,max;
    
    	printf("entrez les valeur de a , b et c");
    	printf("\n a= ");
    	scanf("%f",&a);
    	printf("\n b= ");
    	scanf("%f",&b);
    	printf("\n c= ");
    	scanf("%f",&c);
    	if(a>b)
    	{
    		if(b>c)
    		{
    			max=a;
                                 printf("max=%f",a);                      
                         }
                else
                    {
                        if(a>c)
                        {
                            max=a;
                            printf("max=%f",a);
                        }
                            else
                            {
                                max=c;
                                printf("max=%f",c);
                            }
                    }
    	}
                else
                {
                    if(b>c)
                    {
                        max=b;
                        printf("max=%f",b);
                    }
                        else
                        {
                            max=c;
                            printf("max=%f",c);
                        }
                }
    }
    
    

    mais tu te complique la vie on peut reduire les lignes de code par deux et plus le code est court plus on evite les erreurs...
    1. je sais je sais ,je lé laisser comme il est , g fait certaine rectification , il c arrété a une faute ,
      1. non, mais tu vois que l'accolade ligne 26 par exemple n'as aucune raison ....
        1. sa marche pas , je sais pas , j'y arrive pas ,g beau changer de paranthese mais rien , ! aidez moi svp
          1. bonsoir,
            voilà ton code,

            tu comprends qu'il ne peux pas marché (je n'ai rien rajouté, ni rien retiré, juste tabulé, et aller a la ligne...

            #include<stdio.h>
            
            void main()
            {
            	float a,b,c,max;
            	
            	printf("entrez les valeur de a , b et c");
            	printf("\n a= ");
            	scanf("%f",&a);
            	printf("\n b= ");
            	scanf("%f",&b);
            	printf("\n c= ");
            	scanf("%f",&c);
            	if(a>b)
            	{
            		if(b>c)
            			max=a;
            			
            		printf("max=%f",a);
            
            		else
            			max=a;
            			
            		printf("max=%f",a);
            		
            		{
            			else
            				if(a>c)
            				{
            					max=b
            					printf("max=%f",b);
            				}
            				
            			{
            				else
            					max=b;
            				printf("max=%f",b);
            			}
            			
            			if(c>a)
            			{
            				if(b>a)
            				max=c;
            				printf("max=%f",c);
            				
            				else
            					max=c;
            					
            				printf("max=%f",c);
            			}
            		}
            	}


            déjà ton main est pas fermé...
            1. j'ai esseyer de metre des parentheses dans chaque if mais sa marche pas ,esque quelqu'un pourai m'aider
              1. tes if sont pas très bien structurés...

                un petit truc, même si un if ne possède qu'une seule instruction, met quand même des parenthèses, ça évite les erreurs

                il y a tellement de if et de else sans parenthèses dans ton code que je peux pas vraiment comprendre ta logique.

                Met des parenthèses et tu y verras plus clair.
                Si tu ne vois toujours pas, repost ton code ici.