File SONGUYEN.IN không nhận được giá trị

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#define SO_TOI_DA 100

void hoanvi(int A[],int vitri1,int vitri2)
{
    int container;
    container = A[vitri1];
    A[vitri1] = A[vitri2];
    A[vitri2] = container;
}
/* Nhap vao file SONGUYEN.IN nhung so ngau nhien */
int IN_FILE()
{
    FILE* SONGUYEN_IN = NULL ;
    SONGUYEN_IN = fopen("SONGUYEN.IN.txt","w");
    if(SONGUYEN_IN != NULL)
    {
        int songaunhien;
        for(int i =0;i<SO_TOI_DA;i++) fprintf(SONGUYEN_IN,"%d\n",songaunhien=rand());
        fclose(SONGUYEN_IN);
        return 1;
    }
    else return 0;
}
/* Nhap nhung so ngau nhien co trong file SONGUYEN.IN vao Array roi sap xep chung*/
int sapxepsonguyen(int Array[])
{
    FILE* SONGUYEN_IN = NULL; SONGUYEN_IN = fopen("SONGUYEN.IN.txt","r");
    if(SONGUYEN_IN!=NULL)
    {
      for(int i = 0; i<SO_TOI_DA;i++)
      {
          fscanf(SONGUYEN_IN,"%d",&Array[i]);
          printf("%d ",Array[i]);
      }
      for(int i =0;i<SO_TOI_DA-1;i++)
      {
          for(int j =i+1;j<SO_TOI_DA;j++)
          {
              if(Array[i] > Array[j]) hoanvi(Array,i,j);
          }
      }
      fclose(SONGUYEN_IN);
      return 1;
    }
    else return 0;

}
/*Nhap cac gia tri da duoc sap xep vao file SONGUYEN.OUT*/
void OUT_FILE(int A[])
{
    FILE* SONGUYEN_OUT = NULL; SONGUYEN_OUT=fopen("SONGUYEN.OUT.txt","w");
    for(int i =0;i<SO_TOI_DA;i++)
    {
        fprintf(SONGUYEN_OUT,"%d\t",A[i]);
    }
    fclose(SONGUYEN_OUT);
}
int main()
{
       srand(time(NULL));
       int A[SO_TOI_DA];
       if(IN_FILE == 0 ) printf("ERROR !!");
       if(sapxepsonguyen(A) == 0 ) printf("ERROR !!");
       OUT_FILE(A);
}

.
Chương trình chạy được nhưng chỉ có file SONGUYEN.OUT là được ghi dữ liệu vào còn file SONGUYEN.IN thì không. Trong khi đó mảng Array lại lấy giá trị từ file SONGUYEN.IN ???
Anh chị nào giải thích giúp em với !

à dòng if(IN_FILE == 0 ) printf(“ERROR !!”); thì IN_FILE thiếu dấu () nên sai,
có ai biết cách chỉnh sao cho notepad như thế này không.

Chọn Format > Font > Chọn phông New Courier hoặc tương tự.

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?