#3
by box » 8年前
つい さんが書きました:データが失われてしまいます
そうならないためにはどうしたらいいですか?
kがint型なのがおかしい。double型にすべき。
インデントがグッチャングッチャンで見づらい。修正すべき。
(注)-4 -0.19のくだりは、意をくんで直しておいた。
コード:
#include <stdio.h>
int main(void)
{
double x[] = {
-1, -0.49, 0, -3.1, -8, -3, -7.5, 0, -0.98, -4,
-3.21, -4, -0.19, -2.4, -3.1, -3.6, -8.5, -3.7, -1, -5.4
}, t;
int i, j, n = sizeof(x) / sizeof(x[0]);
for (i = 0; i < n - 1; i++) {
for (j = i + 1; j < n; j++) {
if (x[i] > x[j]) {
t = x[i], x[i] = x[j], x[j] = t;
}
}
}
for (i = 0; i < n; i++) {
printf("%f\n", x[i]);
}
return 0;
}
[quote="つい" id=3,19369,146470]データが失われてしまいます
そうならないためにはどうしたらいいですか?[/quote]
kがint型なのがおかしい。double型にすべき。
インデントがグッチャングッチャンで見づらい。修正すべき。
(注)-4 -0.19のくだりは、意をくんで直しておいた。
[code=C]
#include <stdio.h>
int main(void)
{
double x[] = {
-1, -0.49, 0, -3.1, -8, -3, -7.5, 0, -0.98, -4,
-3.21, -4, -0.19, -2.4, -3.1, -3.6, -8.5, -3.7, -1, -5.4
}, t;
int i, j, n = sizeof(x) / sizeof(x[0]);
for (i = 0; i < n - 1; i++) {
for (j = i + 1; j < n; j++) {
if (x[i] > x[j]) {
t = x[i], x[i] = x[j], x[j] = t;
}
}
}
for (i = 0; i < n; i++) {
printf("%f\n", x[i]);
}
return 0;
}
[/code]