循环简介和基本运算符

根据C Primer Plus第五章进行学习

文章目录

  • 循环简介
  • 基本运算符
    • 1.赋值运算符:=
    • 2.加法运算符:+
    • 3.减法运算符:-
    • 2.乘法运算符:*
  • 总结


1.循环简介

        如下代码可以体现不使用循环的局限性:

#include<stdio.h>
#define ADJUST 7.31
int main()
{
	const double SCALE=0.333;
	double shoe,foot;
	shoe=9.0;
	foot=SCALE*shoe+ADJUST;
	printf("Shoe size (men's) foot length\n");
	printf("%10.1f %15.2f inches\n",shoe,foot);
	return 0;
}

(1)while循环

#include<stdio.h>
#define ADJUST 7.31
int main()
{
	const double SCALE=0.333;
	double shoe,foot;
	printf("Shoe size (men's) foot length\n");
	shoe=3.0;
	while(shoe<18.5)
	{
		foot=SCALE*shoe+ADJUST;
		printf("%10.1f %15.2f inches\n",shoe,foot);
		shoe=shoe+1.0;			
	}
	printf("If the shoe fits,wear it.\n");
	return 0;
}

当 shoe<18.5

()中的内容就是要被重复的内容。花括号以及被花括号括起来的部分被称为块(block)。该循环一直持续到shoe=19.0。

 2.基本运算符

1.赋值运算符:=

bmw=2002;

把值2002赋给变量bmw。也就是说,=左侧为一个变量名,右侧是赋给该变量的值。赋值行为从右往左进行。

i=i+1;

该语句的意思是:找出变量i的值,把该值+1,然后赋给i。

在C语言中,2002=bmw;

类似这样的语句没有意义。因为在这里,2002被称为右值,只能是字面常量,不能给变量赋值,常量本身就是它的值。=左侧必须是一个变量名。

2.加法运算符:+

printf("%d",4+20);

打印的是24,而不是4+20。

int ex;

int why;

int zee;

const int TWO=2;

why=42;

zee=why;

ex=TWO*(why+zee);

        这里,ex、why和zee,都是可修改的左值,它们可用于赋值运算符的左侧和右侧。TWO是不可修改的左值,它只能用于赋值运算符的右侧。42是右值,它不能引用某指定内存位置。另外,why和see是可修改的左值,表达式(why+zee)是右值,该表达式不能表示指定内存位置。

3.减法运算符 :-

下面语句表示把200.0赋给num:
num=224.0-24.0;

4.乘法运算符:*

#include<stdio.h>
int main()
{
	int num=1;
	while(num<21)
	{
		printf("%4d %6d\n",num, num*num);
		num=num+1.0;			
	}
	return 0;
}

该程序打印数字1~20及其平方。

(1)指数增长 

一位统治者奖励学者,学者指着棋盘说,在第1个方格放1粒小麦,第2个放2粒,第3个放4粒,第4个放8粒,以此类推。下列程序计算出每个方格放几粒小麦。并计算了总数。

#include<stdio.h>
#define SQUARES 64
int main()
{
	const double CROP=2E16;
	double current,total;
	int count=1;
	printf("square	grains	total	");
	printf("fractions of \n");
	printf("		added	grains	");
	printf("world total\n");	
	total=current=1.0;
	
	printf("%4d %13.2e %12.2e %12.2e\n",count,current,total,total/CROP);
	while(count<SQUARES)
	{
		count=count+1;
		current=2.0*current;
		total=total+current;
		printf("%4d %13.2e %12.2e %12.2e\n",count,current,total,total/CROP);			
	}
	return 0;
}


下节继续学习基本运算符,加油! 

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

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

相关文章

【C语言】linux内核xmit_one函数

