C语言笔记7

news2025/3/1 14:53:39
#include <stdio.h>
int main(void) 
{
    int a=123;
    int b=052;//十进制42
    int c=0xa2;//十进制162
    printf("a=%d  b=%o  c=%x  \n",a,b,c);//分别是十进制  八进制   十六进制
    printf("a=%d  b=%d  c=%d  \n",a,b,c);
    printf("Hello 凌迟老头\n");
    return 0;
}
//结论:变量在内存存储的数值是固定的  可以以多种形式(八进制  二进制   十进制   十六进制等)输出

运行结果:

 

 

 float能保证有7位有效数字

double能保证有15位有效数字

volatile是防止编译器优化代码

比如:volatile int a=100;

register  建议将变量定义在寄存器(经常使用到的变量)(属于建议  不是命令)

当CPU内部有空闲的寄存器就生效,如果没有空闲寄存器就无效(就继续放内存)

字符串长度=字符串+结束符\0

结束符代表结束标志

所以字符常量的长度是1字节(单引号),但是字符串的常量就是2字节(双引号)

因为字符所对应的最大ASCII值是127,所以使用char类型就可以存下所有的字符

int main()
{
	char ch1;
	scanf("%c",&ch1);
	printf("ch1=%c\n",ch1);
}

switch()括号里面的判断条件必须是整数

switch()里面的break是跳出switch语句(没有跳出就依次执行)

switch()里面的default(可有可无)是跳过一条语句

if语句里面的判断条件就可以是任意值

算数运算符是加减乘除

二个数相除,如果要得到小数,必须有一个是double或者float类型

或者手动的将2个数中的某一个数改成单精度实数

eg:   int f=3.0/2;

另外:除数不能为0,除数为0的话,会报错

int main()
{
	int num=8627;
	int a=num % 10;//个位
	int b=num/10%10;
	int c=num/100%10;
	int d=num/1000%10;
	printf("%d\n",a);
	printf("%d\n",b);
	printf("%d\n",c);
	printf("%d\n",d);
}

 自加自减都是进行单独的加1或者减1

数字在前,先使用,再自加

加减号在前,先自加,再使用

赋值运算符=

比较运算符就是>  <   >=   <=   !=   ==   结果只有2种分别是0和1

逻辑运算符  &&乘      ||加      !取反

逗号运算符。最终的结果是最后一个表达式的结果

int main()
{
	int a=3;
	double b=(double)a;//隐式转换
	//类型的准换   所需要的类型和所给的类型不匹配
	//强制转换   (需要转换的类型)原来的数据类型
	printf("%d\n",a);
	printf("%lf\n",b);
	printf("%d\n",(int)(19.1415926));
	
}

强制转换的好处是数据不丢失

但是注意转的顺序和大小

 需要注意的是最好从低精度往高精度转(int--->float---->double)

因为高精度往低精度转会损失部分数据,降低了数据的精度

if()语句后面不用加;(因为;是一个空语句)

if后面的语句如果是复合语句建议在后面加花括号形成一个复合语句

if else语句的结构有2种,但是结果互斥

if   语句1   else  语句2                             //只有2种结果

if   else   if                                                  //有很多种结果,只是不确定是哪一种结果

if  else if   和switch语句等同,只是判断的条件不同

在switch里面加break和default的作用

三目运算符

判断 表达式,如果为真,结果为表达式2的值,如果为假则为表达式3的值

int main()
{
	int a=1;
	int sum=0;
	while(a<=100)//后面无分号
//如果加了分号,程序也没错,但是一直在执行空语句,很消耗内存
	{
	sum=sum+a;
	a++;
	}
	printf("%d\n",sum);	
}

 while是先判断再决定是否执行,最坏的结果就是一次都不执行,需要注意的是while后面不加分号 

do while是先执行,再判断,最坏的结果就是至少执行一次,需要注意的是while后面要加分号

int main()
{
	int a=1;
	int sum=0;
	do
	{
	sum=sum+a;
	a++;
	}
	while(a<=100);//需要加分号
	printf("%d\n",sum);	
}

 视情况来决定选用哪一种判断

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

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

