当前位置: 首页 > news >正文

学习日记:数据类型2

目录

1.转义字符

2.隐式类型转换

2.1 强制类型转换

2.2 不同类型间赋值

3.运算符 表达式

3.1 算术运算符

3.2 算术运算优先级

3.3 赋值运算

3.3.1 不同类型间混合赋值

3.4 逗号运算

4.生成随机数

5. 每日一练


1.转义字符

'\n'                        表示换行

'\t'                         表示调到下一个制表符(一个制表符占8个空格)

'\b'                        表示退格

'\r'                         回车,光标回到当前行的开头

'\\'                        表示打印一个 \

'\''                        表示打印 '

'\'''                        表示打印 "

'\101'                    表示转义八进制

'\x41'                     转义十六进制

2.隐式类型转换

低精度和高精度混合运算时,低精度1往高精度转。

2.1 强制类型转换

(类型)运算数

注:不会影响运算数本身 

float a = 12.34;
(int) a

2.2 不同类型间赋值

3.运算符 表达式

3.1 算术运算符

+  、 -   、 *  、/   、 %

注:

/  (1)两个整数相除,相当于取整的效果

   (2)除法运算中除数不能为0

% (1)除数不能为0

     (2)运算数必须为整数。

      (3)结果的符号取决于做操作数

另:取余运算可用于:判断奇数和偶数(%2 == 1 奇数; %2==0  偶数);取范围(%N  得到0~N-1的数)

++        自增:表示一次+1;

(1)a++  :后置加加,先用(表达式的结果) 后加(让a自增)

(2)++a  :前置加加 ,先加(让a自增) 后用(表达式的结果) 

注:a++和++a如果单独使用,效果上没有区别,运算数必须是一个可以修改的变量,浮点类型也可以自增自减。

ps:i++和++i哪个效率高?

答:++i效率更高。
 

--          自减:表示一次-1;

3.2 算术运算优先级

3.3 赋值运算

赋值运算符“ = ”:作用是将一个数据赋给一个变量。

eg:a = 10 结果是a的值,类型为a的类型

注:可以连续赋值 ----  a = b = c = 10

+=    、   -=     、   *=    、    /=     、    %=    也是赋值运算

eg: a += 1  相当于 a = a + 1

3.3.1 不同类型间混合赋值

(1)高精度的值赋给低精度会产生精度丢失。

(2)长类型的值赋给短类型会产生高位截断。

(3)短类型的值赋给长类型 

        a:无符号短类型赋给长类型------高位补零

        b:有符号短类型赋给长类型------符号位扩展(高位补符号位)

3.4 逗号运算

逗号运算为顺序求值运算符

语法:表达式1,表达式2,表达式3...,表达式n

1+2,a++,3+4;

运算过程:从左往右依次运算,结果为整个式子中最后一个表达式的结果。

4.生成随机数

rand();

eg:随机生成10个100以内的数

#include<stdio.h>
#include<stdlib.h>
#include<time.h>int main(void)
{int i = 0;srand(time(NULL));for(i = 0;i<10;i++){printf("%d\n",rand()%100);}return 0;}

运行结果:

5. 每日一练

从终端获得两个2位数,
将第一个数个位作为新数的千位,
将第二个数个位作为新数的百位,
将第二个数的十位作为新数的十位

将第一个数的十位作为新数的个位,
打印该新数。
 

#include<stdio.h>int main(void)
{int a,b,c1,c2,c3,c4,num;printf("Input two num:");scanf("%d %d",&a,&b);c1 = a % 10 * 1000;c2 = b % 10 * 100;c3 = b / 10 * 10;c4 = a / 10;num = c1+c2+c3+c4;printf("num = %d\n",num);return 0;
}

运行结果:

相关文章:

学习日记:数据类型2

