• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:文字を入れ替える)

文字を入れ替える方法とは?

このQ&Aのポイント
  • 文字を入れ替える方法について教えてください。
  • 質問文章について要約すると、文字を入れ替える方法を知りたいという内容です。
  • また、質問文章のコードを見やすく修正してほしいとのことです。

質問者が選んだベストアンサー

  • ベストアンサー
  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.3

#2さんの改良。BM法っぽくして同じ文字を2度見るのをやめてスピードアップ。  char *a , moji[100];  fgets(moji,100,stdin);  a = moji ;  if (*a != 0) {   for(;*(a+1) !=0 ;a++ ) {    if( *a == 'a' ) {     if ( *(a+1) == 'b') {      *a = '+' ;      *(a+1) = '+' ;     }    } else {     a++;    }   }  }

その他の回答 (2)

  • buriburi3
  • ベストアンサー率44% (353/792)
回答No.2

 char *a , moji[100];  fgets(moji,100,stdin);  a = moji ;  if (*a != 0) {   for(;*(a+1) !=0 ;a++ ) {    if( *a == 'a' && *(a+1) == 'b') {     *a = '+' ;     *(a+1) = '+' ;    }   }  } 二文字位ならハードコーディングでも問題無いと思う。

回答No.1

#include <stdio.h> #include <string.h> int main() {  char data[] = "abcdefacdeeab";  char* position = data;  while ( position = strstr(position,"ab") ) {   *position++ = '+';   *position++ = '+';  }  puts(data);  return 0; }

関連するQ&A