【玩转C语言】第一讲--->C语言概念

 🔥博客主页🔥:【 坊钰_CSDN博客 】

欢迎各位点赞👍评论✍收藏⭐

目录

引言:

 1. C语言是什么

2. C语言的辉煌历史

 3. 第一个C语言程序

4. main()函数

5. printf() 函数

6. 库函数

6.1 库函数概念

7. 关键字介绍

8. 字符和ASCLL值

 9. 字符串和 \0

 10. 转义字符

11. 语句和语句分类

11.1 空语句

 11.2 表达式语句

11.3 函数调用语句

11.4 复合语句

11.5 控制语句

12. 注释

12.1 注释两种形式

12.1.1 /*  */形式

12.1.2 //形式

13. 小结


引言:

大家好,我是坊钰,为了让大家深入了解C语言,我开创了【玩转C语言系列】,将为大家介绍C语言相关知识,另外,还会不定时更新【C语言训练题库】,想学好C语言的宝子们,一定要收藏起来,一起努力吧!

点赞!收藏!以防以后找不到了!!! 

 1. C语言是什么

人和人交流,用汉语,英语,日语等

计算机之间的交流用的是计算机语言

C语言就是计算机语言的一种,当然 C/C++,Java,Python 都是计算机语言

2. C语言的辉煌历史

 3. 第一个C语言程序

我们所学的第一个计算机程序

#include <stdio.h>
int main()
{
	printf("Hello World!");
	return 0;
}

看不懂没关系,其中涉及一些问题后续会介绍

4. main()函数

C语言中所有代码都是从main()函数开始的,main()函数也被叫:主函数,main()函数前方 int 为函数的一个返回值,与后面 return 0 相对应,这里一样不用了解太深

关于main()函数的特点

  • main() 是程序的入口
  • main()函数有且只有一个
  • 即使一个项目中有多个,c 文件,main()函数也只能纯在一个

 新手可能会出现的错误

  • main 写成 mian
  • main 右边的括号 () 忘掉
  • 代码中不能有中文符号

5. printf() 函数

上述中有一行代码

printf("Hello World!");

这个代码作用是在屏幕上打印-->Hello World!      如:

这里就不介绍printf() 函数用法,后续会介绍 

6. 库函数

 printf() 就是一个库函数

6.1 库函数概念

库函数(Library function)是将函数封装入库,供用户使用的一种方式。方法是把一些常用到的函数编完放到一个文件里,供不同的人进行调用调用的时候把它所在的文件名用#include<>加到里面就可以了

7. 关键字介绍

C语言中有很多关键字,如:int   if   float ....,被称为保留字或关键字

C语言常用32个关键字

auto break case char const continue default do double else enum ex
float for goto if int long register return short signed sizeof 
struct switch typedef union unsigned void volatile while

后期讲解中,会慢慢介绍这些关键字的,现在不必深究

8. 字符和ASCLL值

我们知道,计算机中还有很多如:@  #  ¥  %  &  等符号,它们被统称为字符,注意:它们的出现都是要用单引号的-->   '@'  '#'  '$'  '%'  '&'

我们知道在计算机中所有的数据都是以二进制的形式存储的,那这些字符在内存中分别以什么样的二进制存储的呢?如果我们每个人自己给这些字符中的每个字符编一个二进制序列,这个叫做编码,为了方便大家相互通信,不造成混乱,后来美国国家标准学会(ANS)出台了一个标准ASC编码,C语言中的字符就遵循了ASCII编码的方式

切记:不用背,只需知道几个常用的即可

  • 字符A~Z的ASCLL值为 65~90
  • 字符a~z的ASCLL值为 97~112
  • 对应的大小写字符ASCLL值差值为32
  • 数字字符A~Z的ASCLL值为 48~57
  • 换行符  '\n'  的值为 10
  • 在ASCLL值中 0~31 的字符(32个) 无法在屏幕上打印

我们可打印 32~127 的字符看一看

#include <stdio.h>
int main()
{
	for (int i = 32; i <= 127; i++)
	{
		printf("%c ", i);
		if (i % 16 == 15)
			printf("\n");
	}

	return 0;
}

 9. 字符串和 \0

在C语言中,如何表示字符呢?

用双引号,在里面输入字符,如: "abcdefgh"       例:

printf("abcdfegh");

但是它后面会自动添加一个 ' \0 '

 10. 转义字符

当我们看到 \n \0 可能会很纳闷,其实它们就是转义字符,有特殊的含义    例:

#include <stdio.h>
int main()
{
	printf("abcdef");
	return 0;
}

但我们加一个 \n 

#include <stdio.h>
int main()
{
	printf("abc\ndef");
	return 0;
}

可以看到 \n 的意义就很容易理解了

我们常用的转义字符有:

11. 语句和语句分类

11.1 空语句

只有一个  ;   就叫空语句

#include <stdio.h>
int main()
{
        ;
	return 0;
}

 11.2 表达式语句

表达式后面加分号

