J'essaie de calculer "2^0 + 2^1 + 2^2 + ... + 2^14", en utilisant le programme suivant (je suis un novice et ne peut calculer un exposant en se multipliant un certain temps). Le résultat devrait être 32767, mais je l'ai couru et obtenu 270.566.475, je pensais depuis longtemps, mais ne peut pas comprendre pourquoi ...Problème avec la boucle dans C
#include <stdio.h>
int main(void)
{
int i, e, exponent, sum;
e = 1;
exponent = 1;
sum = 1;
for (i = 1; i <=14; i++)
{
for (e = 1; e <= i; e++)
{
exponent *= 2;
}
sum += exponent;
}
printf("%d\n", sum);
return 0;
}
Alors, quel est le problème avec ce ??? Merci!!!
Vous ne devez pas utiliser la boucle interne comme il peut être fait avec la boucle extérieure seulement, comme une réponse ci-dessus par Marcelo ..... – Pushpendra
Oh, oui ~~ initialisation Merci beaucoup!! – asunnysunday