C语言取出一个十进制正整数中的所有奇数数字,用这些数字构成一个最小数
#include<stdio.h>
int main(){
int a[11] = { 1,5,8,9,25,26,31,35,56,64 };
int m,end,temp1,temp2;
int i, j;
printf("请输入要插入的数:");
scanf_s("%d", &m);
end = a[9];
if (m >= end) {
a[10] = m;
}
else {
for (i = 0; i < 10; i++) {
if (a[i] > m) {
temp1 = a[i];
a[i] = m;
for (j = i + 1; j < 11; j++) {
temp2 = a[j];
a[j] = temp1;
temp1 = temp2;
}
break;
}
}
}
printf("新的数组为:");
for (i = 0; i < 11; i++) {
printf("%-3d", a[i]);
}
return 0;
}
供参考!
#include<stdio.h>
int main(void)
{
unsigned a, b, arr[20] = { 0 }, i = 0;
scanf("%u", &a);
while (a)
{
if ((b = a % 10) % 2 != 0)
arr[i++] = b;
a /= 10;
}
unsigned t;
for (int j = 0; j < i - 1; j++)
{
for (int k = 0; k < i - j - 1; k++)
{
if (arr[k] > arr[k + 1])
{
t = arr[k];
arr[k] = arr[k + 1];
arr[k + 1] = t;
}
}
}
for (int j = 0; j < i; j++)
printf("%d", arr[j]);
puts("");
return 0;
}