运算符和条件结构

  • sizeof运算符

    使用sizeof运算符可以获得数据类型占用内存空间的大小 ,sizeof()是运算符不是函数,sizeof(++ num)编译器不管++,只量num的长度。

  • 逻辑运算符

运算符 表达式 说明
&& 与 条件1 && 条件2 两个条件同时为真时,结果为真
| | 或 条件1 | | 条件2 两个条件有一个为真时,结果为真
! 非 ! 条件 条件为真时,结果为假;条件为假时,结果为真
  • 运算符优先级

  ! 、 ( ) 、sizeof()、++ -- 、

  算数运算符

  关系运算符

  &&

   | |

  赋值运算符

  • 位运算符

运算符 作用 示例
& 按位与 两个操作数同时为1结果为1
| 按位或 两个操作数只要有一个为1,结果就为1
~ 按位非 操作数为1,结果为0;操作数为0,结果为1
^ 按位异或 两个操作数相同,结果为1,;两个操作数不同,结果为0
<< 左移 右侧空位补0
>> 右移 左侧空位补符号位
>>> 无符号右移 左侧空位补0

例:5 & 6 → 0101 & 0110 = 0100  → 5 & 6 = 4

  5 | 6 → 0101 | 0110 = 0111 → 5 | 6 = 7

  ~ 5 → ~0101 = 1010 → ~5 = 7

  5 >> 1 → 0101 >> 1 = 0010 → 5 >> 1 = 2

  5 << 1 → 0101 << 1 = 1010 → 5 << 1 = 10

  • 三元运算符

    三元运算符?类似条件语句if, int num = 5 > 6 ? 45 : 90 ;

    如果5>6为真, num为45,如果5>6为假,num为90。

   short sex = 0;   //0--男   非0--女printf("%s\n",sex?"女":"男");

循环

while循环

  • 基本语法
while(循环条件){循环操作语句
}

  • 循环三要素
  1. 循环变量的初值
  2. 循环变量的判断
  3. 循环变量的更新

  先判断,再执行


循环习题

淘宝2015年的双十一交易额为800亿,并且每年以25%的增长趋势增长,求双十一交易额达到2000亿的年份

double money = 800;           //循环变量的初值,初始交易额为800亿
int year = 2015;            //时间初值
while(money  <= 2000){        //循环变量的判断,小于等于2000时执行money = (1+0.25)money;     //循环变量的更新,每年递增百分之25 year++;             //循环计数,循环一次+1
}
printf("当%d年时,交易额达到2000亿。",year)

猴子每天吃桃子总数的一半,然后扔一个,第十天刚好剩1个,求一共多少 桃

int peach = 1;      //循环初值,桃子第十天剩一个
int day = 9;       //桃子第十天的数已知,只需从第九天开始算,循环加到第一天
whlie(day > 0){peach = (peach + 1) * 2day--;
}
printf("桃子的总数是:%d\n",peach);

打印斐波那契数列
1,1,2,3,5,8,13,21,34......打印十个

int i = 0;
int a = 1;
int b = 1;
while (i < 5) {printf("%d\n%d\n",a,b);       //先打印第一个第二个a = a + b;                    //a是第三个数,用第一第一二个相加赋值b = a + b;                    //b是第四个数,用第三第四个数相加,赋值i++;                          //每次打印两个数,显示10个数,i取一半5
    }

取出9527的每一位数字,并加5模10,用单独循环计数器计算位数

  int num = 9527;//使用单独的循环计算数字的位数  int counter;  int tempNum = num;  while (tempNum != 0) {counter++;tempNum / 10;}//每一位:+5%10//取出每一位的原理://个位:=num % 10;//十位:=num /10 % 10;   去掉个位再模10//百位:=num /10 /10 %10;   规律每次/10while (num != 0) {         //当最后9除以10时候为0 ,停止循环int temp = num % 10;temp = (temp + 5) % 10;printf("%d\n", temp);num /= 10;     //每次循环数字都要去掉个位数字}

转载于:https://www.cnblogs.com/BooneZan/p/7932724.html

