c++想把字符串最后一个挪到第一位,别的依次后移,求大神看看哪里错了
答案:4 悬赏:80 手机版
解决时间 2021-11-19 06:34
- 提问者网友:缘字诀
- 2021-11-18 05:53
c++想把字符串最后一个挪到第一位,别的依次后移,求大神看看哪里错了
最佳答案
- 五星知识达人网友:天凉才是好个秋
- 2021-11-18 06:32
#include
#include
int main()
{
char str[100];
char end;
int j;
printf("input string:");
scanf("%s",str);
j=strlen(str)-1;//此处有修改
end=str[j];
for (j=strlen(str)-1;j>0;--j)//本行有两处修改
{
str[j]=str[j-1];
}
str[0]=end;
printf("inversed string:%s
",str);
return 0;
}
#include
int main()
{
char str[100];
char end;
int j;
printf("input string:");
scanf("%s",str);
j=strlen(str)-1;//此处有修改
end=str[j];
for (j=strlen(str)-1;j>0;--j)//本行有两处修改
{
str[j]=str[j-1];
}
str[0]=end;
printf("inversed string:%s
",str);
return 0;
}
全部回答
- 1楼网友:duile
- 2021-11-18 10:13
#include
#include
int main()
{
char str[100];
char end;
int j;
printf("input string:");
scanf("%s", str);
j = strlen(str);
end = str[j-1];
for (j = strlen(str)-1; j > 0; --j)
{
str[j] = str[j - 1];
}
str[0] = end;
printf("inversed string:%s ", str);
system("pause");
return 0;
}
#include
int main()
{
char str[100];
char end;
int j;
printf("input string:");
scanf("%s", str);
j = strlen(str);
end = str[j-1];
for (j = strlen(str)-1; j > 0; --j)
{
str[j] = str[j - 1];
}
str[0] = end;
printf("inversed string:%s ", str);
system("pause");
return 0;
}
- 2楼网友:迷人又混蛋
- 2021-11-18 08:33
把end=str[j]改成
end=str[j-1];
试试
end=str[j-1];
试试
- 3楼网友:从此江山别
- 2021-11-18 07:42
改好了
int main()
{
char str[100];
char end;
int j;
printf("input string:");
scanf("%s",str);
j=strlen(str);
end=str[j-1]; //应该是j-1
for (j--;j>0;--j) //最后一位的下标是j-1
{
str[j]=str[j-1];
}
str[0]=end;
printf("inversed string:%s\n",str);
return 0;
}
int main()
{
char str[100];
char end;
int j;
printf("input string:");
scanf("%s",str);
j=strlen(str);
end=str[j-1]; //应该是j-1
for (j--;j>0;--j) //最后一位的下标是j-1
{
str[j]=str[j-1];
}
str[0]=end;
printf("inversed string:%s\n",str);
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