إعلان
تعلم الآن

الخوارزميات و هياكل البيانات التحدي الرابع - حل التمرين الخامس بلغة C

المطلوب

أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 3 أعمدة.
بعدها يطلب من المستخدم إدخال عدد صحيح لكل عنصر فيها.
بعدها يعرض للمستخدم جميع القيم التي أصبحت تحتويها بشكل مرتب.
بعدها يقوم بتخزين جميع القيم الموجودة في المصفوفة matrix بداخل مصفوفة أحادية ( ذات بعد واحد ) إسمها array.
في الأخير, يعرض للمستخدم جميع القيم التي أصبحت تحتويهم المصفوفة array على سطر واحد مع وضع مسافة فارغة بين كل قيمتين.


الحل بلغة C

#include <stdio.h>

void main() {
    
    int rows = 3;
    int cols = 3;
    int matrix[rows][cols];
    int array[rows * cols];
    
    for (int i = 0; i < rows; i++)
    {
        for (int j = 0; j < cols; j++)
        {
            printf("Enter matrix[%d][%d]: ", i, j);
	        scanf("%d", &matrix[i][j]);
        }
    }
    
    printf("\nMatrix values\n");
    
    for (int i = 0; i < rows; i++)
    {
        for (int j = 0; j < cols; j++)
        {
            printf("%d ", matrix[i][j]);
        }
        printf("\n");
    }
    
    for (int i = 0; i < rows; i++)
    {
        for (int j = 0; j < cols; j++)
        {
            array[j + (i * cols)] = matrix[i][j];
        }
    }
    
    printf("\nArray values\n");
    
    for (int i = 0; i < rows * cols; i++)
    {
        printf("%d ", array[i]);
    }
    
}
		

سنحصل على النتيجة التالية في حال تم إدخال نفس القيم التي تم تعليمها باللون الأصفر عند التشغيل.

Enter matrix[0][0]: 1
Enter matrix[0][1]: 2
Enter matrix[0][2]: 3
Enter matrix[1][0]: 4
Enter matrix[1][1]: 5
Enter matrix[1][2]: 6
Enter matrix[2][0]: 7
Enter matrix[2][1]: 8
Enter matrix[2][2]: 9

Matrix values
1 2 3
4 5 6
7 8 9

Array values
1 2 3 4 5 6 7 8 9
إعلان
دورة أساسيات و إدارة أنظمة لينكس في هذه الدورة ستتعلم أساسيات نظام لينكس، أوامره و إدارته بالتطبيق العملي، كما ستتعلم كيفية إستضافة مواقع ووردبريس عليه. سعر الدورة الآن هو 30 ريال سعودي.
سعر الدورة الآن هو 30 ريال سعودي فقط.
تعلم الآن

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة