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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2010, 17:33   #1
серг
Форумчанин
 
Регистрация: 02.11.2009
Сообщений: 179
По умолчанию работа с файлами в Си

проблема в том что не пойму принцип работы функций записи в файл и вывода его содержимого на экран прочитал много литературы но чет ничего дельного не нашел может невнимателно читал ??? помогите разобраться пожалуйста
нужно чтобы
в функции ввода исходные данные записывались в файл в файл;
в функциях обработки и вывода данные читать из файла, результат сохранять в файл
и вывод результата рабаты программы осуществлять из файла

программа вводит произвольно массив из 2о ти элементов и считает количество четных и нечетных элементов в нем
вот код

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

int read_m (int*MAS, int p);
int write_m (int*MAS, int p);
int raschet_ch (int*MAS, int p);
int raschet_n (int*MAS, int p);
int write_s (int a,int b);

int main ()
{ int const p=19;
  int mas[p];
  int*MAS;
  MAS=mas;
  int ch,n;
read_m (MAS,p);
write_m (MAS,p);
ch=raschet_ch (MAS,p);
n=raschet_n (MAS,p);
write_s(ch,n);

return(0);
 }
   int read_m (int*MAS, int p)
   {
	int i;
	FILE *file;
	void srand(unsigned int seed);
    int rand (void);
    srand ( (unsigned)time(NULL) );
 if ((file = fopen("1.txt","w")) == NULL)
     printf("Файл невозможно открыть или создать\n");
     else{
    for (i=0;i<p;i++)
   *(MAS+i)=rand()%100;
	fwrite(*(MAS+i));}
	 fclose(file);
    return(0);
   }


   int raschet_ch (int*MAS, int p)
   {
	int i;
    int ch=0;
	 FILE *file;
     if ((file = fopen("1.txt","w")) == NULL)
     printf("Файл невозможно открыть или создать\n");
     else{
   for (i=0;i<p;i++)
   if (*(MAS+i)%2==0)
   ch=ch++;
   int a=ch;
   fwrite(a);
   fclose(file);
   return(0);
   }

int raschet_n (int*MAS, int p)
   {
	int i;
   int n=0;
    FILE *file;
   if ((file = fopen("1.txt","w")) == NULL)
     printf("Файл невозможно открыть или создать\n");
     else{
   for (i=0;i<p;i++)
   if (*(MAS+i)%2!=0)
   n=n++;
   int b=n;
   fwrite(b);
   fclose(file);
   return(0);
   }

int write_s (int a,int b)
{ 
FILE *file;
if ((file = fopen("1.txt","w")) == NULL)
printf("Файл невозможно открыть или создать\n");
else{
fprintf("kolichestvo chetnbIx elementov: %d",a);
fprintf(" \n");
fprintf("kolichestvo nechetnbIx elementov: %d",b);
fclose(file);
getch();
return(0);
 }
серг вне форума Ответить с цитированием
Старый 03.02.2010, 21:08   #2
klsaymon
Пользователь
 
Регистрация: 15.01.2010
Сообщений: 22
По умолчанию

а в принципе что понять то не можешь?? я для записи в файл всегда fprintf использовал, а для чтения соответственно fscanf..
Не забываем повышать рейтинг(для тех, кому помог)...

Последний раз редактировалось klsaymon; 03.02.2010 в 21:12.
klsaymon вне форума Ответить с цитированием
Старый 04.02.2010, 09:07   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я бы делал такие функции:
Код:
 short int a[20],i;
 FILE* f;

void aga(){
 for(i=0;i<20;i++){
  //scanf("%d",&a[i]);
  a[i]=i;
 }
 fwrite(&a,sizeof(a)*sizeof(a[0]),1,f);
 fclose(f);
}

void ugu(){
 int c=0,n=0;
 FILE* e=fopen("c:\\temp\\aga2","w+");
 f=fopen("c:\\temp\\aga","r");
 fread(&a,sizeof(a)*sizeof(a[0]),1,f);
 for(i=0;i<20;i++){
  if(a[i]%2==0) {c++;}else{n++;}
 }
 fprintf(e,"Четные=%d Нечет=%d",c,n);
 fclose(e);
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами СИ Stases Общие вопросы C/C++ 7 03.01.2010 14:28
Работа с файлами Корделия Общие вопросы C/C++ 12 03.12.2009 20:25
Работа с файлами DM_bite Помощь студентам 4 20.09.2008 16:52
Работа с файлами DJ Socol Win Api 1 17.07.2007 09:18
Работа с файлами ShVad Общие вопросы Delphi 4 03.02.2007 10:43