登录  | 立即注册

游客您好!登录后享受更多精彩

扫一扫,访问微社区

QQ登录

只需一步,快速开始

开启左侧

[寒假笔记] 放假第一二天

[复制链接]
发表于 2019-1-22 01:01:38 | 显示全部楼层 |阅读模式
学习笔记
学习科目: C语言——循环;逻辑运算
学习安排: while循环
do-while循环
for循环
逻辑运算
开始时间: 2019-01-20
结束时间: 2019-01-21
一.1.while循环eg:数一个数有多少位,可以用if语句,
int main()
{
int x;
int n=1;
scanf("%d",&x);
if(x>999){
n=4;
} else if(x>99){
n=3;
} else if(x>9){
n=2;
} else{
n=1;
}
printf("%d\n",n);
reture 0;
}
这里要用else if而非if,因为程序是步骤而非说明,当一个数同时满足两个条件时,if会出问题
如果要数的位数超过4,有很多,则用循环
eg:数一个数有多少位:(省略开头结尾)
int x;
int n =0
scanf("%d",&x);
n++;                                                       *使0也可以输入
x/=10                                                        *使0也可以输入
while(x>0){                                                /()内为条件/
n++;
x/=10;
}
循环体要有改变判断的条件,否则会一直循环
验证:
1.有效范围两端的数,特殊数的倍数
2.个位数
3.10
4.0
5.负数
调试:
在程序适当地方加入printf,来输出变量的内容

一.2.do-while
进入循环时不做检查,循环完一轮后再对循环条件进行检查,满足则进行下一轮,反之不进行
eg:数一个数有多少位
int x;
scanf("%d",&x)
int n=0;
do{
x/=10;
n++;
}while (x>0);
printf("%d",n);
一.3.for循环
到要求数字前循环,且循环一次,计量数(即"i",循环内部使用)改变一次
eg:阶乘
int x;
scanf("%d",&n)

int fact=1;
int i=1;
for (i=1;i<=n;i++){                                /(初始动作;循环条件;每轮动作)/
fact*=1;
}
printf("%d!=%d\n",n,fact);
求和时,记录结果变量初始化为0,而作求积的变量时,记录结果变量初始化为1
for(;;)括号内每个都可省,分号不能省
for(;条件;)相当于while(条件)

如果固定循环次数,用for
如果必须执行一次,用do-while
其他,while

二.1.逻辑运算
!逻辑非
&&逻辑与
||逻辑或
电开.png
eg:表示x∈(4,6),不能用4<x<6,它会从左到右依次计算,而4<x只有对与不对两个结果,即1或0,均小于6,因此结果均为1
应为x>4&&x<6
eg:判断c为大写字母
c>="A"&&c<="Z"
断路:
对于&&,左边false就不做右边
对于||,左边true就不会做右边
对于赋值类会有影响
今天好好学习了吗???嘤嘤嘤
 楼主| 发表于 2019-2-8 01:01:38 | 显示全部楼层
补充
010137brajhpp00hvazahp.jpg
今天好好学习了吗???嘤嘤嘤
 楼主| 发表于 2019-2-8 01:08:37 | 显示全部楼层
a=b++表示先赋值再递加,a=++b表示先递加再把增加后的值给a
今天好好学习了吗???嘤嘤嘤
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表