快速学会C 语言基本概念和语法结构

😀前言
本篇博文是关于C 语言的基本概念和语法结构,希望你能够喜欢

🏠个人主页:晨犀主页
🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦😊

文章目录

  • 简介
    • 1、C语言的特点
    • 2、C语言的基本结构
    • 3、变量和数据类型
    • 4、常用运算符
    • 5、条件语句
    • 6、循环语句
    • 7、函数
    • 8、指针
    • 😄总结

简介

C语言是一门经典的编程语言,广泛用于系统软件、游戏开发、嵌入式系统等领域。对于编程入门者来说,掌握 C 语言不仅能理解编程的核心概念,还能为学习其他编程语言打下坚实的基础。本篇文章将带大家快速了解 C 语言的基本概念和语法结构。

1、C语言的特点

C 语言自 1972 年诞生以来,以其高效、灵活和强大的功能成为编程世界中的重要成员。它的特点包括:

  • 简洁高效:C 语言能直接与硬件交互,适合开发操作系统和嵌入式程序。
  • 可移植性:C 代码在不同平台上都可以编译运行,具有较好的移植性。
  • 结构化:C 语言支持结构化编程,方便程序员组织和管理代码。
  • 丰富的库函数:C 语言有强大的标准库支持,提供了很多实用函数,便于开发。

这些特点让 C 语言成为各类项目的理想选择,也是很多高性能软件开发的首选语言。

2、C语言的基本结构

C 语言代码通常由头文件主函数语句块组成。C 语言程序的标准结构如下:

#include <stdio.h>
int main() {printf("Hello, World!");
}
  • #include <stdio.h>:引入标准输入输出库,用于实现输入输出功能。
  • int main():主函数,程序执行的入口。
  • printf():用于输出信息到屏幕。

3、变量和数据类型

C 语言支持多种数据类型,如整数、浮点数、字符等。常见的数据类型如下:

  • int:整数类型,用于存储整数。
  • float:单精度浮点型,用于存储小数。
  • double:双精度浮点型,精度更高的小数类型。
  • char:字符型,用于存储单个字符。

变量声明示例如下:

int age = 25;        // 整数类型变量
float height = 5.9;  // 浮点类型变量
char grade = 'A';    // 字符类型变量

4、常用运算符

C 语言支持多种运算符,包括算术运算、逻辑运算、关系运算等。以下是一些常用运算符:

  • 算术运算符+-*/%
  • 关系运算符==!=><>=<=
  • 逻辑运算符&&(与)、||(或)、!(非)

示例代码:

int a = 10, b = 5;
int sum = a + b;       // 加法
int isGreater = a > b; // 关系运算
int isTrue = (a > b) && (b > 0); // 逻辑运算

5、条件语句

条件语句用于根据条件执行不同的代码块。在 C 语言中,常用的条件语句有 ifelse ifelse

示例:

int score = 85;if (score >= 90) {printf("优秀\n");
} else if (score >= 60) {printf("及格\n");
} else {printf("不及格\n");
}

在上述代码中,ifelse if 用于检查条件,else 则是所有条件都不满足时的默认执行块。

6、循环语句

C 语言支持多种循环语句,包括 for 循环、while 循环和 do-while 循环。

  • for 循环:适合已知循环次数的情况
  • while 循环:适合条件控制的循环
  • do-while 循环:至少执行一次的循环

示例代码:

for (int i = 0; i < 5; i++) {printf("当前计数: %d\n", i);
}int count = 0;
while (count < 5) {printf("当前计数: %d\n", count);count++;
}

7、函数

C 语言中的函数是独立的代码块,用于实现特定功能,便于代码的重用和管理。函数的一般结构如下:

返回类型 函数名(参数列表) {// 函数体return 返回值;
}

例如,定义一个求和的函数:

int add(int a, int b) {return a + b;
}int main() {int result = add(5, 3);printf("结果是: %d\n", result);return 0;
}

在这个例子中,add 函数接受两个整数并返回它们的和。

8、指针

指针是 C 语言中的重要概念,用于直接访问内存地址。理解指针是 C 语言编程的核心之一,它让程序员能够更加灵活地管理数据。

