好的,所以我有一个从用户那里获得的数组,然后我切换数组以降序显示数字(冒泡排序)。
现在我需要打印出新数组的第一个元素(第一个索引)和新数组的第二个索引。然后是两个最大数组的总和。 但我不知道为什么它不显示数字。这是代码:
#include <stdio.h>
int main()
{
int array[100], n, c, d, swap, sum;
printf("Enter number of horses\n");
scanf_s("%d", &n);
printf("Enter %d horse powers\n", n);
for (c = 0; c < n; c++)
scanf_s("%d", &array[c]);
//This switches the array to show descending order numbers
for (c = 0; c < (n - 1); c++)
{
for (d = 0; d < n - c - 1; d++)
{
if (array[d] < array[d + 1])
{
swap = array[d];
array[d] = array[d + 1];
array[d + 1] = swap;
}
}
}
printf("This is the new array descending:\n");
for (c = 0; c < n; c++){
printf("%d\n", array[c]);
}
//Help here
printf("Biggest number" + array[0]);
printf("Second biggest number" + array[1]);
sum = array[0] + array[1];
printf("Sum of two biggest numbers is: " + sum);
return 0;
}
答案 0 :(得分:1)
你还没有告诉大多数printfs期待一个争论。 e.g。
printf("Sum of two biggest numbers is: " + sum);
应该是
printf("Sum of two biggest numbers is: %d\n", sum);
答案 1 :(得分:0)
printf
接受争论。
你应该写的是
printf("Biggest number %d\n", array[0]);
printf("Second biggest number %d\n", array[1]);
printf("Sum of two biggest numbers is: %d\n", sum);