Примерно такую прогу обычно сдают студенты 2-го курса.В прогу входит открытие файла, записать в файл массива, чтение из файла в массив и сортировка массива методом перебора(Прога написанна на Turbo C++) Code: #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <iostream.h> #include <time.h> void write_file(FILE *f, char *file_name,int size); int main() { int a; FILE *f1; srand(time(NULL)); char *file_name = "file_in.txt"; char array[256]; printf("Random massiv:\n"); f1 =fopen(file_name,"wr"); if(f1==NULL) printf("Error open file"); else { for(int i=0;i<256;i++) { a = rand() % 100; array[i] = a; if(i>0&&i<254) { fprintf(f1,"%d,",array[i]); printf("%d,",array[i]); } if(i==255) { fprintf(f1,"%d.",array[i]); printf("%d.",array[i]); } } fclose(f1); } getch(); write_file(f1,file_name,256); clrscr(); return 0; } void write_file(FILE *f,char *file_name, int size) { FILE *file_out; file_out = fopen("file_out.txt","w"); f = fopen(file_name,"r"); int int_from_file,i=0; char c; char mass[256]; while(fscanf(f,"%d %c",&int_from_file,c)!=EOF) { mass[i] = int_from_file; i++; } int min; int temp; for(int r=0;r<size-1;r++) { min = r; for(int j=r+1;j<size;j++) { if(mass[j]<mass[min]) { min=j; } } temp = mass[r]; mass[r] = mass[min]; mass[min] = temp; } fclose(f); if(file_out==NULL) printf("Error open file"); else printf("\nOtsortirovanii massiv\n"); for(int d=0;d<size;d++) { if(d>0&&d<size) { fprintf(file_out,"%d,",mass[d]); printf("%d,",mass[d]); } if(d==size-1) { fprintf(file_out,"%d.",mass[d]); printf("%d.",mass[d]); } } fclose(file_out); getch(); } Если кому что не понятно , пишите ответим
Вообще не могу понять зачем эта тема? Уже есть тема для помощи студентам с лабами, хватит засирать раздел!
Вообще, по правилам языка С++ , если функция main() имеет тип возвращаемого значения void, то она должна заканчиваться так exit (0), где 0-код возврата
Нет стандарта у main, и не обязательно она возвращать int. Например могу еще и вот так написать Code: void main(void) { .... } И это не будет считаться за ошибку, т.к main это главный поток программы и он должен быть не обязательно int А эта тема создана для студентов и всё на это
По стандарту всё-таки int. Есть (плохие) компилеры, которые это глотают, но вообще это некорректно. Программа должна хоть что-то отдавать ОС, т.е. обычно 0 в случае отсутствия ошибки - это весьма удобно, так как exit code тоже можно обработать уже в самой ОС, например так: Code: ./proga if [ $? -ne 0 ]; then echo "Shit happens"; fi
Да всетаки соглашусь, что main должна быть int. Гуглил на счет main и в некоторых стaтьяx пишут: Code: viod main() { ... } Все таки это не правильно! Действительно правильней будет так: Code: int main() { ... return 0; } ->http://ru.wikipedia.org/wiki/C%2B%2B
отличная тема void main чем не угодил? "плохие компилеры глотают" оО в данном случае, имхо, никакой разницы, что возвращает main нет. да и тема не об этом. да и не там.