标题:一个在文件中查找字符,并且返回行号的程序。
取消只看楼主
清扬_栾
Rank: 1
等 级:新手上路
帖 子:7
专家分:4
注 册:2017-4-14
结帖率:0
已结贴  问题点数:20 回复次数:0 
一个在文件中查找字符,并且返回行号的程序。
虽然确实可以达到我想要的目标,但是总觉得剑走偏锋过甚了。有没有哪位大神,可以弄一个比较合乎常理的程序代码。
程序代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
    char c,b,buffer[256],data[35],*loc,buff[80];
    char fname[20];
    int count,x=0,y,a=0;
    FILE *fp;
    printf("请输入文件名: ");
    gets(fname);
    if((fp=fopen(fname,"rb"))==NULL)
    {
        printf("打开文件失败.\n");
        exit(1);
    }
    printf("请输入你要查找的内容.\n");
    scanf("%s",data);
    for(count=0;count<256;count++)
    {
        c=fgetc(fp);
        if(!feof(fp))
        {
            buffer[count]=c;
            buffer[count+1]='\0';
        }
        if(c=='\n')
        {
            x++;
        }
    }
    loc=strstr(buffer,data);
    if(loc==NULL)
    {
        printf("您所要的数据不再其中.\n");
        exit(1);
    }
    strcpy(buff,loc);
    for(y=0;y<strlen(buff);y++)
    {
        c=buff[y];
        if(c=='\n')
        {
            a++;
        }
    }
    printf("您所要的数据在第 %d 行.\n",(x-a)+1);
    fclose(fp);
    return 0;
}
搜索更多相关主题的帖子: color 
2017-05-03 17:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-476667-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.589748 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved