Форум программистов, компьютерный форум CyberForum.ru

Работа с файлами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Реализовать двусвязный список и обеспечить заполнение его данными и его сортировку по одному из полей входящих в него структур. http://www.cyberforum.ru/cpp-beginners/thread203415.html
Кто может помогите пожалуйста. Буду очень очень благодарен. Нужно написать на Си следующую программу: "Реализовать двусвязный список и обеспечить заполнение его данными и его сортировку по одному из полей входящих в него структур." Заранее большое спасибо.
C++ Функция вставки строки в строку #include "stdafx.h" #include "iostream" #include "stdio.h" #include "cstring" char* strins(char*sub,char*source,int p) {int i=0,s=strlen(source),k=strlen(sub),n=0; char source2; for (i;i<99;i++) source2='w'; http://www.cyberforum.ru/cpp-beginners/thread203412.html
C++ Сравнение алгоритмов сортировки ... алгоритм Шелла
Вопрос такой, для лабораторной работы нужно сравнить три алгоритма сортировки чисел ... так вот измеряю время работы : double start = GetTickCount(); // код double finish = GetTickCount(); cout << "Время: " << finish - start << endl; так вот, для разных размеров массива, время выполнения программы для сортировки пузырьком и сортировки выбором меняется от 16 и выше, 247 ..... 450 .... а...
C++ Англо-русский словарь
нужно написать программу "англо-русский и русско-английский словарь" база данных словаря должна содержать синонимичные варианты перевода слов программа должна обеспечит выбор посредством меню и выполнение одной из следующих функций: - загрузка базы данных из словоря (из файла) - выбор режима работы ( англо-русский или русско-английский) - вывод вариантов перевода заданного английского слова...
C++ Начало http://www.cyberforum.ru/cpp-beginners/thread203396.html
Подскажите программу для программирования на c/c++ и все прилагающиеся к ней инструменты(компиляторы и т.д.) и что лучше c или c++? в википедии пишут что с++ вышел из с но потом они развивались в разных направлениях спс
C++ архиватор Хаффмана Здравствуйте! Сейчас пишу архиватор Хаффмана. Вроде сделала. На небольших кусках текста все работает: и дерево строит верно (в ручную проверяла), и кодирует и декодирует. Весь текст я скаладываю в одну строку. Потом получаю закодированную строку с абракадаброй, а потом снова строку с исходным текстом. Но когда я подаю текст побольше, то программа глючит. Я проходила ее вручную: дело не в дереве,... подробнее

Показать сообщение отдельно
maxteam
2 / 2 / 0
Регистрация: 04.07.2010
Сообщений: 66
05.12.2010, 22:12  [ТС]     Работа с файлами
ksk , спасибо за ответ...хоть 1 человек отозвался..

ну дело в том что я пишу на СИ а не на Си++...

я сделал так

Код
for(i=0;i<k;i++)
fscanf(f2,"%f ",&(p+i)->price);
for(i=0;i<k;i++)
fscanf(f2,"%d ",&(p+i)->n_people);
а кому интересно вот вся прога...

Код
#include <stdio.h>

#define k 10

struct magazines
	{
	char names[30];
	float price;
	int n_people;
	};

main()
{
FILE *f1,*f2;
int i,j,max,max_pos;

char x,s[30];

struct magazines *p = malloc(k*sizeof(struct magazines));

/*zapus y file*/
struct magazines info[k]={{"Chip",17.99,200},
			                {"Hardware",32.00,11},
			                {"Xakep",50.00,1000},
			                {"Maxim",100.91,11000},
			                {"Eva",19.99,250},
			                {"Express",15.00,1000},
			                {"Exploit",2.00,8000},
			                {"Milw0rm",4.99,3350},
	                        {"Zarabotay",5.78,400},
			                {"History",36.99,50}
			               };

if((f1=fopen("magazines.txt","w"))==NULL||(f2=fopen("podp.txt","w"))==NULL) {puts("Error! Cannot open the files...");exit(1);}
for(i=0;i<k;i++)
  {
  fprintf(f1,"%s\n",info[i].names);
  fprintf(f2,"%.2f ",info[i].price);
  }
fclose(f2);

if((f2=fopen("podp.txt","a"))==NULL) {puts("Error!Cannot appent to file...");exit(1);}
fprintf(f2,"\n");
for(i=0;i<k;i++) fprintf(f2,"%d ",info[i].n_people);

fclose(f1);
fclose(f2);

/*Reading the files*/

/*#1(poslidovniy dostup)*/
if((f1=fopen("magazines.txt","r"))==NULL||(f2=fopen("podp.txt","r"))==NULL) {puts("Error! Cannot open the files to read...");exit(1);}
puts("poslidovn. dostyp...\n");
puts("File magazine.txt:\n");
while((x=fgetc(f1))!=EOF) printf("%c",x);
puts("\nFile podp.txt:\n");
while((x=fgetc(f2))!=EOF) printf("%c",x);

getch();

/*#2(pryamuy dostup)*/
puts("\n\n\npryamiy dostup...");
puts("\nFile magazine.txt:\n");
fseek(f1,0,0);
i=0;
while((fgets(s,sizeof(s),f1))!=NULL)
     {
     printf("%s",s);
     strcpy((p+i)->names,s);
     (p+i)->names[(j=strlen((p+i)->names))-1]='\0';
     i++;
     }
puts("\nFile podp.txt:\n");   
fseek(f2,0,0);     
while((fgets(s,sizeof(s),f2))!=NULL)
     printf("%s",s);     

getch();
   
/*dovidka pro populyarnist*/
fseek(f2,0,0);

for(i=0;i<k;i++)
fscanf(f2,"%f ",&(p+i)->price);
for(i=0;i<k;i++)
fscanf(f2,"%d ",&(p+i)->n_people);

max=(p+0)->n_people;
for(i=0;i<k;i++)
     if(max < (p+i)->n_people) {max = (p+i)->n_people;max_pos = i;}               

puts("\n\nNaibolshey popularnistiu polzyetsa:\n");
printf("Name\tCina\tKolichestvo podpischikov\n");
puts("----------------------------------------------");
printf("%s\t%.2f\t%d",(p+max_pos)->names,(p+max_pos)->price,(p+max_pos)->n_people);  
   
getch();

free(p);
}
 
Текущее время: 11:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru