鱼C论坛

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

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

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

使用道具 举报

发表于 2020-7-8 00:45:27 | 显示全部楼层
学习使我快乐
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 09:53:02 | 显示全部楼层
0. 因为他们呢只能看懂二进制
1. 机器码
2. 编译
3. 编译型语言会直接转换成机器码,解释型不会
4.可以
5.同一个解释器
6.编译,一个代码对应一个代码
7.QINMENCHENDIRENCHIF(这也太长了把)
动手:
写了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 10:09:42 | 显示全部楼层
111
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 10:42:07 | 显示全部楼层
谢谢,练习中。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 10:42:08 | 显示全部楼层
0.因为计算机的大脑是CPU,CPU负责j计算机大部分日常的计算功能,而CPU原理上只认识0和1。
1.机器语言,也叫机器码,由纯数字组成。
2.编译。
3.对于 CPU 而言,编译型语言是将源代码先通过编译器编译为 CPU 认识的机器码(可执行文件),此后 CPU 随时都可以直接执行编译后的机器码;而解释型语言则不直接编译成机器码,而是将源码转换成中间代码,然后发送给解释器,由解释器逐句翻译给 CPU 来执行。
4.不能。因为可执行文件在执行之前,操作系统要有一些准备工作,因为不同的操作系统,准备工作是不同的,所以可执行文件的格式不完全相同。比如 Windows 上大部分可执行文件为 PE 格式,而 Linux 上大部分可执行文件为 ELF 格式。格式不同导致了不同的可执行文件无法跨平台直接使用。
5.解释型编程语言为每个操作系统专门定制一个解释器作为中转,因此解释器只需提供一个统一的入口即可。
6.一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号
7.敌人现在正在吃饭。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 10:49:29 | 显示全部楼层
老师,为什么我这样打完后会这样?你能看看我那里错了吗?我检查了,代码应该没敲错。可能是编译的文件夹不对?
2020-07-08_104444.png
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 11:06:39 | 显示全部楼层
0:C语言只认识二进制
1:机器语言
2:编译
3:编译型语言,在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。
解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。
4:不能
5:可移植性高
6:查表
7:亲们趁敌人吃饭时发动进攻
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 11:48:10 | 显示全部楼层
0.
1.机器码
2.编译
3.需不需要解释器
4.可以
5.使用解释器
6.查表
7.
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 12:03:51 | 显示全部楼层
s
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 14:08:24 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 14:09:06 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 16:21:26 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 16:27:30 | 显示全部楼层
0.计算机只能识别“0”和“1”两个数
1.机器语言
2.转译
3.编译的过程有差异
4.无法直接运行
5.将各程序封装成独立的模块
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 16:47:50 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 17:34:08 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 18:22:32 | 显示全部楼层
本帖最后由 tanmywu 于 2020-7-8 18:26 编辑

测试题
        0. 因为计算机只认识二进制
        1. 机器语言
        2. 编译
        3. 编译型语言:源代码最终编译为机器语言
        解释型语言:源代码先编译成别的文件,再由解释器编译成机器语言
        4. 能
        5. 源代码先编译成别的文件,再由解释器编译成机器语言
        6. 查表
        7. 亲们,趁敌人吃饭发起进攻
动手题
101行代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-8 19:01:45 | 显示全部楼层

作业

本帖最后由 Yamin. 于 2020-7-8 19:25 编辑

作业
1.jpg
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 20:51:09 | 显示全部楼层
写写!!!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-7-8 20:54:07 | 显示全部楼层

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

#define max       256

long total;

int countLines(const char *filename);
void findAllcodes(const char *path);
void findALLFiles(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;
}

void findAllCodes(const char *path)
{
             struct _finddata_t fa;
             long handle;
             char thePath[MAX], target[MAX];
             
             strcpy(thePath, path);
             if((handle = _findfirst(strcat(thePath, "%*.c"),&fa)) != -1L)
             {
                       do
                       {
                               sprintf(target, "%s/%s", path, fa.name);
                               total += countLines(target);
                           }while (_findnext(handle, &fa) ==0);
                 }
                 
                 _findclose(handle);
}

void findALLDirs(const char *path)
{
             struct _finddata_t fa;
             long handle;
             char thePath[MAX];
             
             strcpy(thepath, path);
             if((handle = _findfirst(strcat(thePath, "/*"),&fa)) == -1L)
             {
                       fprinth(stderr, "The path %s wrong!\n",path);
                     return;  
                 }
                 
                 do
                 {
                         if (!strcmp(fa.name,".") || !strcmp(fa.name,".."))
                            continue;
                           
                            if( fa.attrib == _A_SUBDIR)
                            {
                                    sprintf(thepath, "%s/%s",path, fa.name);
                                        findAllCodes(thePath);
                                        findALLDirs(thePath);
                                        }
                                        }while (_findnext(handle, &fa) == 0);
                                       
                                        _findclose(handle);
}

int main()
{
        char path[MAX] =".";
       
        printf("计算中...\n");
       
        findAllcodes(path);
        findALLDirs(path);
       
        printf("目前你总共写了 %ld 行代码! \n\n", total);
        system("pause");
       
        return 0;
}






   为什么那么多错的    ???
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-11 13:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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