2023-2024-1 学号20231315第十周学习总结

学期:2023-2024-1 学号:20231315《计算机基础与程序设计》第十周学习总结

作业信息

这个作业属于哪个课程 2023-2024-1 《计算机基础与程序设计》
这个作业要求在哪里 2023-2024-1 《计算机基础与程序设计》
这个作业的目标 学习计算机科学概论第10,11章和《C语言程序设计》第8章
作业正文 https://www.cnblogs.com/xisngsiyuan/p/17873660.html

教材学习内容总结

本周我自学了计算机科学概论第12,13,14章和《C语言程序设计》第9章的相关内容,并对两本教材进行了总结。

计算机科学概论第12,13,14章总结

计算机科学概论第12,13,14章主要介绍了如何进行信息管理,人工智能的基本知识,摸你图形学游戏等的基本知识。

《C语言程序设计》第9章总结

第9章主要介绍了指针,以及与指针有关的知识

教材学习中遇到的问题

计算机科学概论第12,13,14章

1信息系统是什么?

帮助我们组织和分析数据的软件

2.什么是电子制表软件?

允许用户用单元格组织和分析数据的程序。

3单元格是什么?

电子数据表中用于存放数据或公式的元素。

4 什么是模拟假设分析?

修改电子数据表中表示假设得知,以观察假设的变化相对数据有什么影响。

5什么是关系模型,表,记录,字段?

关系模型(relational model):用表组织数据和数据之间的关系的数据库模型。

表(table): 数据库记录的集合。

记录(或对象、实体)(record(or object, entity)):构成一个数据库实体的相关的字段的集合。 字

段(或属性)(field(or attribute)): 数据库记录中的一个值。。

6.如今大数据面临哪些挑战?

大数据集经常包含各种各样的数据——不仅仅是基本数字数据、文档、图像,还包括多媒体元素(如音频、视频和动画等)。储存大数据需要大量的辅助存储器。 为了进行分析并且转换成有用的信息,数据需要被选取和组织,而这需要强大的处理能力。·大数据通常包含敏感的个人信息,而保护大数据需要妥善的技术和有条理的规划。为了处理大数据而建立的信息系统必须能够快速而全面地对数据进行分级,这也就意味着当获得新数据的时候,信息系统采取的技术必须能够承担负载。如果信息系统不能够充分分级,那么为了不停止运作,它就会限制使用数据的方式。

7LISP是什么?

LISP 是 AI使用的语言 LISP(LISt Processor)通常被看作 AI最常见的程序设计语言之一。LISP 的基本数据结构是一 种有序的元素序列,叫作列表, 其中的元素可以是单独的实体, 也可以是其他列表。从专家规则到 计算机程序,从思维处理到系统构件,列表几乎可以用于表示所有事物。LISP程序使用的是递归而 不是循环。LISP和它的语系都属于函数范型。

《C语言程序设计》第9章

  1. 指针是什么?

    指针是一种用于存储其他变量内存地址的数据类型。它存储了一个变量或对象在计算机内存中的位置,可以通过指针间接地访问和操作该变量或对象。

    指针通常与变量的数据类型相关联,因为不同类型的变量在内存中占据不同的空间。通过指针,我们可以通过内存地址直接读取或修改变量的值,而无需使用变量名。

    指针具有以下特点:

    • 可以声明指向不同数据类型的指针,如整数、浮点数、字符、数组等。
    • 使用&操作符可以获取变量的地址,将其赋值给指针。
    • 使用*操作符可以解引用指针,即获取指针所指向的变量的值。
    • 指针可以进行算术运算,如指针加法和指针减法。
    • 指针的空值表示为NULL,表示指针没有指向任何有效的内存地址。

    指针在编程中广泛应用,特别是在内存管理、动态分配内存、数据结构和函数传递参数等方面。通过使用指针,程序可以更高效地操作和管理内存,提高程序的性能和灵活性。

  2. 如何在函数中调用指针

    1. 传递指针作为参数:

      void modifyValue(int *ptr) {
      *ptr = 100; // 修改指针所指向的变量的值
      }

      int main() {
      int value = 50;
      modifyValue(&value); // 将变量value的地址传递给函数
      printf("Modified value: %d", value); // 输出修改后的值
      return 0;
      }

    在上面的示例中,modifyValue函数接受一个指向整数的指针作为参数,通过解引用指针修改所指向的整数的值。

    返回指针

  3. 指针调用二维数组

    int* createArray(int size

    { int *ptr = (int*)malloc(size * sizeof(int)); // 使用malloc分配内存 // 进行其他操作

    return ptr; // 返回分配的内存地址

    }

    void freeArray(int *ptr)

    {

    free(ptr); // 释放动态分配的内存

    }

    int main()

    { int *arr = createArray(5); // 调用函数创建数组并得到指向数组的指针

    freeArray(arr); // 释放内存

    return 0;

    }

    #include <stdio.h>

    int main()

    { int arr[3][4] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} };

    int *ptr = &arr[0][0]; // 指向数组起始位置的指针

    for (int i = 0; i < 3; i++)

    { for (int j = 0; j < 4; j++)

    { printf("%d ", *(ptr + i * 4 + j)); // 通过指针访问数组元素

    }

    printf("\n");

    }

    return 0;

    }

    基于AI的学习

    我:我学习了本周我自学了计算机科学概论第12,13,14章和《C语言程序设计》第9章的相关内容,并对两本教材进行了总结。请以苏格拉底的方式对我提问

