基本运算符

news2024/11/18 7:51:59

参考C Primer Plus进行C语言学习

文章目录

  • 基本运算符
    • 除法运算符:/
  • 其他运算


1、除法运算符

        在C语言中,整数除法结果的小数部分被丢弃,这一过程被称为截断。

2.其他运算符

(1)sizeof运算符和size_t类型

        回顾一下,sizeof运算符以字节为单位返回运算对象的大小。如果运算对象是类型(如:float),则必须用圆括号将其括起来。

#include<stdio.h>
int main()
{
	int n=0;
	size_t intsize;
	
	intsize=sizeof(int);
	printf("n=%d,n has %zd bytes;all ints have %zd bytes.\n",n,sizeof n,intsize);
	return 0;
}

        C语言规定,sizeof返回size_t类型的值。这是一个无符号整数类型,但它不是新类型。前面介绍过,,size_t是语言定义的标准类型。C有一个typedef机制,允许程序员为先有类型创建别名。

        typedef double real;

        这样,real就是double的别名。现在,可以声明一个real类型的变量:

        real deal;        //使用typedef

        类似的,C头文件系统可以使用typedef把size_t作为unsigned int或 unsigned long的别名。这样,在使用size_t类型时,编译器会根据不同的系统替换标准类型。

(2)求模运算符:%

        用于整数运算,求模运算符给出其左侧整数除以右侧整数的余数。

