Xinbo_710 发表于 2019-5-31 03:26:34

感谢甲鱼哥🙏

18306567655 发表于 2019-5-31 11:38:45

看答案

RouRou. 发表于 2019-5-31 11:43:44

完成

18306567655 发表于 2019-5-31 11:49:06

我这个C-Free不可以哎
我自己写了一遍是0行代码
复制了也不行假软件......

huangyaoshan 发表于 2019-5-31 13:46:06

{:7_112:}

hahahahihihi 发表于 2019-5-31 17:27:20

啊,打了好久,手速也是慢啊

TreeLing 发表于 2019-5-31 20:40:43

1

阿哑yep 发表于 2019-5-31 21:53:02

已做完,参考答案

阿哑yep 发表于 2019-5-31 23:26:33

https://imgchr.com/i/V1A0iQ

尬聊皇帝可达鸭 发表于 2019-6-1 11:07:45

获取答案

kuman 发表于 2019-6-1 13:37:26

0、因为计算机系统基本上都是使用二进制系统
1、机器语言
2、编译
3、编译型语言在执行程序前会进行单独的编译过程,将代码翻译成机器语言;
解释型语言在运行的时候会将代码翻译成机器语言。
4、不行
5、在运行程序时将代码翻译成相应的机器语言,以此实现跨平台
6、汇编语言
7、亲们趁敌人吃饭时发动进攻
Linux
#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;
}

weiyonghang 发表于 2019-6-1 16:59:48

感谢楼主。

初文因果 发表于 2019-6-1 20:06:18

{:5_102:}

JulyJoker 发表于 2019-6-1 20:46:44

老师好厉害

m701030 发表于 2019-6-1 21:17:18

答好了,看答案

张小立 发表于 2019-6-2 00:45:08

老师为我这行会错呢 我是照着打的呀看不出来哪里出错了           printf("计算中...\n");
                       

1291917670 发表于 2019-6-2 03:16:29

xuexi

zzfzzf 发表于 2019-6-2 12:42:01

1.只能识别0和1
2.机器语言
3.
4.可以
5.

Madlifegirl 发表于 2019-6-2 13:01:26

1

a814297229d 发表于 2019-6-2 15:46:27

11
页: 296 297 298 299 300 301 302 303 304 305 [306] 307 308 309 310 311 312 313 314 315
查看完整版本: S1E2:第一个程序 | 课后测试题及答案