AI:很高兴听到您学习了计算机科学概论和《C语言程序设计》这两本书的相关内容,并且进行了总结。现在,请允许我用苏格拉底的方式向您提问:

在您的学习过程中,最让您感兴趣的是哪些概念或思想?以及您认为这些概念或思想对您的学习和职业发展有何影响?

我:计算机科学概论第10,11章;主要介绍了操作系统的责任,内存和进程的管理,分时操作与虚拟机,内存管理方法,两种创造虚拟机的方法,CPU的调度方法,进程生存周期的各个阶段各种CPU调度算法的处理,文件,文件系统和目录的用途;文件扩展名,定义文件的基本操作,顺序文件访问和直接文件访问,目录树,磁盘调度算法等。 ### 《C语言程序设计》第8章总结 第8章主要介绍了数组的定义和初始化,如何向函数传递数组,以及排序和查找。

AI :非常棒!你对计算机科学概论的第12、13,14章和《C语言程序设计》的第9章有了很好的理解。

  1. 在你的学习过程中,你是如何理解计算机科学中的“数据结构”这一概念?你认为数据结构在编程中的作用是什么?
  2. 通过学习《C语言程序设计》第9章,你对C语言中的指针有了怎样的理解?你认为指针在实际编程中有哪些应用场景?
  3. 在学习计算机科学概论的相关内容时,你是否发现其中的某些观点或理论与你之前的认知有所不同?如果有,你是如何调整自己的理解和看法的?
  4. 在学习编程的过程中,你是否遇到了一些难以理解的概念或问题?你是如何克服这些困难的?
  5. 你对于计算机科学和编程的未来发展有怎样的看法?你认为这些内容对于你未来的职业规划和发展有何帮助?

请根据您的学习和理解回答以上问题。我期待与您进行更深入的思考和讨论!

我:数据结构是计算机科学中的一个重要概念,它是一种组织和存储数据的方式,使得数据可以被有效地访问和操作。数据结构涉及到如何组织和管理数据,以及如何使用算法和技术来操作数据。在编程中,数据结构可以帮助我们实现高效的算法,从而提高程序的性能和效率。常见的数据结构包括数组、链表、栈、队列、树和图等。

指针是C语言中的一个重要概念,它是一种变量,用于存储内存地址。通过指针,我们可以直接访问或修改内存中的值,动态分配和释放内存空间,以及实现一些高级的数据结构和算法。指针在实际编程中有广泛的应用场景,如动态内存分配、函数传参、指向结构体、数组、字符串等等。

在学习计算机科学概论时,我发现其中的某些观点和理论与我之前的认知有所不同。针对这种情况,我通常会查阅相关资料,并与他人交流和讨论,以调整自己的理解和看法。

在学习编程过程中,难以理解的概念或问题是很正常的。我通常会尝试多读教材或文档,寻找更多的例子和实践机会,并与他人交流和讨论,以帮助自己克服这些困难。

我认为计算机科学和编程的未来发展将会继续迅速发展,并在各个领域发挥重要作用。掌握计算机科学和编程的基础知识对于职业规划和发展非常有帮助,它可以为我们提供广阔的就业机会和发展空间,无论是从事软件开发、数据分析、人工智能还是其他领域的工作。同时,掌握计算机科学和编程的基础知识也可以帮助我们更好地理解和应用现代科技,提高解决问题的能力。

代码行数(新增/累积 博客量(新增/累积) 学习时间(新增/累积)
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 200/250 4/4 20/25
第五周 300/300 3/3 20/20

以上是本周的学习进度条,我在代码行数、博客数量和学习时间上都有一定的增长,但仍需努力

posted @ 2023-12-03 20:13  向思源  阅读(34)  评论(0编辑  收藏  举报