这是我写的程序,为什么输入完数据后就出错?!
#include <stdio.h>
#include <stdlib.h>
void main()
{
FILE * fp ;
if ( (fp = fopen("f1.txt","r")) == NULL )
{
printf ( "cannot open this file\n" ) ;
exit (0) ;
}
int a[10] = {0} ;
for ( int i = 0 ; i < 10 ; i ++ )
{
scanf ( "%d" , &a[i] ) ;
}
for ( i = 0 ; i < 10 ; i ++ )
{
fprintf ( fp , "%5.d" , a[i] ) ;
}
fclose(fp) ;
int b[10] = {0} , sum = 0 ;
fp = fopen ("f1" , "r+") ;
for ( i = 0 ; i < 10 ; i ++ )
{
fread ( &b[i] , 4 , 1 , fp ) ;
}
fclose (fp) ;
for ( i = 0 ; i < 10 ; i ++ )
{
sum += b[i] ;
printf ( "%d " , b[i] ) ;
}
printf ( "\nsum=%d\n" , sum ) ;
}