20171130C语言知识点梳理相关推荐

  1. C语言入门part1—大致知识点梳理(上篇)

    C语言入门part1-大致知识点梳理(上篇) **关键字:**变量常量,全局变量局部变量,字符串+转义字符+注释,sizeof,求数据类型范围(举例char类型),原码反码补码,scanf等等杂七杂八 ...

  2. C语言入门part2—大致知识点梳理(中篇)

    C语言入门part2-大致知识点梳理(中篇) 关键字: 选择语句,循环语句,函数,数组,操作符,if(a >= 15 && a <= 20)和 if( 15 <= a ...

  3. c语言around用法,around的用法知识点梳理

    around的意思是在四周,他常常作为副词使用,下面小编把它的知识点总结给大家! 释义 around adv. 在四周;朝对立面;到处;漫无目的地;在附近;大约;围绕;以圆周计算;现有;转弯 prep ...

  4. Python培训教程之Python基础知识点梳理

    Python语言是入门IT行业比较快速且简单的一门编程语言,学习Python语言不仅有着非常大的发展空间,还可以有一个非常好的工作,下面小编就来给大家分享一篇Python培训教程之Python基础知识 ...

  5. Python教程:Python基础知识点梳理!

    Python语言是入门IT行业比较快速且简单的一门编程语言,学习Python语言不仅有着非常大的发展空间,还可以有一个非常好的工作,下面小千就来给大家分享一篇Python基础知识点梳理. 1.Pyth ...

  6. Python教程分享之Python基础知识点梳理

    Python语言是入门IT行业比较快速且简单的一门编程语言,学习Python语言不仅有着非常大的发展空间,还可以有一个非常好的工作,下面小千就来给大家分享一篇Python基础知识点梳理. Python ...

  7. 嵌入式全栈工程师_我花了半个月,整理出了这篇嵌入式开发学习指南(学习路线+知识点梳理)...

    不好意思久等了 这篇文章让小伙伴们久等了. 一年多以来,关于嵌入式开发学习路线.规划.看什么书等问题,被问得没有一百,也有大几十次了.但是无奈自己对这方面了解有限,所以每次都没法交代,搞得实在不好意思 ...

  8. 呕心沥血 JavaScript知识点梳理大全,超详细 建议收藏!!!

    呕心沥血 JavaScript知识点梳理大全,超详细 建议收藏!!! ✴️大家好,我是王同学,爆肝三天三夜王同学把JavaScript 知识点梳理了一遍,文章没有一点套路,只有满满的干货 ✴️如果对你 ...

  9. OpenCV图像处理知识点梳理

    OpenCV知识点梳理 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux.Windows.Android和Mas OS操作系统上. 它轻量级而且高效 ...

最新文章

  1. javascript(js)的小数点乘法除法问题
  2. Opencv常见用法和常见错误(一)
  3. 浏览器json格式化插件 yformater
  4. 协同过滤算法_机器学习 | 简介推荐场景中的协同过滤算法,以及SVD的使用
  5. EJB通过ANT提高EJB应用程序的开发效率、无状态发展本地接口bean、开发状态bean...
  6. Redis 哨兵(sentinel)模式集群配置(5.0.3版本)
  7. 冲浪科技获Ventech China数百万美元天使轮融资,发力自动驾驶行业
  8. ubuntu命令查询版本和内核版本
  9. IPXX防护等级中关于防水实验的规定
  10. 为了机器学习把MacBook Pro换成Asus TUF Gaming 全家桶
  11. Objective-C 函数(方法)的定义和调用
  12. 移动增值短信平台实施计划方案(报业集团短信手机报)
  13. Origin复制图形格式
  14. 机器学习案例之_金融反欺诈预测
  15. ML-Agents案例之金字塔
  16. web文件管理系统_实用开源项目,基于Web的文件管理系统——DocSys
  17. 计算机一直重启故障原因可能是,Windows电脑一直自动重启的原因和解决方法
  18. linux flash擦除命令,Linux下flash操作读、写、擦除步骤
  19. [RCtank]在xcode的iOS虚拟机中对BLE(蓝牙4.0)进行调试
  20. Camtasia“喀秋莎”2022一款录屏神器

热门文章

  1. 如何保持连接_酒店厨房设备如何保养清洗?
  2. 2017计算机绘图试题及答案,2017年度__电大(精编新版)计算机绘图期末复习试题及答案参考小抄.doc...
  3. css3 fieldset,CSS3 fieldset/input 音乐均衡器/音效调节器
  4. loss低但精确度低_目标检测中的Loss改进:GIOU
  5. java数组包含某个值_如何检查Java数组是否包含值?
  6. 20多个Maven命令和选项(备忘单)
  7. Android自定义ListView示例,以创建不可滚动的ListView
  8. cv::cornerSubPix()亚像素角点检测
  9. 在如今的Web前端环境下,如何提升自己的竞争力?
  10. C++进阶教程之信号处理