|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.02.2011, 19:49 | #1 |
Новичок
Джуниор
Регистрация: 17.02.2011
Сообщений: 2
|
функция сортировки массива работает не верно
Программа должна иметь как минимум три функции. Функции должны быть организованы так, чтобы выполнять обработку матриц любого размерности. Количество элементов каждой матрицы следует принимать в пределах 100-200. КАТЕГОРИЧЕСКИ ЗАПРЕЩАЕТСЯ использовать глобальные переменные. Матрицу объявить статически в главной функции, размерностью 10*10 или более, затем ввести с клавиатуры необходимое количество строк и столбцов. Для всех вариантов элементы матриц формировать с помощью генератора случайных чисел. Вывести на печать матрицы до и после преобразования.В матрице размером 10х12 упорядочить элементы каждого столбца по возрастанию методом обмена, при котором возобновление просмотра осуществляется сначала.
листинг: #include<conio.h> #include<stdio.h> #include<math.h> #include<stdlib.h> float funcform(float *X, int n, int m, int c, int b); float funcrand(float z, float d); void Print(float *X, int n, int m, int c, int b) {int i, j; printf("\n"); for(i=0; i<c; i++) {printf("\n"); for(j=0; j<b; j++) {printf("%.2f ", *(X+i*m+j));}} getch(); } int main() { float A[100][100], z, d; int c, b, i, j, n, m; clrscr(); printf("vvedite kolichestvo strok\n"); scanf("%d", &c); printf("vvedite kolichestvo stolb\n"); scanf("%d", &b); printf("vvedite nizhniy predel\n"); scanf("%f", &z); printf("vvedite verhniy predel\n"); scanf("%f", &d); for(i=0; i<c; i++) {printf("\n"); for(j=0; j<b; j++) {A[i][j]=funcrand(z,d); printf("%.2f ", A[i][j]);}} getch(); funcform(&A[0][0], 100, 100, b, c); Print(&A[0][0], 100, 100, c, b); getch(); return 0; } float funcform(float *X, int n, int m, int b, int c) {int i, j, x, w, e; float a; for(i=0; i<b; i++) {for(j=0; j<c; j++) {x=j+1; {if(*(X+j*m+i)> *(X+x*m+i)) {a=*(X+j*m+i); *(X+j*m+i)=*(X+x*m+i); *(X+x*m+i)=a; for(w=0; w<c; w++) {printf("\n"); for(e=0;e<b; e++) {printf("%.2f ", *(X+w*m+e));}} getch(); clrscr(); j=0;}}}} return 0; } float funcrand(float z, float d) {float c; c=z+(float)rand()/RAND_MAX*(d-z); return c;} Последний раз редактировалось DroZd911; 17.02.2011 в 19:55. Причина: листинги спутал:) |
18.02.2011, 05:33 | #2 |
Новичок
Джуниор
Регистрация: 17.02.2011
Сообщений: 2
|
нашел ошибку
float funcform(float *X, int n, int m, int b, int c) {int i, j, x, w, e; float a; for(i=0; i<b; i++) {for(j=0; j<c-1; j++) {x=j+1; {if(*(X+j*m+i)> *(X+x*m+i)) {a=*(X+j*m+i); *(X+j*m+i)=*(X+x*m+i); *(X+x*m+i)=a; for(w=0; w<c; w++) {printf("\n"); for(e=0;e<b; e++) {printf("%.2f ", *(X+w*m+e));}} getch(); clrscr(); j=0;}}}} return 0; |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
решил написать програмку, всё указал верно, но она не работает | Барбоса | Общие вопросы Delphi | 8 | 26.01.2011 15:47 |
Написать сортировки массива- прямое включение и шелла, и сравнить какая из них работает быстрее | Noiziya | Помощь студентам | 3 | 30.12.2010 01:00 |
Скрипт не работает должным образом! Подскажите, что в скрипте не верно? | Qwertys777 | PHP | 10 | 02.12.2009 09:40 |
fgets - работает не верно, и вообще тупит | heart | C++ Builder | 14 | 29.11.2009 15:55 |
ajax скрипт. Строка загрузки не верно работает | alldmc | PHP | 3 | 21.01.2009 15:38 |