| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4136 人关注过本帖
标题:[求助]大一考试题
只看楼主 加入收藏
季节的开始
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2006-4-7
收藏
得分:0 
why?.我当然知道我的写出会逆向输出

难道你就不会在主函数 把data的实参调一下吗?

如 输入 123 调换成 321

然后再调用递归..既然他是考试.我想我没必要把全部过程写出吧

This is me~!
2006-06-28 14:31
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-06-28 14:43
季节的开始
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2006-4-7
收藏
得分:0 
以下是引用穆扬在2006-6-28 14:43:29的发言:

不错!
我有几个想法:
1.考虑负数(题目没说是正整数)
2.data==0 不太严密,如果输入的是0呢
3.题外话:如果"烟雨生平"或者"林锐"写
函数原型大概是
char *sort(int,char *)或者
char *sort(char *,int)
我在想他们会如何处理

考虑负数只需要在主函数加个判断即可.
考虑0也只需要在主函数加个if即可.
所以.我没有写主函数.这事应该留给楼主.我只是写出递归的函数.
而我本人更倾向于 sprintf

你的最后一个.我不发表言论


This is me~!
2006-06-28 14:47
dragonfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:1024
专家分:0
注 册:2006-3-20
收藏
得分:0 

char * sort( long k)
{
if(k<10)
return 48+k
else
return 48+k%10 + sort(k/10)

}

字符串怎么相加忘了


2006-06-28 15:00
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

static void convert_string(char *buf, int integral);

int main(void)
{
char buf[BUFSIZ];
int integral, i, signal_flag;

printf("Enter integral: ");
scanf("%d", &integral);

if (integral < 0)
{
signal_flag = 1;
integral = -integral;
}

convert_string(buf, integral);

if (signal_flag == 1)
{
printf("%c", '-');
}

for (i = strlen(buf) - 1; i >= 0; i--)
{
printf("%c", buf[i]);
}
printf("\n");

exit(0);
}

static void convert_string(char *buf, int integral)
{
if (integral)
{
*buf = integral % 10 + '0';
convert_string(++buf, integral /= 10);
}
else
{
*buf = '\0';
}
}



日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-06-28 15:04
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-06-28 15:23
季节的开始
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2006-4-7
收藏
得分:0 
以下是引用穆扬在2006-6-28 15:23:41的发言:

上帝的交给上帝
魔鬼的还给魔鬼

我认为每个函数都应该作自己该做的事情,不多也不少

光说不练.必自毙,避,痹,鄙,弊?


This is me~!
2006-06-28 15:30
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-06-28 15:33
灼光
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-12
收藏
得分:0 
是挺巧的
但俺还是没有看懂。
能不能解释一下?
谢谢了!!

2006-06-28 18:19
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 

//方案一
#include<stdio.h>
void zh(int);
main()
{
int m;
scanf("%d",&m);
zh(m);
printf("\n");
}
void zh(int m)
{
if(m>=10)zh(m/10);
putchar(m%10+'0');
}

//方案二
#include<stdio.h>
char* zh(__int64);
main()
{
__int64 m;
scanf("%I64d",&m);
puts(zh(m));
}
char* zh(__int64 m)
{
static char str[20],*p=str;
if(m){zh(m/10);*p++=m%10+'0';}
return str;
}


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-28 18:31
快速回复:[求助]大一考试题
数据加载中...
 
   



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

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