从键盘上输入文件名,统计该文本文件中出现阿拉伯数字的个数,并输出。请根据提示,修改程序中的错误。#include<stdio.h> void main() { //---------------错误开始-------------- FILE fp; long cnt=0; char c,filename[20]; void createfile(); createfile(); scanf("%s",filename); fp=fopen(filename,"w"); while(feof(fp)) //---------------错误结束-------------- { c=fgetc(fp); if(c>='0'&&c<='9') cnt++; } printf("%ld",cnt); fclose(fp); }
时间: 2023-08-27 15:18:48 浏览: 148
#include<stdio.h>
void createfile(); // 函数声明
int main() {
FILE *fp; // 文件指针
long cnt=0;
char c,filename[20];
createfile(); // 调用函数
scanf("%s",filename);
fp=fopen(filename,"r"); // 打开文件
if(fp == NULL){ // 判断文件是否打开成功
printf("文件打开失败!\n");
return 0;
}
while(!feof(fp)) // 读取文件内容
{
c=fgetc(fp);
if(c>='0'&&c<='9')
cnt++;
}
printf("%ld",cnt);
fclose(fp); // 关闭文件
return 0;
}
void createfile(){ // 定义函数
FILE *fp;
fp=fopen("test.txt","w");
fprintf(fp,"1 2 3\n");
fprintf(fp,"4 5 6\n");
fprintf(fp,"7 8 9\n");
fclose(fp);
}
阅读全文