#include<stdio.h>
#define SEC_PER_MIN 60
int main(void)
{
	int sec,min,left;
	printf("Convert secnd to minutes and seconds!\n");
	printf("Enter the number of seconds\n");
	scanf("%d",&sec);	//读取秒数
	while(sec>0)
	{
		min=sec/SEC_PER_MIN;	//截断分钟数
		left=sec%SEC_PER_MIN;	//剩下的秒数
		printf("%d second is %d minutes,%d second.\n",sec,min,left);
		printf("Enter next value:\n");
		scanf("%d",&sec);
	}
	printf("Done!\n");
	

(3)递增运算符:++

#include<stdio.h>
int main()
{
	int ultra=0,super=0;
	while(super<5)
	{
		super++;
		++ultra;
		printf("super=%d,ultra=%d\n",super,ultra);
	}
	return 0;
}

 程序中两条递增语句创建两个缩写的原因之一是,紧凑结构的代码让程序更为简洁,可读性更高。

最后,递增运算符还有一个在某些场合特别有用的特性。

#include<stdio.h>
int main()
{
	int a=1,b=1;
	int a_post,pre_b;
	a_post=a++;
	pre_b=++b;
	printf("a	a_post	b	pre_b\n");
	printf("%1d	%5d	%5d	%5d\n",a,a_post,b,pre_b);
	return 0;
}

结果的差异,这就是++的前缀形式和后缀形式的差异。 

a_post=a++;        //后缀:使用a的值之后,递增a

 b_pre=++b;        //前缀:使用a的值之前,递增b

(4)递减运算符:--

#include<stdio.h>
#define MAX 100
int main()
{
	int count=MAX+1;
	while(--count>0)
	{
		printf("%d bottles of spring water on the wall,"
		"%d bottles of spring water!\n",count,count);
		printf("Take one down and pass it around,\n");
		printf("%d bottles of spring water!\n\n",count-1);	
	}
	return 0;
}

 


总结

今天就先学这么些,明天学习表达式和语句。加油!

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

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

相关文章

代码随想录算法训练营三刷day13 |栈与队列 之 239. 滑动窗口最大值 347.前 K 个高频元素

三刷day13 239. 滑动窗口最大值347.前 K 个高频元素 239. 滑动窗口最大值 题目链接 解题思路&#xff1a; 设计单调队列的时候&#xff0c;pop和push操作要保持如下规则&#xff1a; pop(value)&#xff1a;如果窗口移除的元素value等于单调队列的出口元素&#xff0c;那么队…

Jumpserver堡垒机搭建

Jumpserver概述: Jumpserver优势:

DevOps学习 | 如何应对IT服务交付中的问题?

目录 前言 DevOps是什么&#xff1f; DevOps发展历程 DevOps与微服务、容器的关系 书本推荐 前言 作为一个热门的概念&#xff0c;DevOps这个名词在程序员社区里频频出现&#xff0c;备受技术大佬们的追捧。甚至网络上有了“南无DevOps”的戏言&#xff08;南无在梵语的意…

(学习日记)2024.03.04:UCOSIII第六节:main函数+前六节总结

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

连锁线上线下门店管理为什么需要使用分账系统

连锁线上线下门店管理的复杂性要求采用有效的分账系统&#xff0c;以实现降低税务风险、保障资金安全和合规运营。首先&#xff0c;通过分账系统&#xff0c;可以清晰记录不同门店的收入和支出情况&#xff0c;有利于确保税务合规性。其次&#xff0c;分账系统有助于将不同门店…

Scratch 第十六课-弹珠台游戏

第十六课-弹珠台游戏 大家好&#xff0c;今天我们一起做一款弹珠台scratch游戏&#xff0c;我们也可以叫它弹球游戏&#xff01;这款游戏在刚出来的时候非常火爆。小朋友们要认真学习下&#xff01; 这节课的学习目标 物体碰撞如何处理转向问题。复习键盘对角色的控制方式。…

23.基于springboot + vue实现的前后端分离-在线旅游网站系统(项目 + 论文PPT)

项目介绍 本旅游网站系统采用的数据库是MYSQL &#xff0c;使用 JSP 技术开发&#xff0c;在设计过程中&#xff0c;充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。 技术选型 后端: SpringBoot Mybatis 数据库 : MyS…

Django官网项目 二

官网地址&#xff1a;Writing your first Django app, part 2 | Django documentation | Django 创建模组&#xff1a; 注册model &#xff08;bug&#xff1a;没有加后面的逗号&#xff09; 在manage.py 的目录下&#xff1a; python manage.py makemigrations polls pyth…

打印机状态错误的解决方法

在电脑操作中&#xff0c;用户遇到打印机状态错误的问题&#xff0c;但不知道怎么操作才可以解决问题&#xff1f;接下来小编介绍打印机状态错误的解决方法&#xff0c;帮助大家轻松解决打印机出现错误状态的问题&#xff0c;快速恢复打印机的正常工作状态&#xff0c;从而满足…

固定资产管理系统建设方案

固定资产管理系统需求要点&#xff1a; 1. 实现公司内部固定资产管理全生命周期管理&#xff0c;包括资产采购、资产入库、资产领用、资产借用、资产归还、资产报废、资产维修、资产调拨等全过程管理。 2. 可实现集团内部固定资产盘点管理&#xff0c;包括盘点计划、盘点查询等…

多平台拼音输入法软件的开发

拼音输入法从上个世纪发展到现在, 已经发展了几十年了, 技术上已经非常成熟了. 换句话说, 就是实际上没多少技术含量, 随便来个人就能手搓一个. 本文介绍一个简单的多平台拼音输入法软件的设计和实现, 支持 GNU/Linux (ibus) 平台 (PC) 和 Android 平台 (手机). 目录 1 中文输…

【C++庖丁解牛】默认成员函数

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 前言1. 构造函数1.1 …

低空经济20人|卓翼智能任雪峰:以技术驱动市场,引领无人机细分领域创新

作为国内系留无人机领域的领头羊企业&#xff0c;卓翼智能致力于提供智能无人系统解决方案。本期“低空经济20人”请到卓翼智能CEO任雪峰分享他对系留无人机研发应用的经验以及未来无人机行业生态发展的观点。 如今&#xff0c;无人机的应用场景逐渐广泛&#xff0c;在社会发展…

pycharm社区版+miniconda 环境配置学习

使用电脑为win10 64bit 一、下载&#xff1a; 1.pycharm社区版地址&#xff1a; 其他版本 - PyCharm 2.miniconda下载地址&#xff1a; Index of /anaconda/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 3.python下载地址&#xff1a; https://www.python.or…

百度AI,能否“投”出未来?

图片&#xff5c;freeflo.ai ©自象限原创 作者丨程心、罗辑 2月28日&#xff0c;百度发布了2023年四季度财报及全年未经审计的财务报告&#xff0c;AI大模型带来的收入和利润成为最大的亮点。 财报显示&#xff0c;2023年百度集团总营收达1345.98亿元&#xff0c;同比增…

一文读懂Penpad 以 Fair Launch 方式推出的首个资产 PEN

随着 2 月 28 日比特币重新站上 6 万美元的高峰后&#xff0c;标志着加密市场正在进入新一轮牛市周期。在 ETF 的促进作用下&#xff0c;加密市场不断有新的资金流入&#xff0c;加密货币总市值不断攀升。Layer2 市场率先做出了反应&#xff0c;有数据显示&#xff0c;当前以太…

混合注意力机制全新工作!性能表现SOTA!准确率达98.53%

在神经网络中&#xff0c;为增强模型对数据中重要特征的识别和处理能力&#xff0c;研究者们通常会同时使用不同类型的注意力机制&#xff0c;包括空间注意力、通道注意力、自注意力等。这种结合了多种不同类型注意力机制的技术就是混合注意力机制。 混合注意力机制的研究和应…

Thingsboard本地源码部署教程

本章将介绍ThingsBoard的本地环境搭建&#xff0c;以及源码的编译安装。本机环境&#xff1a;jdk11、maven 3.6.2、node v12.18.2、idea 2023.1、redis 6.2 环境安装 开发环境要求&#xff1a; Jdk 11 版本 &#xff1b;Postgresql 9 以上&#xff1b;Maven 3.6 以上&#xf…

电脑无法开启虚拟化

vm开启虚拟化失败 如果出现以下错误&#xff0c;需要进入bios界面&#xff0c;不同电脑进入界面的方式不一样。这里以hp为例&#xff1a; 1、关机后&#xff0c;按住开机键和f10&#xff0c;进入如下界面&#xff08;语言在主菜单里面&#xff09; 2、选择先进和下面的系统选…

检修弧形导轨需遵守的原则

弧形导轨被广泛应用在各行各业中&#xff0c;特别是工业自动化领域中&#xff0c;是自动化机械设备中重要的传动零部件。在使用弧形导轨时&#xff0c;为防止意外发生或对机械设备造成损坏&#xff0c;在检修过程中必须遵守以下一些原则&#xff1a; ●安全第一&#xff1a;出现…