![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 18.05.2009
Сообщений: 1
|
![]()
преподаватель сказал сделать то же самое, только оба динамических массива через указатели.
дано два динамических массива (первый, который пользователь вводит самостоятельно, с размерностью, которая, задается с клавиатуры, и второй, который создается из первого по определенному условию) помогите пожалуйста записать через указатели. выручите глупую девушку, очень прошу ![]() вот то что я накарябала #include <stdio.h> #include <stdlib.h> int main(void) { int i, j, m, n, tmp, x, y; int status; double sum; double **array; double **new; printf("kolichestvo strok: "); scanf("%d", &m); printf("kolichestvo stolbtsov: "); scanf("%d", &n); //динамическое выделение памяти под массив array = (double**)malloc(m * sizeof(double*)); if (!array) return NULL; for (i=0; i<m; i++) { array[i]=(double*)malloc(n * sizeof(double)); if (!array[i]) { for (j=0; j<i; j++) free(array[j]); free(array); return NULL; } } new = (double**)malloc(m * sizeof(double*)); if (!new) return NULL; for (i=0; i<m; i++) { new[i]=(double*)malloc(n * sizeof(double)); if (!new[i]) { for (j=0; j<i; j++) free(new[j]); free(new); return NULL; } } //ввод массива printf("vvedite massiv razmernost'u %d x %d: \n", m, n); for (i=0; i<m; i++) { for (j=0; j<n; j++) { printf("(%d, %d)", i+1, j+1); scanf("%lf", &array[i][j]); } } //вывод массива for (i=0; i<m; i++) { printf("\n\n"); for (j=0; j<n; j++) printf("%7.1f", array[i][j]); } //создаем новый массив по нашему условию sum=0.; for (i=0;i<=m;i++) for (j=0;j<=n;j++) { for (x=0;x<=i;x++) for (y=0;y<=j;y++) { sum=sum+array[x][y]; } new[i][j]=sum; sum=0.; } printf ("\n rezyl'tat"); for (i=0; i<m; i++) { printf("\n\n"); for (j=0; j<n; j++) printf("%7.1f", new[i][j]); } printf ("\n\n"); for (i=0; i<m; i++) //освобождаем выделенную память free(array[i]); free(array); for (i=0; i<m; i++) free(new[i]); free(new); return 0; } |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]()
не используйте ключевые слова для объявления переменных
вместо Код:
Код:
Код:
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
динамические массивы | funky | Общие вопросы C/C++ | 3 | 12.05.2009 01:54 |
pascal динамические массивы | world12_tk | Помощь студентам | 7 | 27.04.2009 10:56 |
си динамические массивы, работа с фалами. | tanek | Помощь студентам | 0 | 19.04.2009 23:28 |
Указатели и динамические массивы. | Airou | Общие вопросы C/C++ | 5 | 16.01.2009 19:05 |