关于一个字母冒泡排序长度的问题

[复制链接]
查看11 | 回复2 | 2010-5-26 22:11:51 | 显示全部楼层 |阅读模式
这个是俺编的程序,但是它只能在输入长度超过50左右的时候才可以运行,否则是空;
我就是想要它可以在20个长度左右的时候就可以运行;可是如果把50 51,改成20,21的话,容量就少了,
所以我的提问的目的就是想知道如何可以让以后既可以输入20多字母也可以输入50个字母;且都可以输出结果
#include "stdio.h"
#include "math.h"
char fun(char str[])
{
int n,i,t;
for(n=1;nstr[i+1])
{
t=str;
str=str[i+1];
str[i+1]=t;
}
}
main()
{ int i;
char str[100];
gets(str);
fun(str);
puts(str);
getch();
}

回复

使用道具 举报

千问 | 2010-5-26 22:11:51 | 显示全部楼层
VC6.0和TC2.0调试通过,不限字符串长度(当然,你的数组要够大)。其实可以用string实现更方便。#include "stdio.h"#include "math.h"void fun(char str[]){
int n, i, t, k=1;
char * p;
p = str;
for(n=1; *(p + k) != '\0'; n++)
{
for(i=0; *(p + k)!='\0'; i++)
{
if(str>str[i+1])
{

回复

使用道具 举报

千问 | 2010-5-26 22:11:51 | 显示全部楼层
我只在您的程序上改动了一点,不知能否满足您的需要。仅供参考!#include "stdio.h"#include "math.h"#include "string.h"char fun(char str[],len){int n,i,t;for(n=1;n<=len;n++)
/*len为字符串长
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行