我不说话丶写代码丶 有错。。求解。。。
/*1丶已知有十个数丶存在a数组中,求出千位数的数加上百位数的数等于十位数的数,把满足此条件的数存入b数组中,把存入b数组中的数按从小到大的顺序排列:
*/
#include <stdio.h>
void main()
{
int i,j,k;
int temp;
int b[10];
int a[10]={1230,4560,7894,5421,4878,4230,4575,8744,7892,5679};
int qw,bw,sw;
for (i=0;i<=9;i++)
{
qw=a[i]/1000;
bw=a[i]%1000/100;
sw=a[i]%1000%100/10;
if (qw+bw==sw)
{
b[i]=a[i];
}
}
for (i=0;i<=9;i++)
{
k = i;
for (j=i+1;j<=9;j++)
{
if (b[k]>b[j])
k = j;
}
if (k!=i)
{
temp=b[i];b[i]=b[k];b[k]=temp;
}
}
for (i=0;i<=9;i++)
{
printf("%d ",b[i]);
}
}
结果丶输出的答案非常匪夷所思。 求解啊 。。