一、循环简介

  实例程序

/*shoes1.c--把一双鞋的尺码变为英寸*/
#include <stdio.h>
#define ADJUST 7.64
#define SCALE 0.325

int main(void)
{
double shoe,foot;
printf("Shoe size(men's) foot length\n");
shoe = 3.0;
while(shoe<18.5) /*while循环*/
{ /*代码开始*/
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;
}

  解释while循环是怎么工作的:

    1、当第一次到达while循环时,检查括号里面的条件是否为真,即shoe<18.5?,若条件为真,执行下一句,然后打印结果,最后执行shoe=shoe+1;

    2、继续返回while部分判断shoe<18.5?此时shoe的值为4.0,因为在代码块里面shoe已经加1.0;

    3、继续返回while部分进行判断,知道shoe的值大于18.5,就不再执行while部分代码,即while()圆括号里面的条件返回结果为假时,就跳过循环,执行下面的语句。

    上面例子就是一个循环的演示,计算机内做着无数的循环操作,这也是我们手工难以简单完成的工作。

 二、基本运算符

  C使用运算符来代表算数运算

  1、赋值预算符:=

    在C里(包括很多程序设计语言),符号=不表示“相等”,而是一个赋值运算符。

    例如:height = 1.73;

    符号=的左边是一个变量名,右边是赋给该变量的值,方向是从右到左。

    几个术语:数据对象、左值、右值和操作数

     数据对象---是泛指数据存储区的术语,数据存储区用于保存值。

     左值---用于标识一个特定的数据对象的名字或表达式。

     右值---可赋给可修改左值的量

     操作数---运算符操作的对象。

  2、加法运算符:+

    使得在它两侧的值被加到一起。

  3、减法运算符:-

     从它前面的数减去它后面的数

  4、符号运算符:-和+

    负号可以用于指示或改变一个值的代数符号

  5、乘法运算符:*

  6、除法运算符:/

  7、运算符优先级:

    

  8、其他运算符:自增(++)和自减(--)

    前缀式:出现在它作用的变量的前面,先自增或自减,后参与算数

    后缀式:出现在它作用的变量的后面,先做运算,后自增

#include<stdio.h>
int main(void)
{
int a =1,b=1;
int q,r;
int aplus,plusb; aplus = a++;/*后缀*/
plusb = ++b;/*前缀*/
q = 2*++a;
r = 2*b++;
printf("a aplus b plusb\n");
printf("%1d %5d %5d %5d %5d %5d\n",a,aplus,b,plusb,q,r);
return 0;
}

  

    

重学C语言---05运算符、表达式和语句的更多相关文章

  1. 重学C语言

    重学C语言 #include <stdio.h> int main() { ; ; printf("I am %d year old.\n",age); printf( ...

  2. 重学C语言---01概述

    1.什么是C语言 C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点.计算机语言是从第二次世界大战以后,经历了戏剧性的发展过程.从机器语言到汇编语言和高级语言.C语言是与硬件 ...

  3. 重学C语言---02C语言概述

    1.第一个C语言实例 #include<stdio.h> int main(void) /*一个简单的C程序*/ { int num; /*定义一个num的变量*/ num = ; /*为 ...

  4. PHP语句【变量、运算符表达式、语句】

    一.变量的方法.1.empty可以用empty的方法能够判断变量的值是不是为空.①如果我们看一下某一个变量是不是已经存在过了假如我们输出一下 var_dump (empty($a)); 返回值为tru ...

  5. c语言(3)--运算符&表达式&语句

    计算机的本职工作是进行一系列的运算,C语言为不同的运算提供了不同的运算符! 1.那些运算符们 .基本运算符 算术运算符:+ - * /  % ++ -- 赋值运算符:= 逗号运算符:, 关系运算符:& ...

  6. 重学C语言 -- printf,scanf

     printf();    用来显示格式串的内容          注意: 参数不可以换行,否则会出一个警告.       格式串中占位符比表达式数量多     会显示一个无意义值 格式串中占位符比表 ...

  7. 重学C语言---04字符串和格式化输入/输出

    1.程序示例 //talkback.c一个能为你提供一些信息的对话框 #include <stdio.h> #include <string.h> //提供strlen函数原型 ...

  8. 重学C语言之结构体

    概念 结构体是一种构造类型,由若干个成员组成,成员可以是基本数据类型,或是另一个结构体 声明结构体 struct 结构体名 { 成员列表 }; 结构体名表示结构的类型名. 声明一个结构体表示创建一种新 ...

  9. 重学C语言---03数据和C

    1.数据的必要性.数据使我们生活中不可缺少的东西,程序也是如次,离不开数据.将文字.图片和单词等输入到算计,将其展现出来或者做一系列操作等. 2.实例程序. /*rhodium.c--用金属铑衡量体重 ...

随机推荐

  1. SpringBoot + docker + neo4j

    下拉镜像 docker pull neo4j 启动镜像 docker run -d -p 7473:7473 -p 7687:7687 -p 7474:7474 neo4j 打开浏览器:http:// ...

  2. Java - replace a character at a specific index in a string?

    String are immutable in Java. You can't change them. You need to create a new string with the charac ...

  3. StreamSets学习系列之StreamSets的集群安装(图文详解)

    不多说,直接上干货! 若是集群安装 需要在对应节点执行相同的操作. 见 StreamSets学习系列之StreamSets支持多种安装方式[Core Tarball.Cloudera Parcel . ...

  4. OSRM笔记

    OSRM OSRM(OpenStreetMap Routeing Machine)可用于路线规划.作为高性能的路线规划引擎,OSRM使用C++14编写,基于开源的OpenStreetMap数据实现. ...

  5. java 正则例子

    1.不易开头.结尾:小数:圆角字符 包含数字.字母.圆角字符 不以<br/>开头.结尾,但中间可以存在 小数中的小数点是半角 正则表达式 "^(?!<br/>)(([ ...

  6. Navicat创建视图与美化SQL

    数据库-->视图-->新建视图,点击视图创建工具,将需要用到的表拖入到右侧,然后再底部填写具体的字段等,示意图如下: 注意:视图的字段别名或者列名是不能重复的,否则创建失败: 当视图语句非 ...

  7. vue---数据更新,视图不更新问题

    写点赞功能时,点赞后已经追加到对象里了,但是视图没有更新. 查找了些资料: 数据已经更新了但是视图不更新的问题,有几个原因: 1.根属性不存在,而想要直接给根属性赋值导致的视图不更新.此时初始化属性的 ...

  8. .16-浅析webpack源码之编译后流程梳理

    这节把编译打包后的流程梳理一下,然后集中处理compile. 之前忽略了一个点,如下: new NodeEnvironmentPlugin().apply(compiler); // 引入插件加载 i ...

  9. C#基础知识回顾--串行化与反串行化

    串行化是指存储和获取磁盘文件.内存或其他地方中的对象.在串行化时,所有的实例数据都保存到存储介质上, 在取消串行化时,对象会被还原,且不能与其原实例区别开来.只需给类添加Serializable属性, ...

  10. 关于.net程序集引用不匹配的问题

    今天启动asp.net mvc 程序,其中也用到了web api ,autofac等,为了版本兼容性问题,将mvc和 web api 的版本控制到5.2.0.0,Newtonsoft.Json 的版本 ...