peanutfs13 发表于 2021-4-11 11:17:36

查看答案

yunli珏 发表于 2021-4-11 13:45:56

第一个程序 | 课后测试题及答案

Heec 发表于 2021-4-11 14:58:40

学习使我快乐

llcy 发表于 2021-4-11 15:43:25

huof

bigfraud 发表于 2021-4-11 15:54:52

windows的 我手打一遍过不了 复制一遍还是过不了 呜呜呜

kylece 发表于 2021-4-11 16:07:20

为什么我显示的一直都是0行
{:10_266:}

AALL 发表于 2021-4-11 16:08:30

{:5_102:}

AALL 发表于 2021-4-11 16:17:23

好家伙,学习了第一个程序,一看作业。一头雾水,啥机动,什么轮的,什么101行代码的。蒙了

Ethan惊天 发表于 2021-4-11 16:21:59

666

851850865 发表于 2021-4-11 17:17:26

123

lVIE 发表于 2021-4-11 17:36:26

怎么上传图片?

sky7458 发表于 2021-4-11 17:38:45

11

cai11 发表于 2021-4-11 17:42:56

29:2: 错误:expected ‘;’ before ‘{’ token
{

yqym 发表于 2021-4-11 17:44:32

{:5_109:}

dingfei1994 发表于 2021-4-11 18:28:23

0.计算机只懂得二进制的0和1
1.机器语言
2.编译
3.编译型语言编译出来的机器语言可以直接被电脑执行,解释型语言则生成中间代码需要解释器翻译给电脑执行。
4.不能
5.需要通过不同的解释器
6.查表
7. qin men chen di ren chi fan shi fa dong jin gong





白色燕尾服 发表于 2021-4-11 18:57:47

谢谢小甲鱼

zzone 发表于 2021-4-11 19:35:05

111

kkk815 发表于 2021-4-11 20:14:22

对答案来啦!

肥甲鱼c 发表于 2021-4-11 20:16:01

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com

shilinbing 发表于 2021-4-11 20:22:53

#include <stdio.h>
#include <unistd.h>
#include <dirent.h>
#include <string.h>
#include <stdlib.h>
#include <sys/stat.h>

#define MAX 256

long total;

int countLines(const char *filename);
int isCode(const char *filename);
void findAllDirs(const char *path);

int countLines(const char *filename)
{
      FILE *fp;
      int count = 0;
      int temp;

      if ((fp = fopen(filename, "r")) == NULL)
      {
                fprintf(stderr, "Can not open the file: %s\n", filename);
                return 0;
      }

      while ((temp = fgetc(fp)) != EOF)
      {
                if (temp == '\n')
                {
                        count++;
                }
      }

      fclose(fp);

      return count;
}

int isCode(const char *filename)
{
      int length;

      length = strlen(filename);
      
      if (!strcmp(filename + (length - 2), ".c"))
      {
                return 1;
      }
      else
      {
                return 0;
      }
}

void findAllDirs(const char *path)
{
      DIR *dp;
      struct dirent *entry;
      struct stat statbuf;

      if ((dp = opendir(path)) == NULL)
      {
                fprintf(stderr, "The path %s is wrong!\n", path);
                return;
      }

      chdir(path);
      while ((entry = readdir(dp)) != NULL)
      {
                lstat(entry->d_name, &statbuf);

                if (!strcmp(".", entry->d_name) || !strcmp("..", entry->d_name))
                        continue;

                if (S_ISDIR(statbuf.st_mode))
                {
                        findAllDirs(entry->d_name);
                }
                else
                {
                        if (isCode(entry->d_name))
                        {
                              total += countLines(entry->d_name);
                        }
                }
      }

      chdir("..");
      closedir(dp);
}

int main()
{
      char path = ".";

      printf("计算中...\n");

      findAllDirs(path);

      printf("目前你总共写了 %ld 行代码!\n\n", total);

      return 0;
}
页: 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 [1153] 1154 1155 1156 1157 1158 1159 1160 1161 1162
查看完整版本: S1E2:第一个程序 | 课后测试题及答案