簡體   English   中英

C程序-具有功能的回文-幾乎完全完成了一個小問題

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM