Попытка использовать в качестве базового C, насколько я могу, чтобы построить список чисел от 1 до 52 в случайном порядке (колода карт). Все работает, но все мои попытки соединить строки и получить результат заканчиваются неудачей. Какие-либо предложения? ПРИМЕЧАНИЕ: это не домашняя работа, это то, что я использую для создания игры.
// Locals
char result[200] = ""; // Result
int card[52]; // Array of cards
srand(time(0)); // Initialize seed "randomly"
// Build
for (int i=0; i<52; i++) {
card[i] = i; // fill the array in order
}
// Shuffle cards
for (int i=0; i<(52-1); i++) {
int r = i + (rand() % (52-i));
int temp = card[i]; card[i] = card[r]; card[r] = temp;
}
// Build result
for (int c=0; c<52; c++) {
// Build
sprintf(result, "%s%d", result, card[c]);
// Comma?
if ( c < 51 )
{
sprintf(result, "%s%s", result, ",");
}
}
Мой конечный результат всегда искаженный текст. Спасибо за помощь.