c语言运算符优先级与while循环案例
sizeof可以获取数据类型的内存中的大小(字节)
#include <stdio.h>
#include <stdlib.h>
// standared 标准
// input output 输入/输出
// header 头 .h头文件
int main() // 返回int,如果是void表示没有返回
{
// 逻辑运算符,位运算符
int num = 8;
int sizeOfNum = sizeof(num);
printf("num的内容空间%d\n",sizeOfNum); // 4
double num2 = 8;
int sizeOfNum2 = sizeof(num2);
printf("num的内容空间%d\n",sizeOfNum2); // 8
return 0;
}
运算符优先级
#include <stdio.h>
#include <stdlib.h>
// standared 标准
// input output 输入/输出
// header 头 .h头文件
int main() // 返回int,如果是void表示没有返回
{
// 算术运算符 + - * / %
// 关系运算符 > < >= <= == !=
// 逻辑运算符 && || !
// 位运算符 & | ^ ~
int num = 10;
int result = num++ == 10 && --num == 10;
/** 等同于
int result1 = (num++ == 10);
int result2 = (--num == 10);
int result = result1 && result2;
**/
printf("%d\n",result); // 1
return 0;
}
老九语录,这道题的思路是这样的,你看对不对?自己在讲解的时候,就渐渐的清晰了。学会问问题,学会讲解问题。
() sizeof ++ --
!
算术运算符 + - * / %
关系运算符 > < >= <= == !=
&&
||
赋值运算符
while循环
#include <stdio.h>
#include <stdlib.h>
int main()
{
// while循环
int i = 0;
while (i<10) {
printf("第%d遍\n",i);
i++;
}
return 0;
}
while循环
循环三要素,循环变量的初值、判断、更新。也就是i的初值,判断,更新。
#include <stdio.h>
#include <stdlib.h>
int main() {
// 计算1-100的和
int sum;
sum = 0;
// sum = (1+100) * 50;
// printf("1到100的和为:%d\n",sum);
int i;
i = 1;
while (i <= 100) {
sum = sum + i;
i++;
}
printf("1到100的和为:%d\n",sum);
return 0;
}
密码输错案例
#include <stdio.h>
#include <stdlib.h>
int main() {
// 使用循环实现三次密码错误,推出系统
int i = 0;
int password = 123456;
int inPassword;
while (i < 3) {
printf("请输入密码:\n");
scanf("%d",&inPassword);
if (inPassword != password) {
i++;
printf("您输错了%d次\n",i);
}
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
// 某宝15年交易额是800亿,按照每年递增25%,哪一年超过2000
double trade_money = 800;
int year = 2015;
while (trade_money <= 2000) {
trade_money *= 1.25;
year++;
printf("%d年交易额.2%lf\n",year,trade_money);
}
printf("某宝在%d年,交易额将超过2000亿,交易额为%.2lf\n",year,trade_money);
return 0;
}
/*
2016年交易额1000.000000
2017年交易额1250.000000
2018年交易额1562.500000
2019年交易额1953.125000
2020年交易额2441.406250
某宝在2020年,交易额将超过2000亿,交易额为2441.406250
*/
小练习挺有意思的。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
int main() {
// 这个很有用,否则rand()会一直41
srand((unsigned) time(NULL));
// 使用循环模拟实现玩家对战
// 双方初始值HP均为100
// 每次攻击5~15
// HP最先到0或者以下的被KO
int liubeiHP = 100;
int sunquanHP = 100;
int attack;
int i = 0;
while(1) {
printf("************************************\n");
i++;
attack = (5 + rand()%11); // %11取值0-10
if (attack == 15) {
// 暴击
attack *= 2;
}
sunquanHP -= attack;
printf("孙权在第%d回合,受到伤害%d,剩余生命值%d\n",i,attack,sunquanHP);
if (sunquanHP <= 0) {
printf("孙权败了\n");
break;
}
attack = (5 + rand()%11);
if (attack == 15) {
// 暴击
attack *= 2;
}
liubeiHP -= attack;
printf("刘备在第%d回合,受到伤害%d,剩余生命值%d\n",i,attack,liubeiHP);
if (liubeiHP <= 0) {
printf("刘备败了\n");
break;
}
Sleep(500); // 需要引入<windows.h>
}
return 0;
}
/*
************************************
孙权在第1回合,受到伤害8,剩余生命值92
刘备在第1回合,受到伤害5,剩余生命值95
************************************
孙权在第2回合,受到伤害11,剩余生命值81
刘备在第2回合,受到伤害13,剩余生命值82
************************************
孙权在第3回合,受到伤害9,剩余生命值72
刘备在第3回合,受到伤害12,剩余生命值70
************************************
孙权在第4回合,受到伤害14,剩余生命值58
刘备在第4回合,受到伤害8,剩余生命值62
************************************
孙权在第5回合,受到伤害14,剩余生命值44
刘备在第5回合,受到伤害30,剩余生命值32
************************************
孙权在第6回合,受到伤害10,剩余生命值34
刘备在第6回合,受到伤害12,剩余生命值20
************************************
孙权在第7回合,受到伤害6,剩余生命值28
刘备在第7回合,受到伤害13,剩余生命值7
************************************
孙权在第8回合,受到伤害13,剩余生命值15
刘备在第8回合,受到伤害8,剩余生命值-1
刘备败了
*/
调试
设置断点。

单步调试。
c语言运算符优先级与while循环案例的更多相关文章
- 一道c语言运算符优先级问题
一道c语言运算符优先级问题 #include <iostream> using namespace std; int main() { char test[] = {"This ...
- C语言运算符优先级总结
一 写在开头1.1 本文内容本文内容为C语言中运算符优先级的总结.转载于:https://blog.csdn.net/huangblog/article/details/8271791,感谢原作者的付 ...
- C语言运算符优先级和ASCII表
1. C语言运算符优先级及结合性 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右 -- () 圆括号 (表达式)/函数名(形参表) -- . 成 ...
- C语言运算符优先级及结合性
今天去翻了下C语言运算符的优先级和结合性,发现当初学习的时候就没认真记住,惭愧.发现一篇讲得不错的文章,编辑了下转来供以后翻阅. C语言运算符优先级表(由上至下,优先级依次递减) 运算符 结合性 () ...
- (转)C语言运算符优先级 详细列表
C语言运算符优先级 详细列表 文章转自:Slyar Home 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右 () 圆括号 (表达式)/函数 ...
- C语言 运算符优先级和结合方向
运算符优先级和结合方向 初级运算符( ).[ ].->.. 高于 单目运算符 高于 算数运算符(先乘除后加减) 高于 关系运算符 高于 逻辑运算符(不包括!) 高于 条件运算 ...
- C语言运算符优先级和结合性一览表
所谓优先级就是当一个表达式中有多个运算符时,先计算谁,后计算谁.这个其实我们在小学学算术的时候就学过,如1+4÷2. 但是C语言中的运算符已经远不止四则运算中的加减乘除了,还有其他很多运算符.当它们出 ...
- C语言运算符优先级和口诀(转)
一共有十五个优先级: 1 () [] . -> 2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof 3 ...
- C语言运算符优先级和口诀 (转)
一共有十五个优先级: 1 () [] . -> 2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof 3 ...
随机推荐
- 解决ORA-02395:超出I/O使用的调用限制问题
ORACLE的PROFILE文件是限制数据库用户使用的资源的一种手段.如:控制session或sql能使用的CPU.控制用户的password管理策略等. 数据库创建后,系统则存在名为DEFAULT的 ...
- 串口之CreateFile 函数具体解释
HANDLE CreateFile( LPCTSTR lpFileName, //指向文件名称的指针 DWORD dwDesiredAccess, //訪问模式(写/读) DWORD dwShareM ...
- HDU 1015.Safecracker【暴力枚举】【8月17】
Safecracker Problem Description === Op tech briefing, 2002/11/02 06:42 CST === "The item is lo ...
- 关于vue 自定义组件的写法与用法
最近在网上看到很多大神都有写博客的习惯,坚持写博客不但可以为自己的平时的学习做好记录积累 无意之中也学还能帮助到一些其他的朋友所以今天我也注册一个账号记录一下学习的点滴!当然本人能力实在有限写出的文章 ...
- MVC中添加模块区域,并设置RedirectToAction跳转
废话少说,直接上图:
- CSS鼠标悬停图片加边框效果,页面布局发生错位的解决办法
CSS鼠标悬停图片加边框效果,页面布局发生错位的解决办法 .recomend-list{ width:1200px; a{ @extend %fl; margin-right: 30px; width ...
- ZBrush中如何把模型的细节映射到低模上
我们在ZBrush®雕刻模型的时候,发现模型布线不利于雕刻,这使我们不得不对模型进行重建细分,而重建细分之后的模型细节已经没有了,这个时候我们就需要把原来高模的细节映射到新的模型上面. 接下来我们介绍 ...
- ZBrush为电影制作设计独特的生物概念
任何一个从事3D行业的艺术家,在雕刻和画画方面,都要有牢固的基本技能,还要会使用一些软件.比如今天我们提到的这位概念设计师.插画师和艺术导演Ian Joyner,他在创作新角色之前,都会思考如何以及为 ...
- Java基础——过滤器和监听器
什么是过滤器? Servlet过滤器和Servlet十分相似,但它具有拦截客户端请求的功能,Servlet过滤器可以改变请求中的内容,来满足实际开发中的需要.对于开发人员而言,过滤器实际上就是在Web ...
- AIM Tech Round 5 1028cf(A-E)
AIM Tech Round 5 (codeforces上题目编号是1028)(A-E) ---完全被这次比赛打击,自己真的很渣--- 战况 依旧3题选手 被构造题坑得好惨 稍稍涨了rating,希望 ...