【星计划★C语言】c语言初相识:探索编程之路

这篇具有很好参考价值的文章主要介绍了【星计划★C语言】c语言初相识:探索编程之路。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研
🌈个人主页:聆风吟_
🔥系列专栏:星计划★C语言、Linux实践室
🔖少年有梦不应止于心动,更要付诸行动。


📋前言

C 语言为什么叫 C 语言呢?其实是因为先有高级语言 ALGOL 60(简称 A 语言),后来它经过简化变为 BCPL 语言(改进后称为 B 语言),而 C语言是在 B 语言的基础之上发展而来的,所以就称为 C 语言。因此,世界上的第一个 C 语言编译器是用 B 语言编写的。目前,主流的编译器是 GCC 编译器。

1972 年,Dennis M. Ritchie 在 B 语言的基础上最终设计出了一种新的语言,他以 BCPL 的第二个字母作为这种语言的名字,这就是 C 语言。
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研



一. ⛳️第一个c语言程序

#include <stdio.h>
//解释:
//main函数是程序的入口
//在整个工程中有且只有一个
int main()
{
    printf("hello world!\n");
    return 0;
}


二. ⛳️数据类型

2.1 🔔数据单位

数据类型的分类如下图所示:
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

char              //字符型
short             //短整型
int               //整型
long              //长整型
float             //单精度浮点数
double            //双精度浮点数
  • 为什么会出现这多的数据类型?

答:存储这么多的类型,其实是为了更加丰富的表达生活中的各种值。

  • 每种数据类型的大小是多少?
#include <stdio.h>

int main()
{
	//在vs和clion环境下的运行结果
    printf("%d\n", sizeof(char));       //结果:1
    printf("%d\n", sizeof(short));      //结果:2
    printf("%d\n", sizeof(int));        //结果:4
    printf("%d\n", sizeof(long));       //结果:4
    printf("%d\n", sizeof(float));      //结果:4
    printf("%d\n", sizeof(double));     //结果:8
}

小课堂:

  • sizeof是一个操作符
  • sizeof用于计算类型或变量所占用的存储空间的大小

2.2 🔔计算机中常用的单位

单位 换算关系
比特(b) 基本单位
字节(B) 1 B = 8 b
千字节(KB) 1 KB = 1024 B = 2^10 B
兆字节(MB) 1 MB = 1024 KB = 2^20 B
吉字节(GB) 1 GB = 1024 MB = 2^30 B
太字节(TB) 1 TB = 1024 GB = 2^40 B

注:b = bitB = Byte


2.3 🔔C语言中的关键字

    c语言中有很多关键字,在后面的章节中遇到后我们在进行介绍(无需记忆),在这里给出是为了让大家对c语言的关键字有个认识,以避免命名变量的时候与关键字重名。c语言中的关键字如下图所示:
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研



二. ⛳️常量

    常量:是指在程序运行过程中,其值不发生变化的量。常量又分为整型、实型(也称浮点型)、字符型和字符串型。如下所示:

类型 举例
整型 100,235,-122,0
实型 3.14,0.125,-4.25
字符型 ‘a’,‘b’,‘c’
字符串型 “a”,“ab”,“2a3b”


三. ⛳️变量

    变量:是指在程序运行过程中,其值可以发生变化的量。变量名实际上是以一个名字代表一个对应的存储单元地址,编译、链接程序时,由编译系统为每个变量名分配对应的内存地址(就是空间)。从变量中取值实际上就是通过变量名找到内存中存储单元的地址,并从该存储单元中读取数据,如下图所示:
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

3.1 🔔定义变量的方法

int age = 25;
float weight = 45.5f;
char ch = 'a';

小课堂:在选择变量名和其他标识符时,应尽量做到 “见名知意”。


3.2 🔔变量的命名规则

  • 只能由字母(包括大写和小写)、数字和下划线(_)组成;
  • 不能以数字开头;
  • 变量名区分大小写;
  • 变量名不能使用关键字;
  • 长度不能超过63字符。

【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研



四. ⛳️整型数据

4.1 🔔符号常量

符号常量:在编程语言中使用一个标识符来表示的常量,这个标识符即称为符号常量。定义格式如下:

#define <符号常量名> <常量>
#define PI 3.14

