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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2009, 00:37   #11
Корделия
Пользователь
 
Регистрация: 28.04.2009
Сообщений: 21
По умолчанию

Мне кажется я схожу с ума..нашла ошибку в первом варианте что Seek производит сдвиг в конец документа..и получается там считывать нечего...во втором варианте то что файл открывается как бинарный...неудобно это...я написала третий вариант чтобы файл открывался как текстовый...файл открывается..создается новый..с нужным нам названием..но внутри него числа не получаются

Пожалуйста помогите понять...В ЧЕМ ЖЕ ЗДЕСЬ ОШИБКА!!!.Я уже умираю от своей тупости(((


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

int main ()
{
clrscr();
char file1[256];
char file2[256];

FILE *f;
FILE *g;
size_t kol;
double buff[10];
int i=1;

printf("vvedite file1:\n");
scanf("%s",file1);
printf("vvedite file2:\n");
scanf("%s",file2);


f=fopen(file1,"rt");
if (f==0)
	 { fclose(f);
		 g=fopen(file2,"rt");
		 if (g==0)
			 {
				 fclose(g);
				 printf("Ne vipolnjetca uslovij");
			 }
			 else
					 {
						 while((kol=fscanf(g,"%lf",&buff[i]))>0)
						 {
							kol+=kol;
							i=++i;													                           }
						 f=fopen(file1,"wt");
						 fprintf(f,"%f\n",buff[i]);
						 fprintf(f,"%f\n",buff[1]);
						 fclose(g);
						 fclose(f);

					 }
	 }
else
	 {

		 while((kol=fscanf(f,"%lf",&buff[i]))>0)
		 {
			kol+=kol;
			i=++i;
		 }
		 g=fopen(file2,"wt");
		 fprintf(g,"%f\n",buff[i]);
		 fprintf(g,"%f\n",buff[1]);
		 fclose(g);
		 fclose(f);

   }



getch ();
return 0;
}

Последний раз редактировалось Sazary; 03.12.2009 в 20:25.
Корделия вне форума Ответить с цитированием
Старый 02.12.2009, 00:39   #12
Корделия
Пользователь
 
Регистрация: 28.04.2009
Сообщений: 21
По умолчанию

Я выводила на экран значения kol которые должны получаться при каждом шаге цикла...и они постоянно два..хотя по моей задумке..должно считываться только одно число..не понимаю почему так все получилось(((
Корделия вне форума Ответить с цитированием
Старый 03.12.2009, 20:25   #13
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

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

int main ()
{

char file1[256];
char file2[256];

FILE *f;
FILE *g;
size_t kol=0;
double buff[10];
int i=0;

printf("vvedite file1:\n");
scanf("%s",file1);
printf("vvedite file2:\n");
scanf("%s",file2);


f=fopen(file1,"rt");
if (f==0)
 { 
  fclose(f);
  g=fopen(file2,"rt");
  if (g==0)
   {
   fclose(g);
   printf("Ne vipolnjetca uslovij");
   }
  else
  {
    while(fscanf(g,"%lf",&buff[i])!=EOF)
     ++i; 
    f=fopen(file1,"wt");
    fprintf(f,"%lf\n",buff[i-1]);
    fprintf(f,"%lf\n",buff[0]);
    fclose(g);
    fclose(f);
  }
 }
else
 {
  while(fscanf(f,"%lf",&buff[i])!=EOF)
    ++i;

  g=fopen(file2,"wt");
  fprintf(g,"%lf\n",buff[i-1]);
  fprintf(g,"%lf\n",buff[0]);
  fclose(g);
  fclose(f);
 }

getch ();
return 0;
}
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

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


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами ФЁкЛА Общие вопросы C/C++ 8 26.02.2009 00:16
Работа с файлами Joxter Помощь студентам 4 08.10.2008 01:17
Работа с файлами. tresh Паскаль, Turbo Pascal, PascalABC.NET 3 05.10.2008 23:32
Работа с файлами Acros Помощь студентам 5 14.02.2007 18:40