C文件题哪错了

来源:百度知道 编辑:UC知道 时间:2024/05/28 04:25:38
#include<stdio.h>
main()
{
FILE*fp;
char ch;
char filename{10};
scanf("%s",filename);
if((fp=fopen(filename,"w"))==NULL)
{printf("can not open the file\n");
exit(0);}
ch=getchar();
ch=getchar();
while(ch!='#')
{
fputc(ch,fp);putchar(ch);
ch=getchar();
}
fclose(fp);
}
总是出两处错误,说什么MISS ; 根本没少啊

定义数组可不是用{}啊,用[]
char filename{10},改成char filename[10];
还有,要用exit函数,要包含stdlib.h头文件。

改了下:
#include<stdio.h>
main()
{
FILE *fp;
char ch;
char filename[10];
scanf("%s",filename);
if((fp=fopen(filename,"w"))==NULL)
{
printf("can not open the file\n");
return;
}
ch=getchar();
ch=getchar();
while(ch!='#')
{
fputc(ch,fp);putchar(ch);
ch=getchar();
}
fclose(fp);
}

char filename{10}; 这句应该是中括号吧

char filename{10}; 这个应该是[10]