相关文章

uniapp 使用canvas画海报(微信小程序)

效果展示&#xff1a; 项目要求&#xff1a;点击分享绘制海报&#xff0c;并实现分享到好友&#xff0c;朋友圈&#xff0c;并保存 先实现绘制海报 <view class"data_item" v-for"(item,index) in dataList" :key"index"click"goDet…

并发——线程池,Executor 框架

文章目录 1 简介2 Executor 框架结构(主要由三大部分组成)1) 任务(Runnable /Callable)2) 任务的执行(Executor)3) 异步计算的结果(Future) 3 Executor 框架的使用示意图 1 简介 Executor 框架是 Java5 之后引进的&#xff0c;在 Java 5 之后&#xff0c;通过 Executor 来启动…

vue+springboot基于web的火车高铁铁路订票管理系统

铁路订票管理系统按照权限的类型进行划分&#xff0c;分为用户和管理员两个模块。管理员模块主要针对整个系统的管理进行设计&#xff0c;提高了管理的效率和标准。主要功能包括个人中心、用户管理、火车类型管理、火车信息管理、车票预订管理、车票退票管理、系统管理等&#…

解决遥感技术在生态、能源、大气等领域的碳排放监测及模拟问题

以全球变暖为主要特征的气候变化已成为全球性环境问题&#xff0c;对全球可持续发展带来严峻挑战。2015年多国在《巴黎协定》上明确提出缔约方应尽快实现碳达峰和碳中和目标。2019年第49届 IPCC全会明确增加了基于卫星遥感的排放清单校验方法。随着碳中和目标以及全球碳盘点的现…

单源最短路

无负环 Dijkstra 迪杰斯特拉算法 采用的贪心的策略 每次遍历到始点距离最近且未访问过的顶点的邻接节点&#xff0c;直到扩展到终点为止 Dijkstra求最短路 I 给定一个 n 个点 m 条边的有向图&#xff0c;图中可能存在重边和自环&#xff0c;所有边权均为正值。 请你求出 1 …

微服务 云原生:基于 Gogs + Drone 实现 CI/CD 自动化

一般构建部署 以一个简单的前后端项目来说&#xff0c;分别编写前后端的 Dockerfile 文件并构建镜像&#xff0c;然后编写 docker-compose.yml 构建部署&#xff0c;启动运行。每次代码变更后都需重新手动打包、构建、推送。 一个简单的例子&#xff1a; 前端&#xff1a; 项…

解读HTML-入门第一文

HTML详细解读 概念解读基本结构常用标签标题标签&#xff08;h1~h6&#xff09;段落标签&#xff08;p&#xff09;链接标签&#xff08;a&#xff09;图像标签&#xff08;img&#xff09;列表标签&#xff08;ul、ol、li&#xff09;表格标签&#xff08;table、tr、td&#…

轻量级锁实现1——结构体解析、初始化

瀚高数据库 目录 环境 文档用途 详细信息 环境 系统平台&#xff1a;Linux x86-64 Red Hat Enterprise Linux 7 版本&#xff1a;14 文档用途 从底层理解轻量级锁的实现&#xff0c;从保护共享内存的角度理解轻量级锁的使用场景&#xff0c;包括上锁、等待、释放&#xff0c;理…

android 如何分析应用的内存(十六)——使用AS查看Android堆

android 如何分析应用的内存&#xff08;十六&#xff09;——使用AS查看Android堆 在前面&#xff0c;先介绍了如何使用jdb和VS code查看应用栈相关内容。 本文将介绍&#xff0c;如何查看堆中的内容。大概有&#xff1a; 堆中的对象&#xff0c;有哪些堆中的对象&#xff0…

“Can‘t open perl script configure : No such file or directory”的解决办法

编译OpenSSL的时候执行到 perl configure 时提示找不到configure&#xff0c; 然后在网上搜了搜&#xff0c;大家给的解决办法一般都是说设置环境变量或者指定configure路径再执行&#xff1b;我试了都不行&#xff0c; 最后我把perl卸了重装就正常了&#xff1b; 然后我换了…