int num = 10;
int *ptr = &num;  // 指针变量 ptr 存储 num 的地址
printf("num 的值是: %d\n", *ptr);  // 输出指针指向的值
  • *ptr 用于获取指针 ptr 指向的值。
  • &num 获取变量 num 的地址。

😄总结

通过学习 C 语言基础知识,我们能够理解编程的核心概念,如变量、运算符、条件语句、循环、函数和指针。掌握 C 语言不仅能帮助我们打好编程基础,也为未来深入学习其他编程语言铺平了道路。希望这篇文章能帮助你更好地理解 C 语言,开始你的编程之旅!

文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁
希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

动态规划 —— 路径问题-不同路径 ||

1. 不同路径 || 题目链接&#xff1a; 63. 不同路径 II - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/unique-paths-ii/description/ 2. 算法原理 状态表示&#xff1a;以莫一个位置位置为结尾 dp[i]表示&#xff1a;以[i&#xff0c;j]位置为结尾时…

C++学习,冒泡排序

冒泡排序&#xff08;Bubble Sort&#xff09;是一种简单的排序算法&#xff0c;它重复地遍历要排序的数列&#xff0c;一次比较两个元素&#xff0c;如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复进行的&#xff0c;直到没有再需要交换的元素为止&#xff0c;这意…

Telephony IMS

1、IMS结构 IMS的启动过程,IMS业务依附于phone进程启动,当phone进程启动时拉起对应的框架代码。 当phone进程启动时,会启动ImsReslover类,该类用于寻找对应的IMS apk实现,并进行绑定。 当绑定成功后,ImsServiceController会保存IMS APK中的如下对象IImsRegistration IIms…

Consul微服务配置中心部署(在线安装)

博主介绍&#xff1a; 计算机科班人&#xff0c;全栈工程师&#xff0c;掌握C、C#、Java、Python、Android等主流编程语言&#xff0c;同时也熟练掌握mysql、oracle、sqlserver等主流数据库&#xff0c;具有丰富的项目经验和开发技能。提供相关的学习资料、程序开发、技术解答、…

Spring Task—定时任务

Spring Task 是 Spring 提供的一种轻量级定时任务调度功能&#xff0c;内置在 Spring 框架中。与 Quartz 等重量级调度框架相比&#xff0c;Spring Task 使用简便&#xff0c;无需额外依赖&#xff0c;适合在简单的调度任务场景中使用。通过注解配置方式&#xff0c;开发者可以…

DDR内存和Flash内存

DDR内存 DDRDouble Data Rate双倍速率同步动态随机存储器。严格的说DDR应该叫DDR SDRAM&#xff0c;人们习惯称为DDR&#xff0c;其中&#xff0c;SDRAM 是Synchronous Dynamic Random Access Memory的缩写&#xff0c;即同步动态随机存取存储器。而DDR SDRAM是Double Data Ra…

分布式数据库技术金融应用规范技术架构

目录 引 言 概述 技术框架 技术框架概述 物理资源层 计算模块 功能特性 功能架构概述 基本功能 部署灵活性 并发处理能力 扩缩容 扩容 缩容 引 言 随着金融领域分布式架构的转型升级&#xff0c;分布式数据库技术在金融领域应用逐步深入。为规范分布 式数据库技…

从0开始electron+vue2搭建环境

使用环境&#xff1a;node版本16.16.0 目录 搭建vue项目安装electron打包electron 搭建vue项目 已有vue2的环境直接进项安装electron步骤 没有的请先移动到这里查看 vue2脚手架搭建项目流程 我就不另外记录了 安装electron 直接运行 vue add electron-builder安装完成后&…

【脚本】B站视频AB复读

控制台输入如下代码&#xff0c;回车 const video document.getElementsByTagName("video")[0];//获取bpx-player-control-bottom-center容器,更改其布局方式const div document.getElementsByClassName("bpx-player-control-bottom-center")[0];div.sty…

pycharm导出环境安装包列表

