Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <stdio.h>
- #define MAX 5
- int main()
- {
- FILE *file;
- file = fopen("test","wb");
- for(int i = 0; i<MAX; i++)
- {
- int b = i+3*i;
- fwrite(&b,sizeof(int),1,file);
- }
- fclose(file);
- int n = 0;
- file = fopen("test","rb");
- puts("Текущее содержимое файла:");
- while(!feof(file))
- {
- int b;
- fread(&b,sizeof(int),1,file);
- if(!feof(file))
- {
- printf("%d ",b);
- n++;
- }
- }
- puts("");
- fclose(file);
- while(true)
- {
- printf("Добваить число в файл?(1/0): ");
- int choise;
- scanf("%d",&choise);
- if(choise)
- {
- int add;
- printf("Введите число: ");
- fflush(stdin);
- scanf("%d",&add);
- file = fopen("test","ab+");
- n++;
- fwrite(&add,sizeof(int),1,file);
- fclose(file);
- file = fopen("test","rb+");
- int temp,i = 0;
- do
- {
- fread(&temp,sizeof(int),1,file);
- if(add>temp) i++;
- }while(add>temp && (!feof(file)));
- int j = n-2, s_temp;
- while(j>=i)
- {
- fseek(file,sizeof(int)*j,SEEK_SET);
- fread(&temp,sizeof(int),1,file);
- fread(&s_temp,sizeof(int),1,file);
- fseek(file,sizeof(int)*j,SEEK_SET);
- fwrite(&s_temp,sizeof(int),1,file);
- fwrite(&temp,sizeof(int),1,file);
- j--;
- }
- fclose(file);
- }
- else break;
- }
- file = fopen("test","rb");
- while(!feof(file))
- {
- int b;
- fread(&b,sizeof(int),1,file);
- if(!feof(file))
- {
- printf("%d ",b);
- }
- }
- fclose(file);
- puts("");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement