gpt4 book ai didi

谁能告诉我为什么我的排序不起作用? (c代码)

转载 作者:行者123 更新时间:2023-11-30 21:47:55 25 4
gpt4 key购买 nike

我刚刚开始编程。我刚刚写了这段代码,但它不起作用。你能告诉我为什么吗?

代码=

int main(int argc, const char *argv[])
{
int a, b, c, d, e, f, g, h, i, j;
int s;

printf("enter 10 numbers: ");
scanf("%d%d%d%d%d%d%d%d%d%d", &a, &b, &c, &d, &e, &f, &g, &h, &i, &j);

int numbers[10] = {a, b, c, d, e, f, g, h, i, j};

//%d %d %d %d %d %d %d %d %d %d a, b, c, d, e, f, g, h, i, j
printf("before \n %d %d %d %d %d %d %d %d %d %d\n", a, b, c, d, e, f, g, h, i, j);

for (int k = 0; k == 10; k++) {
if (numbers[k] <= numbers[k + 1]) {
numbers[k] = s;
numbers[k] = numbers[k + 1];
numbers[k + 1] = s;

}
}

printf("after \n %d %d %d %d %d %d %d %d %d %d\n", numbers[0], numbers[1], numbers[2], numbers[3], numbers[4], numbers[5], numbers[6], numbers[7], numbers[8], numbers[9]);

return 0;
}

最佳答案

好吧,对于初学者来说,我很确定你的 scanf 函数的输入是错误的。第一个 '%d' 将吞噬字符串中的所有数字,因此变量 b、c、d、e、f、g、h、i 和 j 将未初始化。

此外,当 's' 尚未初始化为时,您正在执行 numbers[k] = s;numbers[k + 1] = s;任何东西。

关于谁能告诉我为什么我的排序不起作用? (c代码),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39033047/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com