gpt4 book ai didi

c - 反转字符串(交换)

转载 作者:行者123 更新时间:2023-11-30 21:22:47 27 4
gpt4 key购买 nike

我需要有关这次考试的帮助。我需要反转输入字符串。

int main(void)
{
char str[30];
int strlen; int i=0; int count=0;int temp;int j;
printf("Enter the string \n");
gets(str);

while(str[i]!='\0')
{
i++;
count++;
}
strlen=count;
printf("The length of the string:%d\n", strlen);
i=0;
j=strlen;

while(i<j)
{
temp=str[i];
str[i]=str[j];
str[j]=temp;
i++;
j--;
}
printf("Reverse string :%s",str);

return 0;
}

问题是最后它没有显示字符串。它向我展示了:

"Reverse string :" 

也就是说,没有反向字符串。我的错误在哪里?

最佳答案

在你的代码中你正在做

j=strlen;

j 指向字符串的最后一个索引,即“\0”

稍后在循环中设置str[i]=str[j];

因此,第一个索引将为\0

打印 str 将不显示任何内容

为了使代码正确设置j=strlen - 1;

关于c - 反转字符串(交换),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51303729/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com