zoukankan      html  css  js  c++  java
  • wc.exe

    这是一个由c语言实现的统计程序,它能正确统计程序文件的字符数、单词数、行数,以及递归处理目录下符合条件的文件和返回高级选项(代码行、空行、注释行)。

    代码如下:

    #include "stdio.h"

    #include "string.h"

    #include "stdlib.h"
     
    int charcalculate=0;
     
    int wordcalculate=0;
     
    int linecalculate=0;
     
    void calculate(char * file)
    {
        FILE * fp;
        char x;
        if((fp=fopen(file,"r"))==NULL)
        {
            printf("read file failed! ");
            exit(-1);
        }
        while(!feof(fp))
        {
            a=fgetc(fp);
            if(x!=' '&&x!=' '&&x!=' '&&x!=','&&x!='.'&&x!='!'&&x!=';'&&x!='=')
                charcalculate++;
            if(x==' '||x==' '||x==' '||x==','||x=='.'||x=='!'||x=='='||x==';')
                wordcalculate++;
            if(x==' '||x==' ')
                linecalculate++;
        }
        linecalculate++;
        charcalculate--;         
        fclose(fp);
    }
     
    int main(int argc, char* argv[])             
    {
        FILE *fp;
     
        calculate(argv[2]);
        while(1)
        {
            if((fp=fopen(argv[2],"r"))==NULL)
            {  
            printf("FileNull ");
            scanf("%s%s%s",argv[0],argv[1],argv[2]);
            continue;
            }
            else if(!strcmp(argv[1],"-c"))                 
                printf("File:%sCharNum:%d ",argv[2],charcalculate);
            else if(!strcmp(argv[1],"-w"))                  
                printf("File:%sWordNum:%d ",argv[2],wordcalculate);
            else if(!strcmp(argv[1],"-l"))                
                printf("File:%sLineNum:%d ",argv[2],linecalculate);
            else if(!strcmp(argv[1],"exit"))
            {
                printf("Exit! ");
                break;
            }
            else
                printf("NullPoint ");
            printf(" ");
            scanf("%s%s%s",argv[0],argv[1],argv[2]);
        }
        return 0;
         
    }
  • 相关阅读:
    数学基础详解 1——微积分
    logistic回归梯度上升优化算法
    决策树
    西瓜书学习笔记(1)——模型评估与选择
    关于map与set的一点理解;
    STL中的set容器的一点总结(转)
    HDOJ 题目分类
    Train Problem I(栈)
    猜数字(规律)
    Change the ball(找规律)
  • 原文地址:https://www.cnblogs.com/dbnbw/p/7593948.html
Copyright © 2011-2022 走看看