凉拌小鱼干儿 发表于 2021-1-13 20:18:52

S1E2作业求助!!!

S1E2"动动手”windows系统的那个代码第八行,我用Dev一直显示错误,为什么啊?这这这卡了我半天了,呜呜呜{:10_266:}

#include <io.h>
#include <direct.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#定义MAX 256

总长

int countLines(const char *文件名);
void findAllCodes(const char * path);
void findALLFiles(const char * path);

int countLines(const char *文件名)
{
      文件* fp;
      int count = 0;
      温度
      
      如果((fp = fopen(文件名,“ r”))== NULL)
      {
                fprintf(stderr,“无法打开文件:%s \ n”,文件名);
                返回0;
      }
      
      而((temp = fgetc(fp))!= EOF)
      {
                如果(temp =='\ n')
                {
                        数++;
                }
      }
      
      fclose(fp);
      
      返回计数;
}

无效findAllCodes(const char * path)
{
      struct _finddata_t fa;
      长柄
      char thePath ,target ;
      
      strcpy(thePath,path);
      if((句柄= _findfirst(strcat(thePath,“ /*.c”),&fa))!= -1L)
      {
                做
                {
                        sprintf(target,“%s /%s”,path,fa.name);
                        总数+ = countLines(目标);
                }同时(_findnext(handle,&fa)== 0);
      }
   
      _findclose(handle);
}

无效findALLDirs(const char * path)
{
      struct _finddata_t fa;
      长柄
      char thePath ;
      
      strcpy(thePath,path);
      if((句柄= _findfirst(strcat(thePath,“ / *”),&fa))== -1L)
      {
                fprintf(stderr,“%s路径错误!\ n”,path);
                返回;
      }
   
      做
      {      
                如果(!strcmp(fa.name,“。”)||!strcmp(fa.name,“ ..”)))
                        继续;
                  
                if(fa.attrib == _A_SUBDIR)
                {      
                        sprintf(thePath,“%s /%s”,path,fa.name);
                        findAllCodes(thePath);
                        findALLDirs(thePath);
                }
      }同时(_findnext(handle,&fa)== 0);
   
      _findclose(handle);   
}

int main()
{
      char path =“。”;
      
      printf(“计算中... \ n”);
      
      findAllCodes(path);
      findALLDirs(path);
      
      printf(“目前你总共写了%ld行代码!\ n \ n”,总计);
      系统(“暂停”);
      
      返回0;
}

昨非 发表于 2021-1-13 20:24:56

本帖最后由 昨非 于 2021-1-13 20:38 编辑

?代码里怎么会有这么多中文?

刚刚看了答案里的代码没问题,是你复制错了吧

凉拌小鱼干儿 发表于 2021-1-13 21:11:45

啊啊啊啊啊,我知道了浏览器把英文给我翻译成中文,谢谢你{:10_254:}

八咫乌 发表于 2021-1-13 22:05:14

你要是手打不会出现这种问题
页: [1]
查看完整版本: S1E2作业求助!!!