以下代码从文件中读取数字1的出现。我的问题是如何将这种情况替换为另一个数字(比如'4')并在文件中再次写回。 while循环将继续?
int next;
FILE *f;
if (!(f=fopen("C:\\Test\\Sign.txt", "rt")))
{
printf("File not existing\n");
}
else{
while((next=='1')!=EOF)
答案 0 :(得分:2)
适当的解决方案[包括最初的]将是:
#include <stdio.h>
#include <conio.h>
int f(FILE *);
int main(){
int num=0, next;
FILE *f;
if (!(f=fopen("C:\\Test\\Sign.txt", "rt")))
{
printf("File not existing\n");
}
else{
for(;;){
if((next=fgetc(f))== EOF) break;
if (next == '1') num++;}
}
printf("Found occurrences of digit 1 are %d\n", num);
getch();
}
for循环计算[在这种情况下]的出现次数,只要它通过fgetc分配给next的值为1的数字。