#include <stdio.h>
int main()
{
	int a=10;
    int b=5;
    a=b+5;    //表达式语句
	return 0;
}

11.3 函数调用语句

函数调用后加分号

#include <stdio.h>

int Add(int x, int y)
{
	return x + y;
}

int main()
{
	int a = 10;
	int b = 10;
	int c = Add(a, b);   //函数调用语句
	printf("%d", c);
	return 0;
}

11.4 复合语句

如for循环语句里面复杂的语句

#include <stdio.h>

int main()
{
	for (int i = 0; i < 10; i++)
	{
		for (int j = 0; j < 10; j++)
		{
			printf("*");
		}
	}
	return 0;
}

11.5 控制语句

控制语句用于控制程序的执行流程,以实现程序的各种结构方式(C语言支持三种结构:顺序结构、选择结构、循环结构),它们由特定的语句定义符组成,C语言有九种控制语句

可分成以下三类:

1.条件判断语句也叫分支语句:if语句、switchi语句

2.循环执行语句:do wEile语句、whilei语句、for语句

3.转向语句:break语句、goto语句、continuei语句、returni语句

后期会给大家一一介绍控制语句

12. 注释

注释是非常重要的,好的注释是给程序员和自己看的

12.1 注释两种形式

12.1.1 /*  */形式

注释中间语句

#include <stdio.h>

int main()
{
	/*
	for (int i = 0; i < 10; i++)
	{
		for (int j = 0; j < 10; j++)
		{
			printf("*");
		}
	}
	*/
	return 0;
}

12.1.2 //形式

注释一行语句

#include <stdio.h>

int main()
{

	for (int i = 0; i < 10; i++)
	{
		for (int j = 0; j < 10; j++)
		{
			//printf("*");
		}
	}
	return 0;
}

13. 小结

 以上就是关于【玩转C语言】第一讲的内容了,具体还需宝子们去实践,如果觉得该博客对你有用的话,希望一键三连,点个关注不迷路,谢谢支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/678589.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

巨详细Linux安装MySQL

巨详细Linux安装MySQL 1、查看是否有自带数据库或残留数据库信息1.1检查残留mysql1.2检查并删除残留mysql依赖1.3检查是否自带mariadb库 2、下载所需MySQL版本&#xff0c;上传至系统指定位置2.1创建目录2.2下载MySQL压缩包 3、安装MySQL3.1创建目录3.2解压mysql压缩包3.3安装解…

Kubernetes——Ingress详解

目录 前言——Service策略的作用 1.外部访问方案 2.使用场景和限制 2.1NodePort 2.2LoadBalancer 2.3externalIPs 2.4Ingress 3.Ingress如何实现对外服务 4.LB和Ingress结合起来实现对外服务的过程 一、Ingress 1.定义 2.组成 3.工作原理 4.总结 二、部署Nginx-I…

clickhouse学习笔记(二)数据类型

目录 一、基础数据类型 1、整数类型 2、浮点数类型 3、布尔类型 4、字符串和固定字符串 5、日期和时间类型 6、创建基础数据类型的建表语句及插入语句 二、复合数据类型 1、数组 2、元组 3、枚举类型 4、嵌套数据结构 5、Map 三、特殊数据类型 1、低基数编码&…

SwiftUI 利用 Swizz 黑魔法为系统创建的默认对象插入新协议方法(一)

功能需求 在 SwiftUI 的开发中,我们往往需要借助底层 UIKit 的“上帝之手”来进一步实现额外的定制功能。比如,在可拖放(Dragable)SwiftUI 的实现中,会缺失一些关键的回调方法让我们这些秃头码农们“欲哭无泪” 如上图所示,我们在拖放取消时将界面中的一切改变都恢复如初…

【调试笔记-20240604-Linux-为 OpenWrt-23.05 添加自己的 feed 软件包】

调试笔记-系列文章目录 调试笔记-20240604-Linux-为 OpenWrt-23.05 添加自己的 feed 软件包 文章目录 调试笔记-系列文章目录调试笔记-20240604-Linux-为 OpenWrt-23.05 添加自己的 feed 软件包 前言一、调试环境操作系统&#xff1a;Ubuntu 22.04.4 LTS编译环境调试目标 二、…

《python》poetry install下载缓慢,网络问题断开连接--poetry换源镜像下载+国内镜像

在使用打包工具poetry进行打包的是出现了一个问题就是&#xff0c;在使用poetry进行打包的时候出现了&#xff0c;连接断开这样的问题&#xff0c;这个问题是可以通过换源&#xff0c;通过国内的镜像来解决这个问题就可以了。 找到项目中的pyoroject。toml文件这个文件中写了一…

ESP8266 01sWiFi模块保姆级教程 烧录和联网,连接华为云

前言 写在前面。 这个esp01s联网真的是折磨人啊&#xff0c;浪费了我三四天的时间&#xff0c;网上各种教程叫天天不灵&#xff0c;叫地地不灵&#xff0c;所以才有了这篇教程&#xff0c;致力于帮助像我一样的小白少踩坑&#xff0c;我可以说是把能踩的坑都塌了一遍。 烧录…

Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制

