请问一下大佬们这个为什么是部分正确阿
c语言吧
全部回复
仅看楼主
level 7
Ampampa 楼主
我知道没有b【】直接倒序输出a【】比我这个简便多了,但是想知道这个为什么不对[小乖][小乖][小乖]
2022年09月30日 12点09分 1
level 1
2022年09月30日 12点09分 2
level 1
字符串的结束是\0不是\n
2022年09月30日 13点09分 3
记混了[小乖][小乖][小乖]但是我改了之后还是不行[委屈]
2022年09月30日 13点09分
level 7
Ampampa 楼主
2022年09月30日 13点09分 4
数组长度应该是81,要把结束符考虑进去
2022年09月30日 13点09分
@佔有慾___ emmm还是不对[惊哭][惊哭][惊哭]我错误太多了
2022年09月30日 13点09分
然后k代表了实际字符串的长度,从0开始应该是<k
2022年09月30日 13点09分
然后因为j++,所以bj就可以了
2022年09月30日 13点09分
level 7
Ampampa 楼主
2022年09月30日 13点09分 5
k=i就行了,两个都是下标,我前面说错了,到第十一行为止i才是实际元素个数,你执意要等于i-1那for里就是≤没错
2022年09月30日 13点09分
最后17行bj就可以了
2022年09月30日 13点09分
@佔有慾___ 懂了,谢谢大佬[乖][乖]orz
2022年09月30日 13点09分
level 1
你这代码看得我头疼
char a[81];
scanf("%[^\n]",a);
int n=strlen(a);
for(int i=0;i<n/2;i++){
char t=a[i];
a[i]=a[n-1-i];
a[n-1-i]=t;
}
printf("%s",a);
2022年09月30日 16点09分 6
谢谢大佬[小乖][小乖]请问一下^是什么意思我还没学到,但是经常在别人的代码里看到,百度也搜不出来
2022年10月01日 02点10分
@Ampampa 在这里^表示取反 \n是换行符 这里是读取所有不是换行符的字符
2022年10月01日 06点10分
@猫耳柠檬ლ 谢谢大佬,懂了
2022年10月01日 10点10分
1