写一个函数实现对输入10个字符按由小到大顺序排列.在主函数中调用该函数并输出排序后的结果
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了写一个函数实现对输入10个字符按由小到大顺序排列.在主函数中调用该函数并输出排序后的结果相关的知识,希望对你有一定的参考价值。
写一个函数实现对输入10个字符按由小到大顺序排列.在主函数中调用该函数并输出排序后的结果。
#include<stdio.h>
void sort(char c[],int n)
int i,j; char t;
for(i=0;i<n-1;i++)
for(j=0;j<n-1-i;j++)
if(c[j]>c[j+1])
t=c[j]; c[j]=c[j+1]; c[j+1]=t;
void main()
int i; char c[10];
printf("Please input 10 chars:\\n");
for(i=0;i<10;i++)
scanf("%c",&c[i]);
sort(c,10);
for(i=0;i<10;i++)
printf("%c",c[i]);
printf("\\n");
参考技术A #include<stdio.h>#define N 10
void fun(char *s,int n) int i,j; char c;
for ( i=0;i<n-1;i++ )
for ( j=i+1;j<n;j++ )
if ( s[i]>s[j] ) c=s[i];s[i]=s[j];s[j]=c;
void main() int i; str[256];
gets(str); fun(str,N); for ( i=0;i<N;i++ ) printf("%c ",str[i]); printf("\\n");
参考技术B public class QuickSort
public static void sort(int a[], int low, int hight)
int i, j, index;
if (low > hight)
return;
i = low;
j = hight;
index = a[i]; // 用子表的第一个记录做基准
while (i < j) // 从表的两端交替向中间扫描
while (i < j && a[j] >= index)
j--;
if (i < j)
a[i++] = a[j];// 用比基准小的记录替换低位记录
while (i < j && a[i] < index)
i++;
if (i < j) // 用比基准大的记录替换高位记录
a[j--] = a[i];
a[i] = index;// 将基准数值替换回 a[i]
sort(a, low, i - 1); // 对低子表进行递归排序
sort(a, i + 1, hight); // 对高子表进行递归排序
public static void quickSort(int a[])
sort(a, 0, a.length - 1);
public static void main(String[] args)
int a[] = 49, 38, 65, 97, 76, 13, 27, 49 ;
quickSort(a);
System.out.println(Arrays.toString(a));
//数组里面传多少个数都可以都可以帮你把数排序
写一个函数,用起泡法对输人的10个字符按由小到大顺序排列
写一个函数,用“起泡法”对输人的10个字符按由小到大顺序排列
题目解析:
该题主要是对冒泡排序的理解,外层循环控制排序的趟数,内层循环主要是进行每一趟排序的比较,如果前面的字符大于后面的字符,就进行交换,每做一趟排序,就把一个最大字符排在最后,以及每做一趟排序就需要少比较一个字符。
代码示例:
#include<stdio.h>
#include<string.h>
void BubbleSort(char str[])
{
int i, j;
char tmp;
int len = strlen(str);
for(i=0; i<len-1; ++i)
{
for(j=0; j<len-i-1; ++j)
{
if(str[j] > str[j+1])
{
tmp = str[j];
str[j] = str[j+1];
str[j+1] = tmp;
}
}
}
}
int main()
{
int i;
char str[11] = {0};
printf("请输入10个字符:>");
for(i=0; i<10; ++i)
scanf("%c", &str[i]);
BubbleSort(str);
printf("string sorted: %s
", str);
return 0;
}
运行结果:
以上是关于写一个函数实现对输入10个字符按由小到大顺序排列.在主函数中调用该函数并输出排序后的结果的主要内容,如果未能解决你的问题,请参考以下文章
写一个函数,使N个整数按由小到大的顺序排列,要求在主函数中输入10个数,并输出排好序的数
C语言:写一函数,用“冒泡法”对输入的10个字符按由小到大顺序排列