Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

文字列の配列を逆にするCプログラム


この問題では、文字列の配列が与えられます。私たちのタスクは、文字列の配列を逆にするcプログラムを作成することです。

配列要素、つまり最後の要素を最初の値に逆にします。

問題を理解するために例を見てみましょう

入力

strarr[] = {"learn", "programming", "at", "tutorialspoint"}

出力

strarr[] = {"tutorialspoint", "at", "programming", "learn"}

この問題を解決するために、ポインターの配列を作成し、開始と終了から2つのポインターを使用します。次に、ポインタを反対側に移動し、ポインタ値を交換し続けます。

文字列の配列を逆にするCプログラム。

//c文字列の配列を逆にするプログラム。

#include <stdio.h>
#include <string.h>
void ReverseStringArray(char* strarr[], int n) {
   char* temp;
   int end = n - 1;
   for (int start = 0; start < end; start++) {
      temp = strarr[start];
      strarr[start] = strarr[end];
      strarr[end] = temp;
      end--;
   }
}
int main() {
   char* strarr[] = {"learn", "programming", "at", "tutorialspoint"};
   int n = sizeof(strarr) / sizeof(strarr[0]);
   for (int i = 0; i < n; i++)
      printf("%s ", strarr[i]);
   printf("\n");
   ReverseStringArray(strarr, n);
   for (int i = 0; i < n; i++)
      printf("%s ", strarr[i]);
   return 0;
}

出力

learn programming at tutorialspoint
tutorialspoint at programming learn

  1. 配列の積のCプログラム

    n個の要素の配列arr[n]が与えられた場合、タスクはその配列のすべての要素の積を見つけることです。 7つの要素の配列arr[7]があるように、その製品は次のようになります 例 Input: arr[] = { 10, 20, 3, 4, 8 } Output: 19200 Explanation: 10 x 20 x 3 x 4 x 8 = 19200 Input: arr[] = { 1, 2, 3, 4, 3, 2, 1 } Output: 144 以下で使用されるアプローチは次のとおりです − 配列入力を取得します。 そのサイズを見つけます。 配列を反復処理し、その配列の

  2. アレイが回文であるかどうかをチェックするCプログラム

    任意のサイズnの配列arr[]が与えられた場合、私たちのタスクは、配列が回文であるかどうかを確認することです。回文は、MADAM、NAMANなどのように、同じように前後に読み取ることができるシーケンスです。 したがって、配列が回文であるかどうかを確認するために、-のように配列を前後にトラバースできます。 例 Input: arr[] = {1, 0, 0, 1} Output: Array is palindrome Input: arr[] = {1, 2, 3, 4, 5} Output: Array is not palindrome 以下で使用されるアプローチは次のとおりです