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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2013, 01:13   #1
CppForYou
Пользователь
 
Регистрация: 08.03.2013
Сообщений: 37
По умолчанию неправильно работает программа

посмотрите кому не лень код, что я сделал неправильно?) записываю в первый файл размерность матрицы, и из второго файла хочу в начале просмотреть исходную матрицу, затем результатирующую матрицу (в данной случае транспонированную). исходную матрицу из второго файла вроде выводит, а результат не выводит почему то!
Код:
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
 
//------------GLOBAL PARAMETRI-----------------------------
 
FILE *f,*f1,*f2;
int k;
int a[30][30], i, j, r;
 
//------------------FUNCTIONS------------------------------
void menu();
void create();
void view();
void read();
//------------------------------------------------
void main()
{
    menu();
}
 
//------------------MENU-----------------------------------
 
void menu()
{
     int c;
     clrscr();
     cout<<"||==============================||"<<endl;
     cout<<"||            MENU              ||"<<endl;
     cout<<"||==============================||"<<endl;
     cout<<"|| 1.Create file                ||"<<endl;
     cout<<"|| 2.Read                       ||"<<endl;
     cout<<"|| 3.Prosmotr                   ||"<<endl;
     cout<<"|| 4.Exit                       ||"<<endl;
     cout<<"||==============================||"<<endl;
 
     cout<<"\nViberite deistvie: ";
     do
     {
        c=getch();
        switch(c)
        {
            case 49: create();
            case 50: read();
            case 51: view();
            case 52: exit(0);
        }
     }
     while((c<49)||(c>52));
}
 
//--------------------READING-----------------------------
 
void read()
{
      char fname1[10], fname2[10];
      clrscr();
      cout<<"Vvedite imya faila dlya read: ";
      gets(fname1);
      f1=fopen(fname1, "r");
      cout<<"Vvedite imya faila dlya zapisi: ";
      gets(fname2);
      f2=fopen(fname2, "w");
      fscanf(f1, "%d", &k);
      for(i=0; i<k; i++)
            for(j=0; j<k; j++)
                 fscanf(f1, "%d", &a[i][j]);
      for(j=0; j<k; j++)
          {
             r=a[i][j];
             a[i][j]=a[j][i];
             a[j][i]=r;
          }
      cout<<"\nTransponirovannaya matrica:\n\n";
      for(i=0; i<k; i++)
            for(j=0; j<k; j++)
                      fprintf(f2, "%d", a[j][i]);
      cout<<"\nKONEC";
      fclose(f1);
      fclose(f2);
      getch();
      menu();
}
 
//----------------ZAPIS----------------------------
 
void create()
{
     char fname1[10];
     clrscr();
     cout<<"Vvedite imya faila: ";
     gets(fname1);
     f1=fopen(fname1, "w");
     randomize();
     cout<<"Razmernost matrici: k=";
     cin>>k;
     fprintf(f1, "%d ", k);
     for(i=0; i<k; i++)
          for(j=0; j<k; j++)
                {
                      a[i][j]=random(30);
                      fprintf(f1, "%d ", a[i][j]);
                }
     cout<<endl<<"Zapisano v fail!";
     fclose(f1);
     getch();
     menu();
}
//-----------------------------------------------
void view()
{
      char fname[10];
      clrscr();
      cout<<"Vvedite imya faila dlya read: ";
      gets(fname);
      f=fopen(fname, "r");
      fscanf(f, "%d", &k);
      cout << "k=" << k << endl;
      for(i=0; i<k; i++)
            for(j=0; j<k; j++)
                 fscanf(f, "%d", &a[i][j]);
      fclose(f);
      cout<<" matrica:"<<endl;
     for(i=0; i<k; i++)
         {
            for(j=0; j<k; j++)
                cout << a[i][j] << "   ";
            cout << endl;
         }
      cout<<"\nKONEC";
      getch();
      menu();
}
CppForYou вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++. Неправильно работает программа. Новенькая.. Помощь студентам 2 04.10.2012 00:01
Программа работает неправильно. Настюня Помощь студентам 2 16.06.2012 18:34
Программа с интервалами неправильно работает pahanzona Общие вопросы Delphi 2 11.03.2011 16:09
почему на чужем ПК неправильно работает программа Coder01 Общие вопросы Delphi 10 24.08.2010 19:34
Неправильно работает программа из книги Абеля. bullvinkle Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 23.02.2009 10:56