目录 1.转义字符 2.隐式类型转换 2.1 强制类型转换 2.2 不同类型间赋值 3.运算符 表达式 3.1 算术运算符 3.2 算术运算优先级 3.3 赋值运算 3.3.1 不同类型间混合赋值 3.4 逗号运算 4.生成随机数 5. 每日一练 1.转义字符 \n 表示换行 \t …...

Django Web框架——05

文章目录 admin 后台数据库管理注册自定义模型类修改自定义模型类的展现样式模型管理器类再谈Meta类 数据表关联关系映射一对一映射一对多映射多对多映射 cookies 和 sessioncookiessessionCookies vs session admin 后台数据库管理 django 提供了比较完善的后台管理数据库的接…...

【React】项目的目录结构全面指南

文章目录 一、React 项目的基本目录结构1. node_modules2. public3. src4. App.js5. index.js6. .gitignore7. package.json8. README.md 二、React 项目的高级目录结构1. api2. hooks3. pages4. redux5. utils 三、最佳实践 在开发一个 React 项目时&#xff0c;良好的目录结构…...

Django学习(二)

get请求 练习&#xff1a; views.py def test_method(request):if request.method GET:print(request.GET)# 如果链接中没有参数a会报错print(request.GET[a])# 使用这个方法&#xff0c;当查询不到参数时&#xff0c;不会报错而是返回你设置的值print(request.GET.get(c,n…...

Java引用类型

强软弱虚 以 ZGC 为例&#xff0c;谈一谈 JVM 是如何实现 Reference 语义的 SoftReference 到底在什么时候被回收 &#xff1f; 如何量化内存不足 &#xff1f; PhantomReference 和 WeakReference 究竟有何不同 ThreadLocal 和 Netty ByteBuf中使用到的引用类型 https://w…...

ubunto安装redis

更新包管理工具 sudo apt update 安装Redis sudo apt install redis-server Redis已经安装并且服务已启动 sudo systemctl status redis-server Redis开机启动项 sudo systemctl enable redis-server 可以编辑配置文件 /etc/redis/redis.conf&#xff0c;然后重启Redis服务 比如…...

【odoo17 | Owl】前端js钩子调用列表选择视图

概要 在我们选择多对一或者多对多字段的时候&#xff0c;经常看到可以弹出列表弹窗让人一目了然的效果&#xff0c;效果如下&#xff1a; 那么&#xff0c;这种效果是odoo本身封装好的组件&#xff0c;我们在平时的前端界面开发的时候&#xff0c;既不是后端视图的情况下&#…...

MATLAB基础:函数与函数控制语句

今天我们继续学习Matlab中函数相关知识。 API的查询和调用 help 命令是最基本的查询方法&#xff0c;可查询所有目录、指定目录、命令、函数。 我们直接点击帮助菜单即可查询所需的API函数。 lookfor 关键字用于搜索相关的命令和函数。 如&#xff0c;我们输入lookfor inpu…...

2024.7.30 搜索插入位置(二分法)

题解 二分法 left和right标记二分区间 ans标记n&#xff0c;因为存在大于所有数的可能。 var searchInsert function(nums, target) {const n nums.length;let left 0, right n - 1, ans n;while (left < right) {//计算中位数let mid ((right - left) >> 1)…...

Socket通信(C++)

