长整型 10100 -123567 1198783 3456 -165654 通过冒泡法 如何排序?

来源:百度知道 编辑:UC知道 时间:2024/06/23 03:53:18
最后答案是 -123567 -165654 10100 3456 1198783
我要的不是代码= = 我想问这个结果是怎么出来的 应该是冒泡法升序 但是我不知道结果怎么出来的

最后答案里的数字是按什么顺序排列的?
既不是升序,也不是降序

字符串比较.
#include<stdio.h>
#include<stdlib.h>

void main(void)
{
char a[5][20]={"10100", "-123567", "1198783", "3456", "-165654"};
char tmp[20];
int i,j;
for (i=0;i<4;i++)
for (j=i+1;j<5;j++){
if (strcmp(a[i],a[j]) > 0){
strcpy(tmp,a[i]);strcpy(a[i],a[j]);strcpy(a[j],tmp);
}
}
for (i=0;i<5;i++){printf("%s ",a[i]);};
}

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 10 //定义数组长度
main()
{
long a[N],i,j=0,t;
printf("请输入一组长整型数\n");
for(i=0;i<N;i++)
scanf("%ld",&a[i]);
printf("排序后为\n");
for(i=0;i<N;i++)
for(j=0;j<N-i-1;j++)
if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
for(i=0;i<N;i++)
printf("%ld