【发布时间】:2011-01-27 11:54:19
【问题描述】:
#include<stdio.h>
#include<conio.h>
#include<string.h>
main(){
char *c;
char *y;
int len=strlen(c);
int i,k=0,j,m=0,t;
clrscr();
printf("Enter the string :");
gets(c);
printf("%s",c);
for(i=0;i<=len;i++)
{
if(c[i]==' '|| c[i]=='\0')
{
for(j=i-1;j>=m;j--)
{
y[k]=c[j];
k++;
}
y[k]=' ';
m=k;
k++;
}
}
y[len]='\0';
for(i=0;i<len;i++)
printf("%c",y[i]);
getch();
}
这个程序是为了反转我尝试了很长时间的字符串中的单词。我认为我写的逻辑是正确的,我每次都得到不同的输出.. 有时先前执行的输出将附加到下一个输出中。 谁能告诉我哪里错了
有时我会得到正确的输出,但缺少一个字母。
当我直接打印时我要添加的另一件事“y作为一个数组它即将到来,如果我试图作为指针给出它不会到来 我的意思是
printf("%s",y); //输出不正确
for(i=0;i
我想知道确切的区别
【问题讨论】:
-
不仅代码没有格式化,甚至还包含注释掉的行,使其难以阅读。
-
我想知道为什么教育机构仍在使用 Turbo C(
conio、clrscr和getch是一个死的赠品)什么时候可以得到GCC免费。哎呀,你甚至可以免费获得 MSVC。 -
对不起,我......将在下一篇文章中看到格式正确的代码
-
@paxdiablo:: 似乎主要是印度次大陆的大学 - 他们仍然使用 Turbo C 和一些非常糟糕且过时的书籍,例如Kanetkar(“让我们 C”等)。
-
@satheesh,你的赞成票也为零。您可以在这里感谢与您分享知识的人的唯一方法是在特定答案对您有所帮助时对他们的未回答进行投票并接受他们。当您寻求帮助时,请考虑社区。span>
标签: c