文章目录 什么是SocketSocket通信过程C Socket通信APIint socket(int domain, int type, int protocol);int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);struct sockaddrstruct sockaddr_unstruct sockaddr_in / struct sockaddr_in6 int connect(int …...

小白学大模型:LLaMA-Factory 介绍与使用

最近这一两周看到不少互联网公司都已经开始秋招提前批了。 不同以往的是&#xff0c;当前职场环境已不再是那个双向奔赴时代了。求职者在变多&#xff0c;HC 在变少&#xff0c;岗位要求还更高了。 最近&#xff0c;我们又陆续整理了很多大厂的面试题&#xff0c;帮助一些球友…...

java算法day26

java算法day26 207 课程表208 实现Trie(前缀树) 207 课程表 这题对应的知识是图论里的拓扑排序的知识。从题意就可以感受出来了。题目说如果要学习某课程&#xff0c;那么就需要先完成某课程。 这里我描述比较复杂的情况&#xff1a;课程与课程之间也有可能是多对一的场景或者…...

docker笔记7-dockerfile

docker笔记7-dockerfile 一、dockerfile介绍二、dockerfile指令三、构建自己的镜像 一、dockerfile介绍 Dockerfile是用来构建Docker镜像的构建文件&#xff0c;是由一系列命令和参数构成的脚本。 以下是常用的 Dockerfile 关键字的完整列表和说明&#xff1a; 二、docker…...

Spring-cloud Alibaba组件--Dubbo

远程调用技术 RestFul风格 基于HTTP协议实现&#xff0c;而HTTP是一种网络传输协议&#xff0c;基于TCP&#xff0c;规定了数据传输的格式。 RPC协议 Remote Produce Call 远程过程调用&#xff0c;类似的还有 RMI &#xff08; remote method invoke&#xff09;。自定义数…...

右值引用--C++11

左值引用和右值引用 传统的C语法中就有引用的语法&#xff0c;而C11中新增了的右值引用语法特性&#xff0c;所以从现在开始我们 之前学习的引用就叫做左值引用。无论左值引用还是右值引用&#xff0c;都是给对象取别名。 什么是左值&#xff1f;什么是左值引用&#xff1f;…...

这样做外贸报价表,客户看了才想下单

报价&#xff0c;是外贸业务中最重要的一步&#xff0c;作为外贸人&#xff0c;不会做报价表可不行。有人说&#xff0c;直接在邮件里回复价格不就好了&#xff1f;是的&#xff0c;产品简单的可以这么做&#xff0c;但你也不能忽视报价表的价值&#xff0c;一份完美的价格表对…...

Swift学习入门,新手小白看过来

&#x1f604;作者简介&#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️&#xff0c;主要职责&#xff1a;测试开发、CI/CD 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起进步。 &#x1f60a; 座右铭&#xff1a;不…...

【Ant Design Pro】快速上手

初始化 初始化脚手架&#xff1a;快速开始 官方默认使用 umi4&#xff0c;这里文档还没有及时更新&#xff08;不能像文档一样选择 umi 的版本&#xff09;&#xff0c;之后我选择 simple。 然后安装依赖。 在 package.json 中&#xff1a; "start": "cross-e…...

Hive3:Hive初体验

1、创建表 CREATE TABLE test(id INT, name STRING, gender STRING);2、新增数据 INSERT INTO test VALUES(1, 王力红, 男); INSERT INTO test VALUES(2, 钉钉盯, 女); INSERT INTO test VALUES(3, 咔咔咔, 女);3、查询数据 简单查询 select * from test;带聚合函数的查询 …...

blender顶点乱飞的问题解决

初学blender&#xff0c;编辑模式下移动某些顶点&#xff0c;不管是移动还是滑动都会出现定点乱飞的问题&#xff0c;后来才发现是开了吸附工具的原因&#xff01;&#xff01;&#xff01;&#xff01; 像下面这样&#xff0c;其实我只是在Z轴上移动&#xff0c;但是就跑的很…...

硬件电路设计|钡特电源 VB10-24D15MD 与 URA2415YMD-10WR3 封装兼容互通,工业 DC-DC 方案适配指南

在工控硬件研发、嵌入式电路设计工作中&#xff0c;工业 DC-DC 的选型直接决定整机供电稳定性与长期运行寿命&#xff0c;国产化直流电源模块如今已全面覆盖小功率隔离供电场景&#xff0c;成为工程师方案优化的核心选择。VB10-24D15MD 和 URA2415YMD-10WR3 作为 10W 等级高频使…...

工业网关、电机控制、人机界面:ATSAME70Q21B-AN的应用版图

ATSAME70Q21B-AN&#xff1a;300MHz Cortex-M7工业MCU的嵌入式应用解析在工业控制、人机界面和物联网网关等领域&#xff0c;微控制器需要在处理性能、外设集成度和环境适应性之间取得平衡。ATSAME70Q21B-AN是Microchip推出的基于ARM Cortex-M7内核的高性能32位微控制器&#x…...

你的串口通信稳定吗?STM32CubeMX配置USART1的避坑指南与稳定性测试

STM32串口通信稳定性实战&#xff1a;从配置陷阱到压力测试全解析 当你的嵌入式设备在实验室运行良好&#xff0c;却在现场频繁出现数据丢失或乱码时&#xff0c;问题往往出在那些容易被忽视的细节上。串口通信作为嵌入式系统中最基础的调试与数据交互接口&#xff0c;其稳定性…...

避开这些坑!在Quartus中设计硬布线CPU时,我的控制器和PC模块是如何调试的

硬布线CPU调试实战&#xff1a;从BEQ失效到波形分析的深度排错指南 当你在Quartus中完成单周期CPU的数据通路搭建&#xff0c;满心欢喜点击仿真按钮时&#xff0c;最令人崩溃的莫过于看到BEQ指令毫无反应、存储器读写数据错乱、或者PC计数器像脱缰野马般失去控制。这些看似简单…...

Cursor Pro自动化工具:跨平台GUI实现与机器码重置技术解析

1. 项目概述&#xff1a;Cursor Pro 自动化工具的诞生与价值作为一名长期与各类开发工具打交道的程序员&#xff0c;我深知一个趁手的“兵器”对效率的提升有多关键。Cursor&#xff0c;这款集成了强大AI能力的代码编辑器&#xff0c;凭借其智能补全、代码解释和重构功能&#…...

别再硬编码数据了!用QAbstractTableModel+QTableView打造你的第一个Qt桌面表格应用(附完整源码)

从零构建Qt桌面表格应用&#xff1a;实战学生信息管理系统 在桌面应用开发领域&#xff0c;数据展示与交互一直是核心需求。无论是企业内部的员工管理系统&#xff0c;还是学校里的成绩统计工具&#xff0c;一个高效、美观的表格界面往往能极大提升工作效率。对于C开发者而言&a…...

【AI研发知识管理终极指南】:SITS2026权威框架首次深度解密,3大认知盲区正在拖垮你的AI工程化落地?

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;SITS2026框架的诞生背景与范式革命 传统智能系统开发长期受限于异构协议耦合、时序语义模糊及跨域协同低效三大瓶颈。2024年全球工业智能峰会&#xff08;GIISS&#xff09;发布的《智能时序系统白皮书…...

终极分屏神器Nucleus Co-Op:一台电脑实现4人同时开黑完整指南

终极分屏神器Nucleus Co-Op&#xff1a;一台电脑实现4人同时开黑完整指南 【免费下载链接】nucleuscoop Starts multiple instances of a game for split-screen multiplayer gaming! 项目地址: https://gitcode.com/gh_mirrors/nu/nucleuscoop 你是否曾因朋友聚会时电脑…...

ARM架构计数器-定时器寄存器原理与应用

1. ARM架构中的计数器-定时器寄存器深度解析在ARM处理器架构中&#xff0c;计数器-定时器寄存器是实现精确时间控制和事件触发的核心组件。这些寄存器不仅为操作系统提供时间基准&#xff0c;还在虚拟化、安全扩展和实时系统中扮演关键角色。本文将深入剖析CNTHCTL和CNTHP_CTL等…...

StofDoctrineExtensionsBundle的IpTraceable扩展:自动记录用户IP地址的简单实现指南 [特殊字符]

StofDoctrineExtensionsBundle的IpTraceable扩展&#xff1a;自动记录用户IP地址的简单实现指南 &#x1f680; 【免费下载链接】StofDoctrineExtensionsBundle Integration bundle for DoctrineExtensions by l3pp4rd in Symfony 项目地址: https://gitcode.com/gh_mirrors/…...