Исправить код сложения матриц - C (СИ)

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

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

Здравствуйте. У меня проблема с написанием программы
сложение матриц
, посмотрите пожалуйста что не так ??
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <conio.h>
 
void main()
{
int i,j;
int a[10][10];
int b[10][10];
int c[10][10];
 
for (i=0;i<10;i++)
 for (j=0;j<10;j++)
 {
  a[i][j]=random(100);
  b[i][j]=random(100);
 }
for (i=0;i<10;i++)
 for (j=0;j<10;j++)
 {
  c[i][j] = a[i][j]+b[i][j];   
 }
printf("c[%d][%d]=%d,%d\n",i,j,c[i][j]);
getche();
  }
Мне нужно произвести сложение матриц общего вида и вывести на экран это всё ! А в программе выводится только конечный результат в строчку..подскажите как исправить = ) И еще один вопрос по поводу другой программы. вот она :
Выборка по условию
Из одномерного массива {ai} длиной n произвести выборку по условию (например, ai>0) его элементов в новый массив {bi}. Элементы массива {bi} плотно упаковать. Длина массива {bi} k<=n . как это реализовать в программном виде на СИ ? (всмысле прогу написать)
Ну что никто не поможет ??

Решение задачи: «Исправить код сложения матриц»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
 
int main()
{
    srand((unsigned)time(NULL));
    int *a,*b;
    int n,num_b=0,k=0,i;
    printf("Enter n: -> ");
    scanf("%d",&n);
    a=(int*)malloc(n*sizeof(int));
    printf("a: ");
    for(i=0; i<n; i++)
    {
        a[i]=rand()%9-3;
        printf("%d  ",a[i]);
         if(a[i] > 0)
         {
             num_b++;
         }
    }
    b=(int*)malloc(num_b*sizeof(int));
    printf("\nb: ");
    for(i=0; i<n; i++)
    {
        if(a[i] > 0)
        {
            b[k]=a[i];
            printf("%d  ",b[k]);
            k++;
        }
    }
    free(a);
    free(b);
    getch();
   return 0;
}

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

  1. Включаем необходимые заголовочные файлы
  2. Задаем случайное начальное значение для генератора случайных чисел
  3. Объявляем переменные: a, b, n, num_b, k, i
  4. Запрашиваем у пользователя ввод размера матрицы n
  5. Выделяем память под массив a с помощью malloc
  6. Генерируем случайные числа для заполнения массива a и выводим их на экран
  7. Подсчитываем количество положительных чисел в массиве a и сохраняем это значение в переменную num_b
  8. Выделяем память под массив b с помощью malloc
  9. Заполняем массив b положительными числами из массива a и выводим их на экран
  10. Освобождаем память, выделенную под массивы a и b
  11. Ждем нажатия клавиши для завершения программы
  12. Возвращаем 0, чтобы указать, что программа успешно завершилась

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


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

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

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