将输入的n个整数按照从小到大排序输出,并输出其中所有奇数之和。用c语言
时间: 2023-06-14 14:05:43 浏览: 93
以下是一个简单的C语言程序,用于读取n个整数,将它们按升序排列,并计算奇数之和。
```c
#include <stdio.h>
int main()
{
int n, i, j;
int a[100], temp, sum = 0;
printf("请输入整数的个数:");
scanf("%d", &n);
printf("请输入这%d个整数:", n);
for (i = 0; i < n; i++)
{
scanf("%d", &a[i]);
}
// 插入排序,将数组a升序排列
for (i = 1; i < n; i++)
{
temp = a[i];
j = i - 1;
while (j >= 0 && a[j] > temp)
{
a[j + 1] = a[j];
j--;
}
a[j + 1] = temp;
}
// 计算奇数之和
for (i = 0; i < n; i++)
{
if (a[i] % 2 != 0)
{
sum += a[i];
}
}
// 输出升序排列后的整数及奇数之和
printf("升序排列后的整数为:");
for (i = 0; i < n; i++)
{
printf("%d ", a[i]);
}
printf("\n奇数之和为:%d\n", sum);
return 0;
}
```
这个程序使用插入排序算法将输入的整数升序排列,并计算奇数之和。注意,程序中的数组a的大小为100,因此输入的整数个数不能超过100。