Je suis un débutant à Xcode et j'apprends C en utilisant l'outil de ligne de commande. Souvent, lorsque j'écris un programme et que j'entre une entrée, le code ne s'exécute pas la première fois que je l'entre, mais une fois que cette première entrée est ignorée, le code s'exécute exactement comme prévu. Je me demandais juste pourquoi c'est ça? Est-ce que je fais quelque chose de mal quand j'écris mon code ou est-ce juste quelque chose qui arrive dans Xcode?Lorsque j'entre une entrée en utilisant l'outil de ligne de commande dans Xcode, le code l'ignore la première fois que je l'entre. Pourquoi est-ce et est-il un moyen de l'éviter?
Exemple de code dans lequel cela se produit (c'est quelque chose que j'ai dû faire pour l'université.) Il lit une entrée "celsius = [quelque chose]" et affiche un graphique montrant la conversion de celsius en fahrenheit et fait des commentaires dessus):
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int start;
int celsius;
float fahrenheit;
scanf("celsius=%d\n", &start);
if(start<0||start>100)
{
printf("The value entered should be in the right range\n");
}
else
{
printf("Celsius | Fahrenheit | comment\n");
printf("------------------------------\n");
for(celsius=start;celsius<=100;celsius=celsius+20)
{
fahrenheit=celsius*(9.0/5.0)+32;
printf(" %d | %.2f |", celsius, fahrenheit);
if(fahrenheit==32.0)
{
printf(" Freezing point\n");
}
else if(fahrenheit>=64.0&&fahrenheit<=77.0)
{
printf(" Room temperature\n");
}
else if(fahrenheit>=122.0&&fahrenheit<=176.0)
{
printf(" Hot bath\n");
}
else if(fahrenheit==212.0)
{
printf(" Water boils\n");
}
else
{
printf("\n");
}
}
}
return 0;
}