请编写一个函数fun(char *s),该函数的功能是把字符串中的内容逆置。 30

#include<string.h>#include<conio.h>#include<stdio.h>#defineN81voidfun(char*s){}main()... #include <string.h>
#include <conio.h>
#include <stdio.h>
#define N 81
void fun(char*s)
{
}
main()
{
char a[N];
FILE *out;
printf("Enter a string:");
gets(a);
printf("The original string is:");
puts(a);
fun(a);
printf("\n");
printf("The string after modified:");
puts(a);
strcpy(a,"Hello World!");
fun(a);
/******************************/
out=fopen("out.dat","w");
fprintf(out,"%s",a);
fclose(out);
/******************************/
}
我编写的函数如下为什么执行不了呢?
int i,j=0;
char *p=s;
for(i=0;p[i]!='\0';i++);
while(i!=0)
{s[j++]=p[i];
i--;}
s[j]='\0';
求详解啊!!
展开
 我来答
百度网友afe2647
推荐于2016-03-12 · TA获得超过563个赞
知道小有建树答主
回答量:259
采纳率:100%
帮助的人:142万
展开全部
我可以帮你解决,我想要你的悬赏,可以不?
char *p=s;
for(i=0;p[i]!='\0';i++);
这个地方改下,看你想要用指针还是用数组。
更多追问追答
追问
用指针怎么用,就是我编得的那个怎么改就对了啊
追答
你可以定另外一个数组,将传递过来的数组复制到你定义的数组,然后逆序输出。也可以用指针形式,定义P[N],将a[N]数组里的数复制到P[N]。strcpy(p,s);可以实现数据复制。
百度网友f160a72
2012-09-12 · TA获得超过363个赞
知道小有建树答主
回答量:461
采纳率:0%
帮助的人:399万
展开全部
char *p=s; => char p[N]; strcpy(p, s);
追问
详细一点啊,不懂
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d39a011
2012-09-12
知道答主
回答量:3
采纳率:0%
帮助的人:5.5万
展开全部
char* rev( char* s )
{
int i = strlen( s );
char* str = new char[ i + 1];
for( int c = 1; *s != 0; s++, c++ )
*( str + i - c ) = *s;
*( str + i ) = 0;
return str;
}
……用那么麻烦??
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式