Thứ Hai, 10 tháng 12, 2018

Lập Trình C: Thực hành cơ bản FILE

Cho file TXT có cấu trúc sau:
- Dòng đầu lưu giá trị một số nguyên dương n.
- Dòng còn lại lưu giá trị của một dãy số gồm n các số nguyên.
a. Đọc file trên, lưu dữ liệu đọc được vào mảng một chiều.
b. Xuất mảng ra màn hình.
c. Ghi các số nguyên tố có trong mảng vào file (ghi tiếp vào file đã có).


#include<stdio.h>
#include<stdlib.h>
#define MAX 100
#define link "F:\\input.txt"

void DocFile (int a[MAX], int n)
{
FILE *f;
f=fopen(link, "rt");
if(f==NULL)
{
printf("Khong mo duoc file");
exit(0);
}
fscanf(f, "%d", &n);
for(int i=0; i<n; i++)
fscanf(f, "%d", &a[i]);
fclose(f);
}

void XuatFile (int a[MAX], int n)
{
for(int i=0; i<n; i++)
printf("%d\t", a[i]);
}

int KTNT (int m)
{
int d;
d=0;
for(int i=1; i<m; i++)
{
if(m%i==0)
d++;
}
if(d==1)
return 1;
else return 0;
}

void GhiNT (int a[MAX], int n)
{
FILE *f;
f=fopen(link, "at");
fprintf(f, "\n");
for(int i=0; i<n; i++)
{
if(KTNT(a[i])==1)
fprintf(f, "%d ", a[i]);
}
fclose(f);
}

int main()
{
int a[MAX];
int n;
FILE *f;
f=fopen(link, "rt");
fscanf(f, "%d", &n);
DocFile(a, n);
XuatFile(a, n);
GhiNT(a, n);
return 0;
}


Share:

0 nhận xét:

Đăng nhận xét