الانتقال إلى المحتوى الرئيسي

كيف يمكنني مبادلة 2 صفائف باستخدام اللغة ج?

توفر لغة البرمجة ج إمكانيات واسعة للعمل مع المصفوفات. واحدة من المهام التي قد تكون مفيدة لحلها هو مبادلة اثنين من المصفوفات. أي ، ضع عناصر المصفوفة الأولى في الثانية ، وعناصر المصفوفة الثانية في الأولى. للوهلة الأولى ، قد تبدو هذه مهمة صعبة ، لكن يتم حلها بكل بساطة!

لمبادلة اثنين من المصفوفات ، تحتاج إلى استخدام متغير إضافي. لنقم بإنشاء مصفوفة ثالثة بنفس طول المصفوفات الأصلية. بعد ذلك ، دعنا ننتقل إلى عناصر المصفوفة الأولى ونضعها في المصفوفة الثالثة. بعد ذلك ، دعنا نتصفح عناصر المصفوفة الثانية ونضعها في المصفوفة الأولى. أخيرا ، دعنا نتصفح عناصر المصفوفة الثالثة ونضعها في المصفوفة الثانية. هذه هي مهمتنا-لمبادلة اثنين من المصفوفات!

يوجد أدناه مثال على رمز ج الذي ينفذ هذه المهمة. Обратите внимание, что мы используем циклы для прохода по элементам массивов и временную переменную для обмена элементов.

  1. ");
  2. برينتف ("صفيف 2:");
  3. ل (إنت أنا = 0 ؛ أنا < الحجم ؛ أنا i) {

برينتف ("٪د " ، المجموعة 2 [ط]);

  1. }

برينتف("

");

العودة 0;

}

خوارزمية لتبادل عناصر الصفيف في لغة ج

نموذج التعليمات البرمجية في ج لتبادل المصفوفات

سؤال وجواب

كيف يمكنني مبادلة 2 صفائف في ج?

هل من الممكن لمبادلة اثنين من المصفوفات في ج دون استخدام مجموعة مؤقتة?

هل من الممكن لمبادلة اثنين من صفائف من أطوال مختلفة في ج?

ما هو تعقيد الخوارزمية لتبادل صفيفتين في ج?

هل من الممكن لمبادلة اثنين من المصفوفات باستخدام مؤشرات في ج?

هل من الممكن لمبادلة اثنين من المصفوفات إذا كانت في وظائف مختلفة في ج?

خوارزمية لتبادل عناصر الصفيف في لغة ج

لتبادل عناصر صفيفتين في ج ، يمكنك استخدام الخوارزمية التالية:

إعلان وتهيئة اثنين من المصفوفات بين العناصر التي سيتم تبادلها.

إنشاء متغير مؤقت التي سيتم استخدامها لتخزين مؤقتا قيمة عنصر في مجموعة واحدة.

باستخدام حلقة ، كرر من خلال عناصر المصفوفة وتبادل العناصر بين صفيفتين باستخدام متغير مؤقت.

كرر الخطوة 3 لكل عنصر من عناصر المصفوفة.

بعد تبادل جميع العناصر ، تحتوي المصفوفات على القيم المبادلة.

مثال على تنفيذ الخوارزمية في لغة سي:

# تشمل

كثافة العمليات الرئيسية () {

صفيف 1[] = {1, 2, 3, 4, 5};

2[] = {6, 7, 8, 9, 10};

إنت تيمب;

ل (إنت أنا = 0 ؛ أنا < حجم (صفيف 1) / حجم (صفيف 1 [0]) ؛ أنا++) {

درجة الحرارة = مجموعة 1 [أنا];

الصف 1 [أنا] = الصف 2 [أنا];

الصف 2 [أنا] = درجة الحرارة;

}

برينتف ("نتيجة تبادل عناصر المصفوفة:

");

برينتف ("صفيف 1:");

ل (إنت أنا = 0; أنا < حجم (صفيف 1) / حجم (صفيف 1[0]) ؛ أنا++) {

برينتف ("٪د " ، المجموعة 1 [ط]);

}

برينتف("

");

برينتف ("صفيف 2:");

ل (إنت أنا = 0 ؛ أنا < حجم (صفيف 2) / حجم (صفيف 2 [0]) ؛ أنا++) {

برينتف ("٪د " ، المجموعة 2 [ط]);

}

برينتف("

");

العودة 0;

}

في هذا المثال ، صفائف صفيف 1 و صفيف 2 تحتوي على عناصر ، والتي تحتاج إلى تبديل. بعد تنفيذ الخوارزمية ، سيتم تبادل عناصر المصفوفات "مصفوفة 1" و "مصفوفة 2".

إخراج البرنامج:

نتيجة تبادل عناصر المصفوفة:

صفيف 1: 6 7 8 9 10

صفيف 2: 1 2 3 4 5

وبالتالي ، تسمح لك الخوارزمية بتبديل عناصر صفيفتين في لغة سي. يمكن استخدام هذه الطريقة في المواقف المختلفة التي تتطلب إعادة ترتيب عناصر المصفوفة.

نموذج التعليمات البرمجية في ج لتبادل المصفوفات

لمبادلة مواقع اثنين من المصفوفات في ج ، يمكنك استخدام التعليمات البرمجية التالية:

# تشمل

باطلة سواباريز (إنت صفيف 1 [] ، إنت صفيف 2 [] ، إنت حجم) {

ل (إنت أنا = 0 ؛ أنا < الحجم ؛ أنا i) {

إنت تيمب = مجموعة 1 [أنا];

الصف 1 [أنا] = الصف 2 [أنا];

الصف 2 [أنا] = درجة الحرارة;

}

}

كثافة العمليات الرئيسية () {

// إعلان وتهيئة اثنين من المصفوفات

صفيف 1[] = {1, 2, 3, 4, 5};

2[] = {6, 7, 8, 9, 10};

// حجم الصفيف

حجم كثافة العمليات = حجم (صفيف 1) / حجم (صفيف 1 [0]);

// إخراج المصفوفات المصدر

printf("Исходные массивы:

");

printf("Массив 1: ");

for (int i = 0; i < size; i++) {

printf("%d ", array1[i]);

}

printf("

");

printf("Массив 2: ");

for (int i = 0; i < size; i++) {

printf("%d ", array2[i]);

}

printf("

");

// Обмен массивов

swapArrays(array1, array2, size);

// Вывод результатов