Есть две программы, их нужно писать с использованием функций и динамической памяти. Помогите пожалуйста
http://pastebin.com/Ec4gASVC
http://pastebin.com/JxDd0bV4
Другие языки программирования и технологии
Помогите переписать программу
#include <stdio.h>
#include <stdlib.h>
int **arr_alloc(int n, int m) {
int r, c;
int **a = malloc(n * sizeof(int *));
for (r = 0; r < n; ++r) a[r] = malloc(m * sizeof(int));
return a;
}
void arr_input(int **a, int n, int m) {
int r, c;
for (r = 0; r < n; ++r) {
for (c = 0; c < m; ++c) scanf ("%d", &a[r][c]);
}
}
void arr_remcol(int **a, int n, int *m, int (*pred)(int)) {
int r, c, cc = 0, y;
for (c = 0; c < *m; ++c) {
y = 0;
for (r = 0; r < n; ++r) if ( pred(a[r][c]) ) ++y;
if (y != n) {
for (r = 0; r < n; ++r) a[r][cc] = a[r][c];
++cc;
}
}
for (r = 0; r < n; ++r) a[r] = realloc(a[r], cc * sizeof(int));
*m = cc;
}
void arr_print(int **a, int n, int m, char *fmt) {
int r, c;
for (r = 0; r < n; ++r) {
for (c = 0; c < m; ++c) printf(fmt? fmt : " %d", a[r][c]);
putchar('\n');
}
}
void arr_free(int **a, int n) {
int r;
for (r = 0; r < n; ++r) free(a[r]);
free(a);
}
int op(int x) { return x % 10 == 1; }
main() {
int n, m, **a;
printf("Enter the size\n");
scanf("%d %d", &n, &m);
a = arr_alloc(n, m);
printf ("Enter the elements\n");
arr_input(a, n, m);
printf("Array:\n");
arr_print(a, n, m, "%""5d");
arr_remcol(a, n, &m, op);
printf("Result:\n");
arr_print(a, n, m, "%""5d");
arr_free(a, n);
}
#include <stdlib.h>
int **arr_alloc(int n, int m) {
int r, c;
int **a = malloc(n * sizeof(int *));
for (r = 0; r < n; ++r) a[r] = malloc(m * sizeof(int));
return a;
}
void arr_input(int **a, int n, int m) {
int r, c;
for (r = 0; r < n; ++r) {
for (c = 0; c < m; ++c) scanf ("%d", &a[r][c]);
}
}
void arr_remcol(int **a, int n, int *m, int (*pred)(int)) {
int r, c, cc = 0, y;
for (c = 0; c < *m; ++c) {
y = 0;
for (r = 0; r < n; ++r) if ( pred(a[r][c]) ) ++y;
if (y != n) {
for (r = 0; r < n; ++r) a[r][cc] = a[r][c];
++cc;
}
}
for (r = 0; r < n; ++r) a[r] = realloc(a[r], cc * sizeof(int));
*m = cc;
}
void arr_print(int **a, int n, int m, char *fmt) {
int r, c;
for (r = 0; r < n; ++r) {
for (c = 0; c < m; ++c) printf(fmt? fmt : " %d", a[r][c]);
putchar('\n');
}
}
void arr_free(int **a, int n) {
int r;
for (r = 0; r < n; ++r) free(a[r]);
free(a);
}
int op(int x) { return x % 10 == 1; }
main() {
int n, m, **a;
printf("Enter the size\n");
scanf("%d %d", &n, &m);
a = arr_alloc(n, m);
printf ("Enter the elements\n");
arr_input(a, n, m);
printf("Array:\n");
arr_print(a, n, m, "%""5d");
arr_remcol(a, n, &m, op);
printf("Result:\n");
arr_print(a, n, m, "%""5d");
arr_free(a, n);
}
помочь = написать за тебя?
А чем ты помогаешь другим?
По твоим ответам вижу: Бог тебе поможет!
А чем ты помогаешь другим?
По твоим ответам вижу: Бог тебе поможет!
сколько?
Михаил Лебедев
А сколько надо?
Похожие вопросы
- Помогите переписать программу без функции.
- Помогите найти в чем дело перепишите программу.
- Переписать программу из Pascal в С++
- помогите переписать код с паскаля на c++
- Помогите написать программу со switch в СИ
- Помогите написать программу на С. Тема Составление программ с использованием массивов
- Помогите написать программу выключения компьютера на С++
- Помогите исправить программу
- помогите написать программы в ассемблере
- Помогите написать программу в с++