多环境开发(yaml文件版) 我们在自己的开发中是自己环境 测试 生产的环境都不同 多环境分为 两个步骤 设置环境 生产环境 开发环境 测试环境 手搓三个环境 设置应用环境 应用pro配置 # 应用环境 spring:profiles:active: pro--- # 设置环境 # 生产环境 spring:profiles: p…

MySQL 存储过程(一)

本篇主要介绍MySQL存储过程的相关内容 目录 一、什么是存储过程&#xff1f; 二、基本语法 创建存储过程 调用存储过程 查看存储过程 删除存储过程 三、变量 系统变量 用户自定义变量 局部变量 四、存储过程的参数 in out inout 一、什么是存储过程&#xff1f…

No module named _sqlite3解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

RedHat9 | 控制启动过程

1、Linux系统启动引导流程 加电自检&#xff08;POST&#xff09;寻找启动顺序&#xff08;BIOS/UEFI)读取启动加载程序&#xff08;MBR->Bootloader)加载内核与内存文件系统&#xff08;kernel-initramfs)加载硬件及驱动&#xff08;/lib/modules或/lib64/modules)初始化系…

9 -力扣高频 SQL 50 题(基础版)

9 - 上升的温度 -- 找出与之前&#xff08;昨天的&#xff09;日期相比温度更高的所有日期的 id -- DATEDIFF(2007-12-31,2007-12-30); # 1 -- DATEDIFF(2010-12-30,2010-12-31); # -1select w1.id from Weather w1, Weather w2 wheredatediff(w1.recordDate,w2.recordDat…

数组的详细介绍

数组是一组相同类型元素的集合&#xff0c;也就是说&#xff1a;数组至少包含两个及以上的元素&#xff0c;且元素类型相同。 数组包括一维数组和多维数组&#xff0c;其中二维数组最常见。下面我们一一介绍。 一维数组&#xff1a; 格式&#xff1a;type name [常量值]&…

微信短视频怎么收藏?成都鼎茂宏升文化传媒公司

微信短视频怎么收藏&#xff1f;一文教你轻松掌握 随着微信功能的不断升级&#xff0c;微信短视频已经成为我们日常生活中不可或缺的一部分。无论是朋友分享的生活点滴&#xff0c;还是公众号推送的精彩内容&#xff0c;短视频都以其直观、生动的形式&#xff0c;吸引着我们的…

Qt——控件

目录 概念 QWidget核心属性 enabled geometry WindowFrame的影响 windowTitle windowIcon qrc的使用 windowOpacity cursor font toolTip focusPolicy ​编辑 styleSheet 按钮类控件 PushButton RadioButton CheckBox 显示类控件 Label textFormat pixm…

什么牌子的洗地机好?高端旗舰洗地机,清洁力强的洗地机品牌

科技水平的不断进步&#xff0c;人们对生活环境的要求日益提高&#xff0c;洗地机作为一种高效&#xff0c;便捷的清洁设备&#xff0c;在家务清洁中&#xff0c;越来越受重视&#xff0c;洗地机不仅在吸尘、拖地和深度清洁等方面表现出色&#xff0c;可以帮助用户轻松应对各种…

Swagger教程:【Swagger】让你的API文档焕然一新!

Swagger&#xff08;现称为OpenAPI Specification&#xff09;是一种用于描述RESTful API接口的规范。它允许您以机器可读和人类可读的方式定义服务&#xff0c;使得开发、测试、维护和文档化API变得更加高效。下面整理了一个基础的Swagger教程&#xff0c;包括其重要组成部分和…

2021 hnust 湖科大 计组课设 包含multisim14连线文件,报告,指导书

2021 hnust 湖科大 计组课设 包含multisim14连线文件&#xff0c;报告&#xff0c;指导书 描述 hnust计组课设要用到的东西都在里面了 下载链接 https://pan.baidu.com/s/1tHooJmhkrwX47JCqsg379g?pwd1111

计网期末复习指南(五):运输层(可靠传输原理、TCP协议、UDP协议、端口)

前言&#xff1a;本系列文章旨在通过TCP/IP协议簇自下而上的梳理大致的知识点&#xff0c;从计算机网络体系结构出发到应用层&#xff0c;每一个协议层通过一篇文章进行总结&#xff0c;本系列正在持续更新中... 计网期末复习指南&#xff08;一&#xff09;&#xff1a;计算机…

【计算机毕设】基于SpringBoot的民宿在线预定平台设计与实现 - 源码免费(私信领取)

免费领取源码 &#xff5c; 项目完整可运行 &#xff5c; v&#xff1a;chengn7890 诚招源码校园代理&#xff01; 1. 研究目的 本研究旨在设计并实现一个基于SpringBoot的民宿在线预定平台。通过信息化手段提高民宿预定效率&#xff0c;方便用户查询房源、预定房间、在线支付和…