我试图解决站点上的编程问题。它说检查单词是否是回文。如果是,则打印“是”,如果不是,则打印“否”。我已经快做完了,但是有一个问题。我无法存储数组的反向字符串的输出。
我尝试了很多方法来做。但我失败了
#include<stdio.h>
#include<string.h>
int main(){
int i,len;
char mainword[100], reverseword[100];
scanf("%s",mainword);
len = strlen(mainword);
strcpy(reverseword,mainword);
for(i=len; i>=0; i--){
printf("%c",reverseword[i]);
// I just need here to save the output without printing it. So, that later I can compare it.
}
if(strcmp(reverseword,mainword)==0){
printf("\nYes");
}
else{
printf("\nNo");
}
}
我希望它将存储字符串值。
最佳答案
您可以尝试以下方法:
#include<stdio.h>
#include<string.h>
int main(){
int i,len,j=0;
char mainword[100], reverseword[100];
scanf("%s",mainword);
len = strlen(mainword);
for(i=len; i>=0; i--){
reverseword[j] = mainword[i-1];
j++;
}
reverseword[j] = '\0';
if(strcmp(reverseword,mainword)==0){
printf("\nYes");
}
else{
printf("\nNo");
}
}
关于c - 如何在不打印的情况下从循环存储数组的输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58254653/