【发布时间】:2013-04-15 23:30:30
【问题描述】:
所以,我想要求用户输入一个单词,然后程序会反转它。这是我的代码,但无法正常运行。怎么了?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char anadr(int, int, char pin[]);
main()
{
char pin[100];
int l;
int i=0;
char res;
printf("Give word: ");
scanf("%s", pin);
l=strlen(pin);
res=anadr(i,l,pin);
system("pause");
}
char anadr(int i, int l, char pin[])
{
if(i<l)
anadr(i++,l,pin);
printf("%c", pin[i]);
}
【问题讨论】:
-
到底是什么问题?我还建议在您的
main中使用return 0。 -
另外,你的 anadr 函数应该是 void 而不是 charas 它不返回任何东西。
-
程序崩溃了。如果我猜对了,那么问题就在那里: if(i
-
你是对的。我将它从 char 调整为 void 但仍然没有。
-
此代码也不会反转字符串。但是,它会在反向 printing 字符串时很好地失败。那么你真正想要做什么呢?打印反了?反转吗?两者都有?