一、中文注释 static int xmit_one(struct sk_buff *skb, struct net_device *dev,struct netdev_queue *txq, bool more) {unsigned int len;int rc;// 如果全局ptype列表或者设备特定的ptype列表不为空&#xff0c;则执行网络接口层网络层的NIT&#xff08;Network Tap&…

【C++】vector的使用及其模拟实现

这里写目录标题 一、vector的介绍及使用1. vector的介绍2. 构造函数3. 遍历方式4. 容量操作及空间增长问题5. 增删查改6. vector二维数组 二、vector的模拟实现1. 构造函数2. 迭代器和基本接口3. reserve和resize4. push_back和pop_back5. insert和erase5. 迭代器失效问题5. 浅…

docker 基础(二)

常见命令 Docker最常见的命令就是操作镜像、容器的命令&#xff0c;详见官方文档&#xff1a;https://docs.docker.com/ 数据卷 命令说明文档地址docker volume create创建数据卷docker volume createdocker volume ls创建数据卷docker volume lsdocker volume rm查看所有数…

NGINX 高频面试题及实践总结

NGINX 是一个高性能的开源 Web 服务器和反向代理服务器&#xff0c;被广泛应用于互联网架构中。在面试中&#xff0c;对 NGINX 的相关知识可能会成为考察的重点。下面我们整理了一些常见的 NGINX 面试题及答案&#xff0c;希望对大家在面试前的准备有所帮助。 ## 1. 什么是 NG…

如何系统性的学习推荐系统?

推荐一本适合推荐系统、计算广告、个性化搜索领域的从业人员阅读的书&#xff1a;《互联网大厂推荐算法实战》。快手公司算法专家10余年的实战经验总结。涵盖一线互联网公司当前采用的主流推荐算法&#xff0c;凸显可用性、实用性提供从算法基本原理&#xff0c;到技术框架再到…

python语言1

一、pytho中的注释 1.1注释的理解 程序员在代码中对代码功能解释说明的标注性文字可以提高代码的可读性注释的内容将被python解释器忽略&#xff0c;不被计算机执行 1.2注释的分类 注释分为&#xff1a;单行注释、多行注释、中文声明注释 &#xff08;1&#xff09;单行注…

java项目打包运行报异常:xxxxx-1.0-SNAPSHOT.jar中没有主清单属性

pom.xml中加入这段话即可 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.4.4</version><executions><execution><…

雨云:为你拨开云雾见青天

一、雨云品牌概览 雨云&#xff0c;这名字一听就让人联想到蓝天白云&#xff0c;清爽自然。那么&#xff0c;这个品牌是否真的如其名&#xff0c;能为我们这些在数字世界中漂泊的旅人提供一片宁静、稳定的“云”呢&#xff1f;接下来&#xff0c;让我们深入了解雨云的资质、能…

【Micropython教程】I2C的使用

文章目录 前言一、I2C的使用1.1 分析一种情况1.2 初始化I2C总线1.3 扫描可用的I2C设备1.4 向指定地址写入数据1.5 读取指定地址的数据1.6 关闭I2C总线 二、示例代码总结 前言 MicroPython 是一种精简的 Python 实现&#xff0c;旨在运行在微控制器和嵌入式系统上。在嵌入式开发…

AVL 树

AVL树的概念 二叉搜索树虽可以缩短查找的效率&#xff0c;但如果数据有序或接近有序二叉搜索树将退化为单支树&#xff0c;查找元素相当于在顺序表中搜索元素&#xff0c;效率低下。因此&#xff0c;两位俄罗斯的数学家G.M.Adelson-Velskii和E.M.Landis在1962年 发明了一种解决…

vue3的router

需求 路由组件一般放在&#xff0c;pages或views文件夹, 一般组件通常放在component文件夹 路由的2中写法 子路由 其实就是在News组件里面&#xff0c;再定义一个router-view组件 他的子组件&#xff0c;机会渲染在router-view区域 路由传参 <RouterLink :to"/news…

腾讯云最新活动_腾讯云促销优惠_代金券-腾讯云官网入口

腾讯云服务器多少钱一年&#xff1f;62元一年起&#xff0c;2核2G3M配置&#xff0c;腾讯云2核4G5M轻量应用服务器218元一年、756元3年&#xff0c;4核16G12M服务器32元1个月、312元一年&#xff0c;8核32G22M服务器115元1个月、345元3个月&#xff0c;腾讯云服务器网txyfwq.co…

xsslabs第七关

源码 <!DOCTYPE html><!--STATUS OK--><html> <head> <meta http-equiv"content-type" content"text/html;charsetutf-8"> <script> window.alert function() { confirm("完成的不错&#xff01;"…

《2023年勒索软件攻击态势报告》

获取方式&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1zd-yVsuGwJADyyGNFR_TIQ?pwd2lo0 提取码&#xff1a;2lo0

游戏空间划分技术

一、 前言 空间划分算法有很多&#xff0c;比如均匀网格&#xff0c;四/八叉树&#xff0c;k-d树&#xff0c;Bsp树&#xff0c;每一种算法都有自己的优缺点&#xff0c;我们需要从理论上理解这些算法&#xff0c;然后在实际项目中进行灵活的运用。 游戏中经常使用空间划分算…

k8s二进制部署的搭建

1.1 常见k8s安装部署方式 ●Minikube Minikube是一个工具&#xff0c;可以在本地快速运行一个单节点微型K8S&#xff0c;仅用于学习、预览K8S的一些特性使用。 部署地址&#xff1a;Install Tools | Kubernetes ●Kubeadm Kubeadm也是一个工具&#xff0c;提供kubeadm init…

【前端素材】推荐优质后台管理系统网页Hyper平台模板(附源码)

一、需求分析 1、系统定义 后台管理系统是一种用于管理和控制网站、应用程序或系统的管理界面。它通常被设计用来让网站或应用程序的管理员或运营人员管理内容、用户、数据以及其他相关功能。后台管理系统是一种用于管理网站、应用程序或系统的工具&#xff0c;通常由管理员使…

Charles抓包 - 安装、激活、证书配置

最近刚好又遇到了抓包的需求&#xff0c;之前一直使用 Fiddler 抓包&#xff0c;这几年一直听大家都在用 Charles 抓包&#xff0c;正好一起了解下&#xff08;一般建议掌握一种抓包方式即可&#xff0c;都可以解决同种需求场景&#xff09; 抓包 Fiddler抓包 Charles 下载、安…

深度解读篇章:剖析构建互联网大厦的基石——TCP/IP协议全貌

&#x1f440;&#x1f440;&#x1f440; 引言 今天&#xff0c;我们一同揭幕的是驱动全球互联网脉搏跳动的核心机密——TCP/IP协议体系。没有它&#xff0c;就不会有现今这般高效便捷的网络生活体验&#xff0c;无论在线教育、远程办公&#xff0c;抑或是电子商务、社交媒体…

强大而灵活的python装饰器

装饰器&#xff08;Decorators&#xff09; 一、概述 在Python中&#xff0c;装饰器是一种特殊类型的函数&#xff0c;它允许我们修改或增强其他函数的功能&#xff0c;而无需修改其源代码。装饰器在函数定义之后立即调用&#xff0c;并以函数对象作为参数。装饰器返回一个新…