FILE *fp; while(!feof(fp)) { fscanf(fp,"%s%d%lf",a,&b,&c);//这里%s对应的a不需要加上取地址符号&,因为a为数组名称,其本身就表示该数组的首地址
printf("%s%d%lf",a,b,c) }
fscanf可以正确操作的txt文件的编码方法是ANSIfscanf 函数的正确调用形式是BG视讯 ,以下任何一种编码方法都不能使该函数正常执行:UTF-8,Unicode,Unicode大端字节
如果txt文本中的内容是(写对应于上述三个数据):
张三18 1. 74
。 。
数据和数据需要用制表符/或空格分隔。数据就像scanf()函数一样。如果数据用逗号分隔,则还必须将逗号添加到scanffscanf 函数的正确调用形式是凤凰体育 ,例如scanf(“%d,%d”yabobet ,a亚博app ,b);再次输入数据时,必须输入1,5才能输入正确
但是在这里尝试使用fscanf()函数后,相同的效果没有出现,稍后将解决并更新
上菜以显示效果:
#include老王#include int main() { int num; char name[20]; double height; FILE *fp; fp = fopen("d:\\1.txt", "r+");//“r+” 以可读写方式打开文件,该文件必须存在,d:\\1.txt表示d盘根目录下的1.txt文件 if (fp == NULL) { printf("Cannot open the file!\n"); exit(0); } printf("学号\t姓名\t身高\n"); while (!feof(fp)) { fscanf(fp, "%d%s%lf", &num, name, &height); printf("%d\t%s\t%g", num, name, height); } printf("\n"); fclose(fp);//要记得关闭文件 return 0; }
最新评论