c语言小问题

[复制链接]
查看11 | 回复1 | 2011-6-13 11:13:30 | 显示全部楼层 |阅读模式
#includestdio.h
voidinv(char*p,intn)
{
char*p1,*p2;
p1=p;
p2=pn-1;
for(;p1p2;p1,p2--)
{
if(*p!=*p2)

{printf(\"%s此字符串不是回文\",*p);
gotoloop;
}}
printf(\"%s此字符是回文\",*p);
loop:return;
}
voidmain()
{
inti;
chara[10],*p=a;
for(i=0;i10;i)
scanf(\"%c\",ai);
printf(\"字符串为:\\n\");
for(i=0;i10;i,p)
printf(\"%c\",*p);
printf(\"\\n\");
p=a;
inv(p,10);
printf(\"\\n\");

}
这个编译可以通过但是在运行的时候总是显示产生一个访问违例(段异常)错那了?
回复

使用道具 举报

千问 | 2011-6-13 11:13:30 | 显示全部楼层
//尽力按你的思路改!
#includestdio.h
#includestring.h
voidinv(char*p)
{
char*p1,*p2;
intn=strlen(p);
p1=p;
p2=pn-1;
for(;p1p2;p1,p2--)
{
if(*p!=*p2)

{printf(\"%s此字符串不是回文\",p);
gotoloop;
}}
printf(\"%s此字符是回文\",p);
loop:return;
}
voidmain()
{
inti;
        chara[10],*p=a;
gets(p);
        printf(\"字符串为:\\n\");
        puts(p);
        printf(\"\\n\");
        p=a;
        inv(p);
        printf(\"\\n\");
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行