符号常量的使用:

#include <stdio.h>

#define PI 3+2	//PI是符号常量

int main()
{
    int i = PI * 2;
    printf("i = %d\n", i);//输出结果是7

    return 0;
}
  • 为什么输出结果是7,而不是10呢?

答:因为是符号常量PI直接替换的效果,因此不可以写成PI=5
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

4.2 🔔整型变量

主要掌握int i足以应对初试,其中变量i是4个字节



五. ⛳️浮点型数据

5.1 🔔浮点型常量

表示浮点型常量的形式有两种,如下图所示。其中e代表10的幂次,幂次可正可负
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

注意:字母e(或E)之前必须有数字,且e后面的指数必须为整数。

【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

5.2 🔔浮点型变量

通过float f来定义浮点变量,其中f占用4个字节的空间



六. ⛳️字符型常量

6.1 🔔字符型常量

用单引号('')括起来的一个字符是字符型常量,且只能包含一个字符。例如下图:
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研


6.2 🔔转义字符

假如我们要在屏幕上打印一个目录:c:\code\test.c
我们的代码应该如何写呢?

#include <stdio.h>

int main()
{
    printf("c:\code\test.c\n");
    return 0;
}

实际上程序运行的结果是这样的:
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研
这里就不得不提一下转义字符了。转义字符顾名思义就是转变意思,\开头的的特殊字符称为转义字符

转移字符 释义
\’ 用于表示字符常量'
\" 用于表示一个字符串内部的双引号
\\ 用于表示一个反斜杠,防止他被解释为一个转义序列符
\n 换行
\b 退格符
\ddd ddd表示1~3个八进制的数字。如:\130表示字符X
\xdd ddd表示l2个十六进制的数字。如:\x30表示字符0

综上所讲,我们开头的代码应该更改为:
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

6.3 🔔字符数据在内存中的存储形式以及使用方法

字符型变量使用的关键字char进行定义,一个字符型变量占用1个字节大小的空间。一个字符常量存放到一个字符型变量中时,实际上并不是把该字符的字型放到内存中,而是把该字符的ASCII码值放到存储单元中。ASCII表如下所示:【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研
打印字符型变量时, 如果以字符形式打印,那么计算机会到ASCII码表中查找字符型变量的ASCII码值,查到对应的字符后会显示对应的字符。
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研
由上图所示,字符型数据既可以以字符形式输出,又可以以整数形式输出,还可以同过运算获取想要的各种字符
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

小课堂:由ASCII码表我们可以很容易发现:小写字母 - 大写字母 = 32



七. ⛳️字符串型常量

字符串型常量是由一对双引号("")括起来的字符序列。例如下图:【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

小课堂:

  1. 'a'是字符型常量,而"a"是字符串型常量,二者是不同的;
  2. c语言中没有定义字符串型变量的关键字,因此我们需要通过数组对字符串进行存储。

c语言规定,在每个字符串型常量的尾部加一个字符串结束标志,以便系统据此判断字符串是否结束, c语言规定以字符\0作为字符串的结束标志。例如,字符串型常量"CHINA"在内存中的存储方式如下图所示:
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研

#include <stdio.h>

int main()
{
    char c[] = "CHINA";

    //输出结果为:6
    //它占用内存单元不是5个字节,而是6个字节,即大小为6
    //最后一个字符为'\0'
    //注意:在输出是不输出'\0',因为'\0'无法显示
    printf("字符串的长度为:%d\n", sizeof(c));

    return 0;
}


📝全文总结

     今天的干货分享到这里就结束啦!如果觉得文章还可以的话,希望能给个三连支持一下,聆风吟的主页还有很多有趣的文章,欢迎小伙伴们前去点评,您的支持就是作者前进的最大动力!
【星计划★C语言】c语言初相识:探索编程之路,星计划★C语言,c语言,开发语言,考研文章来源地址https://www.toymoban.com/news/detail-852724.html

