С помощью функции CreateProcess породить два процесса - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Создать программу, в которой с помощью функции CreateProcess порождается два процесса один из процессов считает сумму в строках матрицы, другой в столбцах. Получить информацию о всех процессах системы.

Решение задачи: «С помощью функции CreateProcess породить два процесса»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int matrix[10][10];
void matrix_init(void) // инициализирует матрицу рандомными числами
{
    int i,j,randval;
    for(i=0;i<10;++i)
    {
        for (j=0;j<10;j++)
        {
            randval=rand()%10-3;
            matrix[i][j]=randval;
        }
    }
}
void create_process(void)
{
    int i,j,a=0,b=0;
    for(i=0;i<10;++i)
    {
        for (j=0;j<10;++j)
        {
 
           printf("%-6d ",matrix[i][j]);// печатаем матрицу
           a+=matrix[i][j]; //сумма строк
        }
        printf("\tsum=%d\n",a);//печать суммы строк
        a=0;
    }
    for(j=0;j<10;++j)
    {
        for (i=0;i<10;++i)
        {
        b+=matrix[i][j];//считаем сумму столбцов
        }
        printf("sum=%d ",b);//печать суммы столбцов
        b=0;
    }
    printf("\n");
}
int main(void)
{
    srand(time(NULL));
    matrix_init();
    create_process();
    return 0;
}

Объяснение кода листинга программы

  1. Объединение двух процессов с помощью функции CreateProcess.
  2. Инициализация матрицы 10х10 случайными числами с помощью функции matrix_init.
  3. Вывод матрицы на экран с помощью цикла for и функции printf.
  4. Суммирование элементов каждой строки матрицы и вывод суммы на экран с помощью функции printf.
  5. Сложение элементов каждого столбца матрицы и вывод суммы на экран с помощью функции printf.
  6. Ввод начальной суммы в переменную a и b перед циклом суммирования.
  7. Обнуление переменных a и b после каждого прохода по матрице.
  8. Запуск функции main, которая инициирует работу всего кода.
  9. Использование функции srand для установки начальной точки генератора случайных чисел.
  10. Использование функции time для получения текущего времени.
  11. Запуск функции matrix_init для инициализации матрицы.
  12. Запуск функции create_process для создания и работы с процессами.
  13. Возврат значения 0 в функции main, что означает успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4 из 5
Похожие ответы