当前位置: 代码迷 >> C语言 >> [求助]怎么排序呀
  详细解决方案

[求助]怎么排序呀

热度:137   发布时间:2007-09-17 19:19:03.0
[求助]怎么排序呀

/*题目要求输入任意字符串不能超过20字节,超过20就要报错。然后在转换成大小写,最后按照ASCII码排序。
前面的要求都实现了,就是不知道怎么排序了,所以在此请教下。*/

#include<stdio.h>
#include <string.h>
#include <ctype.h>
#define N 30
void main()
{
char arr[N];
int i =0,lens,temp;
printf("请输入一个字符串不能超过20字节:");
fflush(stdin);
gets(arr);
lens = strlen(arr);
while(lens > 20)
{
printf("\n您输入的字符超过了20个字符!\n");
printf("请输入一个小于20的字符串:");
fflush(stdin);
gets(arr);
lens = strlen(arr);
}
printf("转换为大写后为:");
for(i=0;i < lens;i++)
{
printf("%c",toupper(arr[i]));
}
printf("\n");
if(arr[i] > arr[i+1])
{
temp = arr[i+1];
arr[i+1] = arr[i];
arr[i] = temp;
}
printf("\n");
}

[此贴子已经被作者于2007-9-17 19:19:22编辑过]

搜索更多相关的解决方案: include  字符串  

----------------解决方案--------------------------------------------------------
排序直接比较就可以了,字符也是整形,不过只占一个字节而已,所以......
----------------解决方案--------------------------------------------------------


#include <stdio.h>
#define N 5
void main()
{
char i,temp,a[N] = {'w','t','d','h','s'};
if(a[i] > a[i+1])
{
temp = a[i+1];
a[i+1] = a[i];
a[i] = temp;
}
printf("%c\n",a[N]);
}
/*我自己试的排序但是不知道问题在哪*/


----------------解决方案--------------------------------------------------------
  相关解决方案