| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 412 人关注过本帖
标题:一个关于递归调用的程序请解说下
只看楼主 加入收藏
shooface
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-10-13
收藏
 问题点数:0 回复次数:0 
一个关于递归调用的程序请解说下
#include<stdio.h>
#include<string.h>
int main(){
char str[60];
int len, i, j, chr[26];
char mmin = 'z';
scanf("%s", str);
len = strlen(str);
for (i = len - 1; i >= 1; i--)
if (str[i - 1] < str[i]) break;
if (i == 0) {
printf("No result!\n");
return 0;
}
for (j = 0; j < i - 1; j++) putchar(str[j]);
memset(chr, 0, sizeof(chr));
for (j = i; j < len; j++) {
if (str[j] > str[i - 1] && str[j] < mmin)
mmin = str[j];
chr[str[j] - 'a']++;
}
chr[mmin - 'a']--;
chr[str[i - 1] - 'a']++;
putchar(mmin);
for(i = 0; i < 26; i++)
for(j = 0; j < chr[i]; j++)
putchar(i + 'a');
putchar('\n');
return 0;
}
输入:zzyzcccbbbaaa
输出:
搜索更多相关主题的帖子: 递归 解说 
2007-10-13 23:57
快速回复:一个关于递归调用的程序请解说下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014798 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved