13.10-1
int main(void)
{
int *fp;//应该是文件指针,不是整数型指针FILE *fp;
int k;
fp=fopen("gelatin"); //没有第二参数if((fp=fopen("gelatin","w"))==NULL){puts("error!");exit(1);}
for(k=0;k<30;k++)
fputs(fp,"Nanette eats gelatin. ");//参数类型不正确fputs("Nanette...",fp);
fclose(gelatin);//应该关闭指针而不是文件名if(fclose(fp)!=0)puts("error!");
return 0;
}
13.10-2
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
int main(int agc,char *argv[])
{
int ch;
FILE *fp;
if(agc<2)
exit(2);
if((fp=fopen(argv[1],"r"))==NULL)
exit(1);
while((ch=getc(fp))!=EOF)
if(isdigit(ch))
putchar(ch); //只输出数字类型
fclose(fp);
return 0;
}
13.10.3
#include<stdio.h>
FILE *fp1,*fp2;
char ch;
fp1=fopen("te","r");
fp2=fopen("re","w");
//并且,假设两个文件都已被成功地打开了,为下面的函数调用提供缺少函数:
a.ch=getc(//fp1);
b.fprinf(stdout,"%c\n",//ch);
c.putc(//ch,//fp2);
d.fclose(//fp1);//关闭te文件