QEMU源码全解析32 —— Machine(2)

接前一篇文章&#xff1a;QEMU源码全解析31 —— Machine&#xff08;1&#xff09; 本文内容参考&#xff1a; 《趣谈Linux操作系统》 —— 刘超&#xff0c;极客时间 《QEMU/KVM》源码解析与应用 —— 李强&#xff0c;机械工业出版社 特此致谢&#xff01; 上一篇文章给m…

【力扣每日一题】2023.8.11 矩阵对角线元素的和

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们一个矩阵&#xff0c;让我们把矩阵对角线上的元素都加起来返回。 那么矩阵的对角线是有两条的&#xff0c;一条是从左上到右下…

Maven安装与配置教程

目录 一、前言 1.什么是Maven 2.为什么要使用Maven 二、Maven安装与配置 1.官网下载 2.Maven配置 3.修改Maven仓库下载镜像及修改仓库位置 3.1.修改仓库下载镜像地址 3.2.修改默认Maven的仓库位置 三、eclipse配置Maven 四、eclipse部署Maven项目 注意事项&#xff…

Python非线性全局优化

文章目录 全局优化函数简介详解性能测试 全局优化函数简介 scipy的optimize模块非常强大&#xff0c;也是我个人使用最多的scipy模块&#xff0c;这里面封装的都是成熟且高效的算法&#xff0c;久经考验。对于参加数学竞赛的同学来说&#xff0c;辛辛苦苦撸出来的遗传算法、模…

Eudic欧路词典 for Mac v4.4.5增强版

欧路词典 (Eudic)是一个功能强大的英语学习工具&#xff0c;它包含了丰富的英语词汇、短语和例句&#xff0c;并提供了发音、例句朗读、单词笔记等功能。 多语种支持&#xff1a;欧路词典支持多种语言&#xff0c;包括英语、中文、日语、法语等等&#xff0c;用户可以方便地进…

Kubernetes 调度 约束

调度约束 Kubernetes 是通过 List-Watch 的机制进行每个组件的协作&#xff0c;保持数据同步的&#xff0c;每个组件之间的设计实现了解耦。 用户是通过 kubectl 根据配置文件&#xff0c;向 APIServer 发送命令&#xff0c;在 Node 节点上面建立 Pod 和 Container。 APIServer…

python——案例14:斐波那契数列

兔子生殖为例子而引入&#xff0c;故又称“兔子数列”&#xff0c; 其数值为&#xff1a;1、1、2、3、5、8、13、21、34……在数学上&#xff0c; 这一数列以如下递推的方法定义&#xff1a; F(0)1&#xff0c;F(1)1, F(n)F(n - 1)F(n - 2)&#xff08;n ≥ 2&#xff0c;n ∈ …

液体神经网络:LNN是个啥概念?

一、说明 在在人工智能领域&#xff0c;神经网络已被证明是解决复杂问题的非常强大的工具。多年来&#xff0c;研究人员不断寻求创新方法来提高其性能并扩展其能力。其中一种方法是液体神经网络&#xff08;LNN&#xff09;的概念&#xff0c;这是一个利用动态计算功能的迷人框…

Simpack助力中国铁路创新发展

中国铁路尤其是高铁的迅速发展是中国装备制造业走向世界一张名片&#xff0c;不仅为人们出行提供了便利&#xff0c;也为中国经济的快速增长提供了有力的支撑。同时&#xff0c;高速铁路的发展给产品研发带来了新的课题和挑战。尤其在动力学领域&#xff0c;各部件或子系统之间…

DP(区间DP)

石子合并 设有 N 堆石子排成一排&#xff0c;其编号为 1,2,3,…,N。 每堆石子有一定的质量&#xff0c;可以用一个整数来描述&#xff0c;现在要将这 N 堆石子合并成为一堆。 每次只能合并相邻的两堆&#xff0c;合并的代价为这两堆石子的质量之和&#xff0c;合并后与这两堆…