鱼C论坛

 找回密码
 立即注册
楼主: 小甲鱼

[课后作业] S1E2:第一个程序 | 课后测试题及答案

    [复制链接]
发表于 2022-1-28 14:20:27 | 显示全部楼层
零基础入门学习C语言封面
《零基础入门学习C语言》
小甲鱼 著
立即购买
答案
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-1-28 15:58:43 | 显示全部楼层
看一下答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-28 16:00:31 | 显示全部楼层
0:计算机只能识别和接受由0和1组成的指令
1:机器语言
2:编译
3:编译型语言直接把源代码编译成机器语言,而解释型语言是把源代码转换成中间代码,然后由解释器翻译给CPU来执行
4:不能
5:将源代码转化成中间代码,再经由解释器翻译
6:查表
7:亲们趁敌人吃饭时发动进攻
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-28 16:12:28 | 显示全部楼层
q
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-1-28 16:31:14 | 显示全部楼层
66666
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-28 18:13:51 | 显示全部楼层
答案
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-1-28 18:17:48 | 显示全部楼层
I Love fishc
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-28 20:36:50 | 显示全部楼层
来了
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-1-28 21:43:00 | 显示全部楼层
Vim下的复制粘贴好复杂
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-28 22:23:40 | 显示全部楼层
运行总出错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-28 22:32:23 | 显示全部楼层
#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[MAX] = ".";

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

        findAllDirs(path);

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

        return 0;
}
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-29 10:03:30 | 显示全部楼层
从0开始,加油
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-29 10:13:18 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-1-29 10:35:00 | 显示全部楼层
0.因为计算机只懂二进制
1.机器语言
2.预处理
3.速度不同
4.能
5.??
6.用特殊字符代表具体的字母
7.???
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-29 11:04:37 | 显示全部楼层
ll
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-1-29 11:17:36 | 显示全部楼层
计算中...
The path ./Com/dmp is wrong!
The path ./config is wrong!
The path ./drivers/DriverData is wrong!
The path ./DriverState is wrong!
The path ./ias is wrong!
The path ./LogFiles/Fax/Incoming is wrong!
The path ./LogFiles/Fax/Outgoing is wrong!
The path ./LogFiles/Firewall is wrong!
The path ./LogFiles/WMI/RtBackup is wrong!
The path ./MsDtc is wrong!
The path ./networklist is wrong!
The path ./SleepStudy is wrong!
The path ./spool/PRINTERS is wrong!
The path ./spool/SERVERS is wrong!
The path ./sru is wrong!
The path ./Tasks is wrong!
The path ./wbem/MOF is wrong!
The path ./WDI is wrong!
目前你总共写了 0 行代码!

请按任意键继续. . .
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-29 11:22:50 | 显示全部楼层
0.原理上只认识二进制的0和1
1.机器语言,也叫机器码,由纯数字组成(因为 CPU 只认识二进制 0 和 1)
2.编译
3.对于 CPU 而言,编译型语言是将源代码先通过编译器编译为 CPU 认识的机器码(可执行文件),此后 CPU 随时都可以直接执行编译后的机器码;而解释型语言则不直接编译成机器码,而是将源码转换成中间代码,然后发送给解释器,由解释器逐句翻译给 CPU 来执行
4.不能。因为可执行文件在执行之前,操作系统要有一些准备工作,因为不同的操作系统,准备工作是不同的,所以可执行文件的格式不完全相同。比如 Windows 上大部分可执行文件为 PE 格式,而 Linux 上大部分可执行文件为 ELF 格式。格式不同导致了不同的可执行文件无法跨平台直接使用
5.解释型编程语言为每个操作系统专门定制一个解释器作为中转,因此解释器只需提供一个统一的入口即可
6.莫斯密码的原理非常简单,就是查表
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-29 12:24:19 | 显示全部楼层
123
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-1-29 15:06:59 | 显示全部楼层
看答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-29 15:18:25 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-29 23:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表