C语言学前班

2023-11-10

C 语言学前班

10分钟入门、10天练习,哪有那么难。根本用不着科班通过上课学几个月。。


程序 = 数据结构 + 算法

  • 数据结构:容器来存储要进行各种操作的数据。

  • 算法:对各种数据进行各种操作(加减乘除,增删改查 + 判(判断)排(排序)复(复位))输出结果来达到计算、控制目的。就像函数 f(x),有输入和输出的盒子,代入 x,计算得到 y = y(x),这个过程,就是算法。吃经验和天赋,需要反复学习和实践,经验出编程思维。

数据结构:基本数据类型

定义一个 存储占用空间 1 字节的 数字,或者叫 变量 a:char a;

定义一个 整形类型(整数)变量,一般占用 4 字节:int d;

定义一个 浮点类型(小数)变量,一般占用 4 字节:float c;

变量可以装填数字,比如 a = 10;c = 3.14; 等等。

算法:顺序、分支和循环

所有的可以归结为算法的问题都可以通过 运算+赋值+顺序+分支+循环 等基本要素完成,支持做到这样的机器可以被称为图灵完备的。

  • 顺序执行:计算 和 赋值。

    • (a^2 + b^2) + c^2,这是计算,这是一个算式,最终计算结果是一个数,这个数 为 0 就为 逻辑上的 假(false),否则为 逻辑上的 真(true)

    • d = 2*c^2;,这是赋值,2*c^2 的值赋给 d,这是一个 语句,以 分号 ; 标识结束,这是要被执行的语句,是行为。

  • 分支 if-else、switch-case、三段式。

    •  if( <判断这个式子是否为真> )
       {
           /* 如果为真就执行这里 */
       }else
       {
           /* 不为真就执行这里 */
       }
    •  switch( 一个整形变量 a )
           case <某一个整数 x>: /* 如果 a 等于 x 就执行这里 */ break;
           case <某一个整数 h>: /* 如果 a 等于 h 就执行这里 */ break;
           case <某一个整数 y>: /* 如果 a 等于 y 就执行这里 */ break;
       default: /* 哪个都不等于就执行这里 */ break;
    •  a = <这个式子是否为真> ? <如果为 真 就把这里的值赋给 a> : <如果为 假 就把这里的值赋给 a>;
  • 循环 while、do-while、for。

    •  while( <1、判断这个式子是否为真> )
       {
           2、如果为真就执行这里
           3、执行完毕后,再去 判断 步骤 1 里的 式子是否为真,若为真则接着执行 步骤2,否则跳出这个循环
       }
    •  for( <1、先执行这里的语句一次> ; <2、再判断这里的式子是否为真> ; <语句2> )
       {
           3、如果步骤 2 中的 式子为 真 则执行这里
           4、执行完后,再执行 <语句2>,然后再 判断 步骤 2 里面的式子是否为真,如果为真则执行步骤 3,否则跳出这个循环
       }

正式开始吧~

现在带着这些印象再去看正经的、完整的、系统的 C 教程,应该会体会到 “行云流水” 的学习感觉吧(大概)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言学前班 的相关文章

  • async/await 异步函数

    1 async异步函数的使用 await async写法 async function foo1 const foo2 async gt 2 async异步函数的执行流程 都是同步代码 跟普通函数代码没区别 async function f
  • RTP - 视频流广播

    这是用RTP RFC3350 按RFC2550封装MPEG ES流数据的发送程序 学习RTP的路真的辛苦 在网上收集的有关RTP的程序都是那种只负责RTP数据包发送的库 如jrtplib等 他们的DEMO 程序都只是用来发发字符串 编编聊天
  • mac mongodb Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols

    mac 下 mongodb 执行命令 mongod 报错 标题为报错的第一句 因为一般人百度的时候都是根据第一句百度 所以起的这个标题 具体报错如下图 我的具体信息如上 可以发现 报错的主要信息在于 没有找到 data 数据的存放路径导致的
  • 【华为OD统一考试A卷

    在线OJ 已购买本专栏用户 请私信博主开通账号 在线刷题 运行出现 Runtime Error 0Aborted 请忽略 华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一

