gpt4 book ai didi

c - 用c语言打印和扫描文件

转载 作者:行者123 更新时间:2023-11-30 17:43:09 25 4
gpt4 key购买 nike

我正在用 c 编写一个程序,其中包含名称和数字的文件。用户输入一个数字,然后它应该打印出旁边的名字。该文件看起来像这样...

154 Sam
245 Jane
345 Joe

我不确定如何在匹配用户的输入后仅打印文件中的某些单词,但我确实知道当我使用 fgets 和 fscanf 时它会打印整个文件

到目前为止我已经

FILE *pf;
pf = fopen("C:\\Sample.text", "a+");
char str[200];
char input2[10];
printf("\nPlease enter a number:");
scanf("%s", &input2);`

while(!feof(pf))
{
fscanf(pf,"%s/n",str);

if (strcmp(str,input2)==0)
{
printf("The First name is %s\n",fgets(str,10,pf));
}
}

最佳答案

有多种方法可以将一行分成几个部分,以便您可以单独处理它们,但由于您已经在使用 scanffscanf 您可能需要考虑sscanf。假设您已将文件中的整行读入 str,并且该行同时包含数字和名称:

sscanf(str, "%s %s", number_str, name_str);

会将行上的第一个单词读入 number_str 并将行上的第二个单词读入 name_str

关于c - 用c语言打印和扫描文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20295842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com