到了这里,关于【星计划★C语言】c语言初相识:探索编程之路的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AI大模型探索之路-训练篇2:大语言模型预训练基础认知

    在人工智能的宏伟蓝图中,大语言模型(LLM)的预训练是构筑智慧之塔的基石。预训练过程通过调整庞大参数空间以吸纳数据中蕴含的知识,为模型赋予从语言理解到文本生成等多样化能力。本文将深入探讨预训练过程中的技术细节、所面临的挑战、通信机制、并行化策略以

    2024年04月25日
    浏览(46)
  • 考研C语言刷编程题篇之分支循环结构基础篇(一)

    目录 第一题 第二题  方法一:要循环两次,一次求阶乘,一次求和。 注意:在求和时,如果不将sum每次求和的初始值置为1,那么求和就会重复。 方法二: 第三题 方法一:用数组遍历的思想  方法二用折半查找的思想 折半查找的思想  第四题 方法一:用两个变量,两个数

    2024年01月21日
    浏览(52)
  • 【Java探索之旅】我与Java的初相识(二):程序结构与运行关系和JDK,JRE,JVM的关系

    🎥 屿小夏 : 个人主页 🔥个人专栏 : Java入门到精通 🌄 莫道桑榆晚,为霞尚满天! Java作为一门广泛应用的编程语言,其结构和运行环境对于初学者来说可能会带来一些困惑。本文旨在帮助初学者了解Java程序的基本结构以及可能遇到的一些常见问题,同时解释了JDK、JRE和

    2024年02月04日
    浏览(83)
  • AI大模型探索之路-训练篇5:大语言模型预训练数据准备-词元化

    AI大模型探索之路-训练篇1:大语言模型微调基础认知 AI大模型探索之路-训练篇2:大语言模型预训练基础认知 AI大模型探索之路-训练篇3:大语言模型全景解读 AI大模型探索之路-训练篇4:大语言模型训练数据集概览 在自然语言处理领域,大语言模型预训练数据准备是一个重

    2024年04月28日
    浏览(47)
  • AI大模型探索之路-应用篇16:GLM大模型-ChatGLM3 API开发实践

    目录 一、ChatGLM3-6B模型API调用 1. 导入相关的库 2. 加载tokenizer 3. 加载预训练模型 4. 实例化模型 5.调用模型并获取结果 二、OpenAI风格的代码调用 1. Openai api 启动 2. 使用curl命令测试返回 3. 使用Python发送POST请求测试返回 4. 采用GLM提供的chat对话方式 5. Embedding处理 三、Functio

    2024年04月23日
    浏览(45)
  • AI大模型探索之路-实战篇3:基于私有模型GLM-企业级知识库开发实战

    在当今信息时代,数据已经成为企业的核心资产之一。对于许多企业而言,信息安全和私密性是至关重要的,因此对外部服务提供的数据接口存在天然的警惕性。因此常规的基于在线大模型接口落地企业知识库项目,很难满足这些企业的安全需求。面对这样的挑战,只有私有

    2024年04月23日
    浏览(56)
  • 编程语言学习笔记-架构师和工程师的区别,PHP架构师之路

    🏆作者简介,黑夜开发者,全栈领域新星创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于PHP专栏:PHP进阶实战教程。 🎉欢迎 👍点赞✍评论⭐收藏 什么是架构师

    2024年02月12日
    浏览(52)
  • 探索C语言结构体:编程中的利器与艺术

    ✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C语言学习 贝蒂的主页:Betty‘s blog 在C语言中本身就自带了一些数据类型,如:char,int,float,double等数据类型都被称为 内置类型 ,但是在实际生活中我们发现这些基本的数据类型是不够用

    2024年02月19日
    浏览(46)
  • 探索C语言的数据类型:解密编程世界的核心秘密

    ✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C语言学习 贝蒂的主页:Betty‘s blog (1) 常量的概念 常量顾名思义就是无法改变的量,比如一周有7天,一天有24小时,这些都是无法改变的量。 (2) 常量的分类 整数常量:1,2,3,-1,-2等 小数

    2024年02月19日
    浏览(196)
  • 掌握Go语言:Go语言递归函数,解密编程之谜,探索算法的奥秘!(27)

    递归函数是指在函数内部调用自身的函数。在Go语言中,递归函数使用起来非常方便,但需要注意递归的终止条件,以避免无限循环。 Go语言递归函数的使用方法 在Go语言中,编写递归函数的基本步骤如下: 上述三点内容详细解释如下: 定义一个函数,函数内部调用自身 :

    2024年04月15日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包