|
|
发表于 2022-12-12 17:40:00
|
显示全部楼层
问答题答案:
动动手答案:
#include<io.h>
#include<直接.h>
#include<stdio.h>
#include<stdlib.h>
#include<字符串.h>
#define 最大 256
长总计;
int countLines(const char *filename);
void findALLCodes(const char *path);
void findALLFiles(consr char *path);
int countLines(const char *Filename)
{
文件 *fp;
整数计数=0;
整数温度;
if ((fp=fopen(文件名,"r"))=NULL)
{
fprintf(stderr,"无法打开文件:%s\n",文件名);
返回0;
}
而((temp=fgetc(fp))!=EOF)
{
if(temp=='\n')
{
计数++;
}
}
FCLOSE(FP);
返回计数;
}
void findAllCodes(const char *path)
{
结构_finddata_t FA;
长手柄;
char thePath[MAX],target[MAX];
strcpy(thePath,path);
if((handle=_findfirst(strcat(thePath,"/*.c"),&fa))!=-1L)
{
做
{
sprintf(target,"%s,%s",path,fa.name);
总计+=计数行(目标);
}while(_findnext(handle,%fa)==0);
}
_findclose(手柄);
}
void findALLDirs(const char *path)
{
结构_finddata_t FA;
长手柄;
char thePath[MAX];
strcpy(thePath,path);
if((handle=findfirst(strcat(thePath,"/*"),&fa))==-1L)
{
fprintf(stderr,"the path is wrong!\n",path);
返回;
}
做
{
if(!strcmp(fa.name,".")||!strcmp(fa.name,".."))
继续;
if(fa.attrib==_A_SUBDIR)
{
sprintf(thePath,"%s%s",path,fa.name);
查找所有代码(路径);
findALLDirs(thePath);
}
}while(_findnext(handle,&fa)==0);
_findclose(手柄);
}
int main()
{
字符路径[MAX]=".";
printf("计算中...\n");
查找所有代码(路径);
findALLDirs(path);
printf("目前你总共写了%1d行代码!\n\n",total);
系统("暂停");
返回 0;
}
|
|