随机推荐

  • 【数据结构前置知识】初识集合框架和时间,空间复杂度

    文章目录 1 什么是集合框架 2 集合框架的重要性 3 背后所涉及的数据结构以及算法 3 1 什么是数据结构 3 2 容器背后对应的数据结构 3 3 相关java知识 3 4 什么是算法 4 时间复杂度 1 如何衡量一个算法的好坏 2 算法
  • js高级 6.闭包

    闭包的理解 如何产生闭包 当一个嵌套的内部 子 函数引用了嵌套的外部 父 函数的变量 或函数 时 就产生了闭包 闭包到底是什么 使用chrome浏览器查看 理解一 闭包是嵌套的内部函数 大多数人 理解二 包含被引用变量 或函数 的对象 极少
  • 进程与线程408

    文章目录 1 进程与线程 1 1 进程的概念与特征 1 2 进程的状态与转换 1 3 进程的组成 1 4进程控制 1 5 进程的通信 2 处理机调度 2 1 调度的基本概念 2 2 调度算法的评价指标 2 3 调度的实现 2 4 经典的调度
  • 单相电流型逆变电路

    电流型逆变电路 引言 电流型三相桥式逆变电路 直流电源为电流源的逆变电路称为电流型逆变电路 电流型逆变电路主要特点 直流侧串大电感 电流基本无脉动 相当于电流源 交流输出电流为矩形波 与负载阻抗角无关 输出电压波形和相位因负载不同而不同 直
  • C# DropDownList绑定添加新数据的几种方法

    第一种 在前台手动绑定 适用于固定不变的数据项
  • 第2课 微信开发者工具使用slider进度条标签编写rgb颜色选择功能:

    微信小程序编写rgb颜色选择功能 效果图如下 以下是wxml文件代码
  • 银行应用软件:零售银行业务中谁才是赢家

    资本界的谷歌 这就是杰里米 阿莱尔现在正在创建的 也就是 一家消费者金融公司 为消费者提供存款 寄款和收款产品 这些也是零售银行的基础公共设施 42 他 认为对任何有上网设备的人来说 这都是一个强大 实时及免费的服务 而他的区块链公司世可国
  • PHP微信公众开发笔记(一)

    笔记是先写在印象笔记上的 晚上没事的时候整理整理 PHP微信公众开发笔记系列 日期 2014 9 1 今天开始正式开始做班上的微信公众平台的开发者服务了 因为是第一次做这个 对PHP也不了解 所以一边学PHP 一边整理微信的公众平台 当做是
  • Qt中的JSON操作_3: JSON在Qt中的应用举例(写入和读出的关键是利用QJsonDocument实现Json格式的文件转换为字符串)

    接上篇 Qt中的JSON操作 2 JSON在Qt中的使用 本篇主要讲利用Json在Qt中封装的类实现读写文件的举例 我们在Qt中的JSON操作 1 JSON的基本知识介绍中举了一个Json对象的例子 对象1中嵌入对象2 对象2中嵌入数组 对
  • error ‘defineProps‘ is not defined no-undef

    error defineProps is not defined no undef 例如defineProps和defineEmits生成no undef警告 示例 eslintrc js module exports env vue se
  • SpringBoot获取项目日志

    目的 对于布署在远端的服务 我们想快速的获取到日志 对于使用了日志服务 也可能因为上报间隔太长 日志不够实时 所以想通过一些方式 可以不用进入到容器内也可以简单快速获取到日志 而且是实时的日志 目标就是获取最新的n条日志 搜索啥的功能也不需
  • Python(1)--Python安装

    本篇作为学习Python笔记 来记录学习过程 安装环境 windows10 官方下载地址 https www python org 有很多的版本 我这里选择了3 7 2 executable表示可执行版 需要安装后使用 embeddable
  • Python基础 NumPy数组相关概念及操作

    NumPy是Python的一种开源的数值计算扩展库 提供 数组支持以及相应的高效处理函数 它包含很多功能 如创建n维数组 矩阵 对数组进行函数运算 数值积分 线性代数计算 傅里叶变换和随机数产生等 Why NumPy 标准的Python用L
  • CentOS8基础篇2:文件系统

    一 文件系统概述 1 文件系统的基本概念 操作系统中负责管理和存储文件信息的软件机构称为文件管理系统 简称文件系统 它规定了文件的存储方式及文件索引方式等信息 文件系统主要由三部分组成 分别是与文件管理相关的软件 被管理的文件和实施文件管理
  • 神经网络中的神经元和激活函数详解

    在上一节 我们通过两个浅显易懂的例子表明 人工智能的根本目标就是在不同的数据集中找到他们的边界 依靠这条边界线 当有新的数据点到来时 只要判断这个点与边界线的相互位置就可以判断新数据点的归属 上一节我们举得例子中 数据集可以使用一条直线区分
  • jdk13快来了,jdk8的这几点应该看看!

    说明 jdk8虽然出现很久了 但是可能我们还是有很多人并不太熟悉 本文主要就是介绍说明一些jdk8相关的内容 主要会讲解 lambda表达式 方法引用 默认方法 Stream 用Optional取代null 新的日志和时间 Completa
  • 自定义view

    自定义View 有这一篇就够了 简书 jianshu com
  • STM32cubeProgrammer连接设置说明

    芯片型号 STM32F427 连接 connect Frequency设置为200 点击connection REG模块 随后device选STM32F427 peripheral选择GPIOD
  • android应用安装成功之后删除apk文件

    摘要 题目 正在运用开辟中碰到须要如许的需供 正在用户下载我们的运用装置以后删除装置包 办理 android会正在每一个中界操纵APK的举措以后收回体系级其余播送 过滤器称号 问题 在应用开发中遇到需要这样的需求 在用户下载我们的应用安装之
  • C语言学前班

    C 语言学前班 10分钟入门 10天练习 哪有那么难 根本用不着科班通过上课学几个月 程序 数据结构 算法 数据结构 容器来存储要进行各种操作的数据 算法 对各种数据进行各种操作 加减乘除 增删改查 判 判断 排 排序 复 复位 输出结果来