Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.06.2009, 11:31   #1
maloy-rom
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 43
По умолчанию Робота с файлами

В даном двухмерном массиве p[3*5] отсортировать по убыванию элементы каждой строки.

Входящие данные считать с файла и результат записати в тот самый файл

вот мой код что то не выходит

Код:
#include<stdio.h>
#include<conio.h>
#include<string.h>

int main()
{
 FILE *fi;
 int a[3][5],k,n,i,j,x;
 fi=folopen("mas.txt","r");
 fscanf(fi,"%d",&n);
 for(i=0;i<n;i++)
 fscanf(fi,"%i",&a[i][j]);
 fclose(fi);

 for(k=1;k<n;k++)
 for(i=0;i<n-k;i++)
 if (a[i][j]>a[i+1][j+1])
 { x=a[i][j];
 a[i][j]=a[i+1][j+1];
 a[i+1][j+1]=x;}
 fi=fopen("mas.txt","a");
 fprintf(fi,"\n");
 for(i=0;i<n;i++)
  fprintf(fi, "%i",a[i][j]);
  fprintf(fi,"\n");
  fclose(fi);
  getch();
}
maloy-rom вне форума Ответить с цитированием
Старый 09.06.2009, 11:41   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
a[i+1][j+1]
Может тебе не нужно затрагивать координаты колонки?
И вообще цикл то у тебя по какой переменке?
Может так стоит попробовать:
Код:
a[k][i+1]
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.06.2009, 11:46   #3
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
В даном двухмерном массиве p[3*5] отсортировать по убыванию элементы каждой строки.
Так, может, все-таки p[3][5]?

Код:
#include<stdio.h>
#include<conio.h>

int main()
{
FILE *f;
int a[10][10],m,n,i,j,k,tmp;

f = fopen("test.txt","r");
fscanf(f,"%d %d",&m,&n);

for(i=0; i<m; i++)
 for(j=0; j<n; j++)
  fscanf(f,"%d",&a[i][j]);
fclose(f);

for(i=0; i<m; i++)
  for(j=0; j<n-1; j++)
   for(k=j+1; k<n; k++)
    if(a[i][k]>a[i][j])
     {
      tmp = a[i][k];
      a[i][k] = a[i][j];
      a[i][j] =tmp;
     }

f = fopen("test.txt","w");
for(i=0; i<m; i++,fprintf(f,"\n"))
 for(j=0; j<n; j++)
  fprintf(f,"%d ",a[i][j]);
fclose(f);

return 0;
}
Файл:
Код:
3 5
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Робота с файлами maloy-rom Помощь студентам 2 07.06.2009 17:35
Робота с файлами maloy-rom Помощь студентам 0 02.06.2009 10:57
Робота с файлами .. помогите ! masha17 Помощь студентам 1 03.03.2009 17:00