Voici le lien vers le problème. http://www.spoj.com/problems/TOANDFRO/ Et voici le lien vers mon code http://ideone.com/w5wafl Sur le bloc de code, il dit l'exception de virgule flottante. Voici le lien vers le codepad http://codepad.org/FW9bKp5k (enlever le pavé de code de l'espace bw) pourquoi est-ce qu'il donne une erreur d'exécution. est-ce à cause d'une erreur dans les chaînes ou le tableau. Je mets le code ici.Erreur d'exécution dans C dans spoj toandfro classique
#include <stdio.h>
#include <string.h>
int main(void)
{
int width_of_array, length_of_array, i,j , k;
k = 0;
char input_array[300], answer[300][300];
scanf("%d", &width_of_array);
scanf("%s", input_array);
length_of_array = strlen(input_array)/width_of_array;
for (i = 0 ; i < length_of_array ; i++)
{
if (i % 2 == 0)
{
for (j = 0 ; j < width_of_array ; j++)
{
answer[i][j] = input_array[k++];
}
}
else
{
for (j = width_of_array - 1 ; j >= 0 ; j--)
{
answer[i][j] = input_array[k++];
}
}
}
for (j = 0 ; j < width_of_array ; j++)
{
for (i = 0 ; i < length_of_array ; i++)
{
printf("%c", answer[i][j]);
}
}
return 0;
}
Vous ne vérifiez jamais la valeur de retour de 'scanf()', la valeur de 'width_of_array' pourrait être' 0' ou quoi que ce soit, il n'y a aucun moyen de savoir si vous confirmez que 'scanf()' renvoie '1'. –
Dans aucun de vos tests, vous ne donnez aucune entrée et attendez une sortie. Comment cela va-t-il vous donner un résultat correct sans se connecter? – ameyCU
@ iharob Désolé.Ma faute. Se sentir comme un idiot maintenant. Je suis un peu nouveau en programmation compétitive. Aurait dû vérifier avant. –