鱼C论坛

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

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

    [复制链接]
发表于 2021-9-8 17:07:03 | 显示全部楼层
零基础入门学习C语言封面
《零基础入门学习C语言》
小甲鱼 著
立即购买
#include <io.h>
#include <direct.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define MAX            256

long total;

int countLines(const char *fliename);
void findAllCodes(const char *path);
void findAllFilles(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)
                {
                                fprintf(stderr,"The path %s is 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
回复 支持 反对

使用道具 举报

发表于 2021-9-8 17:40:13 | 显示全部楼层
第一次学习
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-8 18:11:24 | 显示全部楼层
;
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 19:01:38 | 显示全部楼层
x
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 19:13:27 | 显示全部楼层
.
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 19:27:46 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 19:38:57 From FishC Mobile | 显示全部楼层
感谢
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 19:39:29 From FishC Mobile | 显示全部楼层
感谢
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 20:07:51 | 显示全部楼层
答案是啥
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-8 20:29:16 From FishC Mobile | 显示全部楼层
1111
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 20:37:39 | 显示全部楼层
0、只懂二进制的0和1
1、机器语言
2、编译
3、直接编译、不直接编译
4、能
5、将字节码发送给解释器,由解释器逐句翻译给CPU
6.查表
7.亲们,趁敌人吃饭发动进功。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-8 20:38:02 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 21:07:30 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 21:16:50 | 显示全部楼层
0.只认识二进制的0和1
1.机器语言
2.编译
3.前者直接编译出cpu可执行文件,后者只是编译成中间代码后借助解释器来逐句编译成机器语言
4.能
5.借助解释器
6.查表
7.......趁敌人吃饭时发动进攻
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-8 21:49:05 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 21:59:42 | 显示全部楼层
0.计算机只看的懂特定的语言
1.1和0
2.编译
3.需要编译的过程
4.可以
5.不知道
6.对照表
。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-8 22:00:08 | 显示全部楼层
0.计算机是用二进制   只能直接读取0和1
1.CPU唯一认识机器语言
2.编译
3.是否直接编译成机器语言被CPU读取
4.可以,他们的内核都是用C语言编写
5.解释型不会先编译成机器语言,需要经过中间代码,用解释器才可以被CPU读取
6.节奏长短和数量对应英文字母和数字
7.亲们趁敌人吃饭时发动进攻
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-8 22:42:38 | 显示全部楼层
上传不了图片orz
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-8 23:01:29 | 显示全部楼层
偷瞄
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-8 23:07:16 | 显示全部楼层
查看参考答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-27 01:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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