ホームページ >バックエンド開発 >C++ >文字列に特殊文字が含まれているかどうかを確認するプログラムを C 言語で作成する

文字列に特殊文字が含まれているかどうかを確認するプログラムを C 言語で作成する

王林
王林転載
2023-09-04 17:45:141249ブラウズ

文字列に特殊文字が含まれているかどうかを確認するプログラムを C 言語で作成する

文字列 str[] が与えられた場合、タスクは文字列に特殊文字が含まれているかどうかを確認し、文字列に特殊文字が含まれている場合は、「文字列は受け入れられません」と出力します。それ以外の場合は、「文字列が受け入れられました」と出力します。

特殊文字とは、数字でも文字でもない文字です。つまり - !@#$%^&*() =-\][';/.,{}|:"? `~

そこで、C プログラミング言語では、if-else メソッドを使用して問題を解決します。

Input - str[] = {"tutorials-point "}

出力 - 文字列は受け入れられません

入力 - str[] = {"チュートリアルポイント"}

出力 - 文字列が受け入れられます

問題を解決する方法は次のとおりです:

  • 文字列全体を繰り返します。

  • #Find特殊文字。特殊文字が文字列に存在する場合は、「文字列は受け入れられないため中断します」と出力します。それ以外の場合は、文字列を出力します。

その他のメソッド

If Java または正規表現の概念をサポートするその他の言語でコーディングしている場合、正規表現を使用して、正規表現が指定された文字列に存在するかどうかを確認します。これは単なる単純な方法ではなく、高速です。

アルゴリズム

Start
In function int special_character(char str[], int n)
   Step 1→ initialize i and flag and set flag as 0
   Step 2&rarr; Loop For i = 0 and i < n and ++i
      If(str[i] == &#39;!&#39; || str[i] == &#39;@&#39; || str[i] == &#39;#&#39; || str[i] == &#39;$&#39;
      || str[i] == &#39;%&#39; || str[i] == &#39;^&#39; || str[i] == &#39;&&#39; || str[i] == &#39;*&#39;
      || str[i] == &#39;(&#39; || str[i] == &#39;)&#39; || str[i] == &#39;-&#39; || str[i] == &#39;{&#39;
      || str[i] == &#39;}&#39; || str[i] == &#39;[&#39; || str[i] == &#39;]&#39; || str[i] == &#39;:&#39;
      || str[i] == &#39;;&#39; || str[i] == &#39;"&#39; || str[i] == &#39;\&#39;&#39; || str[i] == &#39;<&#39;
      || str[i] == &#39;>&#39; || str[i] == &#39;.&#39; || str[i] == &#39;/&#39; || str[i] == &#39;?&#39;
      || str[i] == &#39;~&#39; || str[i] == &#39;`&#39; then
         Print "String is not allowed&rdquo;
            Set flag as 1
         break
   Step 3&rarr; If flag == 0 then,
      Print "string is accepted&rdquo;
In function int main(int argc, char const *argv[])
   Step 1&rarr; Declare and set str[] as {"Tutorials-point"}
   Step 2&rarr; set n as strlen(str)
   Step 3&rarr; special_character(str, n)
Stop

リアルタイムデモンストレーション

#include <stdio.h>
#include <string.h>
int special_character(char str[], int n){
   int i, flag = 0;
   for (i = 0; i < n; ++i){
      //checking each character of the string for special character.
      if(str[i] == &#39;!&#39; || str[i] == &#39;@&#39; || str[i] == &#39;#&#39; || str[i] == &#39;$&#39;
      || str[i] == &#39;%&#39; || str[i] == &#39;^&#39; || str[i] == &#39;&&#39; || str[i] == &#39;*&#39;
      || str[i] == &#39;(&#39; || str[i] == &#39;)&#39; || str[i] == &#39;-&#39; || str[i] == &#39;{&#39;
      || str[i] == &#39;}&#39; || str[i] == &#39;[&#39; || str[i] == &#39;]&#39; || str[i] == &#39;:&#39;
      || str[i] == &#39;;&#39; || str[i] == &#39;"&#39; || str[i] == &#39;\&#39;&#39; || str[i] == &#39;<&#39;
      || str[i] == &#39;>&#39; || str[i] == &#39;.&#39; || str[i] == &#39;/&#39; || str[i] == &#39;?&#39;
      || str[i] == &#39;~&#39; || str[i] == &#39;`&#39; ){
         printf("String is not allowed</p><p>");
         flag = 1;
         break;
      }
   }
   //if there is no special charcter
   if (flag == 0){
      printf("string is accepted</p><p>");
   }
   return 0;
}
int main(int argc, char const *argv[]){
   char str[] = {"Tutorials-point"};
   int n = strlen(str);
   special_character(str, n);
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます -

rreeee

以上が文字列に特殊文字が含まれているかどうかを確認するプログラムを C 言語で作成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。