[英]C Program - Palindrome with functions - almost fully complete one small issue
比較兩個字符串時,有什么方法可以刪除空格嗎? 分配是創建一個不區分大小寫的回文,並且必須忽略空白。 到目前為止,我有
void cmpNoCase(char str1[], char str2[]){
if(strcasecmp(str1, str2)==0){
printf ("%s is a palindrome.\n", str2);
} else { ("%s is NOT a palindrome.\n", str2);
}
return;
}
在main內部,我有這個for循環來反轉用戶的第一個輸入字符串。
for (i=0, j= strlen(input2)-1; i < j; i++, j--){
index=input2[i];
input2[i]=input2[j];
input2[j]=index;
}
注意:我還有另一個函數,比較兩個字符串是否區分大小寫,但在比較字符串的索引(輸入的回文)時要考慮空格。 我在函數及其for循環中唯一的區別是第一個函數的“ strcmp”,第二個是“ strcasecmp”,以忽略大小寫。
您可以嘗試編寫自己的比較功能。 更具體地喜歡while(i<strlen(yourstr){// your logic for comparing the string character by character}
while(i<strlen(yourstr)){char a=yourstr[i]; if(a=' ') {continue;}; // rest of your comparison code}
否則,您可以執行以下操作: while((a=yourstring[i])!='\\n'){i++; if(a=' ') {continue;}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.