C语言数组七个数升序排列和降序排列怎么编程?

Python029

C语言数组七个数升序排列和降序排列怎么编程?,第1张

1、打开visual C++ 6.0-文件-新建-文件-C++ Source File。

2、定义数组变量:#include<stdio.h>main(){char a[100], b[100], c[200],  *pint i = 0, j = 0, k = 0。

3、输入字符串: printf("please input string a:\n")scanf("%s", a)                                 /*输入字符串1放入a数组中*/。

4、输入字符串:printf("please input string b:\n")scanf("%s", b)                                 /*输入字符串2放入b数组中*/。

5、给字符串进行排序。

6、链接字符串并输出:if (a[i] == '\0')                                    /*判断a中字符是否全都复制到c中*/

p = b + j                                  /*p指向数组b中未复制到c的位置*/。

7、输出最后的结果。

初学简单版本代码如下:

#include<stdio.h>

int main( )

{

int a, b, c//定义三个数的变量

int t //定义作为交换的变量

scanf ( "%d%d%d" , &a, &b, &c ) //取值

if ( a <b )

{t = aa = bb = t }//如果a,b,进行交换,反之不动

if ( a <c )

{t = aa = cc = t }//同上

if ( b <c )

{t = bb = cc = t }

printf( "%-5d%-5d%-5d\n" , a, b, c)//输出

}

扩展资料:

C语言中其他多个数排序的方法:

1、冒泡排序法

#include <stdio.h>

#define SIZE 8

void bubble_sort(int a[], int n)

void bubble_sort(int a[], int n)

{

int i, j, temp

for (j = 0j <n - 1j++)

for (i = 0i <n - 1 - ji++)

{

if(a[i] >a[i + 1])

{

temp = a[i]

a[i] = a[i + 1]

a[i + 1] = temp

} } }

int main()

{

int number[SIZE] = {95, 45, 15, 78, 84, 51, 24, 12}

int i

bubble_sort(number, SIZE)

for (i = 0i <SIZEi++)

{

printf("%d\n", number[i])

}

}

2、选择排序

#include<stdio.h>

void main()//主函数

{

int a[10]

int i,j,w

printf("请输入10个数字: \n")

for(i=0i<10i++)

scanf("%d",&a[i])

for(i=0i<10i++)

{

for(j=i+1j<10j++)

if(a[i]<a[j])//进行比较

//比较后进行交换

{

w=a[i]

a[i]=a[j]

a[j]=w

}

!!!!!!!!

!!!!!!!!

!!!!!!!!

注:c语言中可以将数组长度定义为变量,只是这种方法在vs中编译不能通过,但在更为标准的dev中以及gcc中完全可以编译通过!

一定要给分啊!自己写的!

#include"stdio.h"

#include"conio.h"

int

main()

{

int

length

printf("请输入要排序的数字个数:\n")

scanf("%d",&length)

int

data[length],i

void

mbquicksort(int

*imput,int

start,int

end)

printf("请依次输入这些数字,以空格分隔:\n")

for(i=0i

=x))++start

imput[end]=imput[start]

}

imput[start]=x

mbquicksort(imput,start,start-1)

mbquicksort(imput,start+1,end)

}

}