pycharm导出环境安装包列表 一、导出安装包列表二、安装requirements.txt三、列表显示已安装的包四、显示特定包的信息 一、导出安装包列表 pip freeze > requirements.txt二、安装requirements.txt pip install -r requirements.txt三、列表显示已安装的包 pip list四、…

Qt学习笔记第31到40讲

第31讲 多态 基本概念 多态&#xff08;Polymorphism&#xff09;是面向对象编程&#xff08;OOP&#xff09;的一个重要特性。在 C 中&#xff0c;多态是指用同一个函数名或操作符在不同的上下文中可以表现出不同的行为。简单来说&#xff0c;多态允许不同的对象对同一消息&a…

力扣刷题(sql)--零散知识点(2)

1.自定义分组后的分类统计问题&#xff08;某组内无数据却仍要展示&#xff09; 例题1&#xff1a; 查询每个工资类别的银行账户数量。 工资类别如下&#xff1a; "Low Salary"&#xff1a;所有工资 严格低于 20000 美元。"Average Salary"&#xff1a;…

源码复现detectron2时遇到的错误

说明&#xff1a;安装detectron2直接进到官网 detectron2源码 中找安装文档&#xff0c;安装安装文档一般没什么问题&#xff0c;但是我确实出现了问题&#xff0c;包括有&#xff1a; gcc版本太低&#xff1a;提示说需要gcc 9及以上的版本才可以pytorch版本不匹配&#xff1a…

【机器学习基础】激活函数

激活函数 1. Sigmoid函数2. Tanh&#xff08;双曲正切&#xff09;函数3. ReLU函数4. Leaky ReLU函数 1. Sigmoid函数 观察导数图像在我们深度学习里面&#xff0c;导数是为了求参数W和B&#xff0c;W和B是在我们模型model确定之后&#xff0c;找出一组最优的W和B&#xff0c;使…

ipad-make-sense:首个支持 iPad 的开源数据标注工具

在机器学习和人工智能快速发展的今天&#xff0c;高质量的数据标注工具变得越来越重要。然而&#xff0c;大多数现有的数据标注工具都局限于传统的桌面环境&#xff0c;无法适应现代移动办公的需求。今天&#xff0c;我要向大家介绍一个突破性的解决方案 —— ipad-make-sense&…

阳振坤:云时代数据库的思考 | OceanBase发布会实录

在2024 OceanBase 年度发布会中&#xff0c;OceanBase 的创始人与首席科学家阳振坤进行了《云时代数据库的思考》的主题分享。本文为演讲实录。 亲爱的朋友们&#xff0c;衷心感谢各位莅临今天的发布会现场。今天是一个云的时代&#xff0c;我想与大家分享&#xff0c;我对于云…

51单片机完全学习——DS18B20温度传感器

一、DS18B20数据手册解读 首先我们知道DS18B20使用的是单总线传输&#xff0c;默认情况下读出来的温度是12位的&#xff0c;我们这里只讨论外部电源供电这种情况。 有这张图片我们知道&#xff0c;12位温度的最小分辨率是10^-4次方&#xff0c;因此就是0.0625.我们只需要将最后…

leetcode hot100【LeetCode 94. 二叉树的中序遍历】java实现

LeetCode 94. 二叉树的中序遍历 题目描述 给定一个二叉树&#xff0c;返回它的中序遍历。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2]示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a;[]示例 3&#xff1a; 输入&…

Docker快速安装Grafana

#创建数据目录 sudo mkdir -p /app/grafana/config sudo mkdir -p /app/grafana/data sudo chmod -R 777 /app/grafana/config sudo chmod -R 777 /app/grafana/data #配置文件grafana.ini ##################### Grafana Configuration Example ##################### # # E…

STM32应用详解(12)使用I2C的main函数例程

文章目录 前言一、支持I2C总线的常见器件二、程序详解1.main函数2.读取传感器温度值的函数3.相关宏定义 前言 学习I2C总线。本文件主要分析main函数和LM75A驱动程序。了解器件驱动基本原理。 一、支持I2C总线的常见器件 (1)支持I2C总线的器件有很多&#xff0c;在开发板上支持…