chap4 循环结构、chap6 回顾数据类型和表达式 第七小组 学习总结
chap4 循环结构 第七小组学习总结
循环语句有以下几种:
1.for 循环语句
(1)使用方法:
for(初始条件;循环条件;结束操作){循环语句;}
(2)优点:循环有序,层层递进
缺点:使用不合理会造成超时的情况,使得循环繁多
(3) 举例:

2.while语句
(1)使用方法:
while(循环条件){
循环语句;
}
(2)优点:使用简便
(3)与for循环能够相互转化

3.do-while语句
(1)使用方法:
do{
循环语句;
} (循环条件);
(2)与while循环语句的区别:do-while语句会先执行循环条件,再进行判断是否满足循环条件
而while语句会先进行判断是否满足循环条件
continue 与break:
1.continue:
(1)使用方式:用于循环语句中可一跳过本轮循环,并进入下一次循环
(2)演示:

2.break:
(1)使用方式:用于循环语句中可一跳出一整个循环,在循环外执行下一条语句
典题演示:

遇到的问题:运行超时
原因:for循环语句循环冗多
解决方法:

对需要判断是否为素数的整数进行开根,用于减少for循环次数
chap6 回顾数据类型和表达式 第七小组 学习总结
1.数据的储存与基本数据类型
(1)基本数据类型:
整型(int)
浮点型(float,double)
字符型(char)
(2)整型数据的储存:
(16位机)
a.正数的原码,反码,补码都一样
例如:1的补码为0000 0000 0000 0001
b.负数用补码表示值
例如:-1的原码为1000 0000 0000 0001(第一位为符号位)
反码为1111 1111 1111 1110(符号位不变,其余取反)
补码为1111 1111 1111 1111 (反码加一)
(3)字符型数据的储存:
对应的数值(参考ASCII码表):

(4)浮点型数据的储存:

2.数据的输入和输出:
输入:scanf("",);
输出:printf("",);
float---%f
double---%lf
int---%d
char---%c
3.类型转化
强制型类型转化:
(类型名)表达式
4.表达式
(1)运算优先级:

(2)算术运算符:
单目:+ - ++ --
双目:+ - * / %
注意:++p的值为p+1后的值,p++的值为p+1前的值
--p的值为p-1后的值,p-的值为p-1前的值
(3)赋值运算符:
a.结合性从右至左,优先级较低
b.a=b表示将a的值赋给b
c.复合赋值运算符:
+= -= *= /=
例如:a+=b --> a=a+b
(4)关系运算符:
< > <= >= == !=
若为真则值为1,若为假则值为0
(5)逻辑运算符:
&& || !
&&:取两个集合的交集
||:取两个集合的并集
!:取否

(6)条件表达式:
M?a:b
M成立,取a值;M不成立,取b值。
(7)位运算:
~ & | ^ << >>

典题分析:

运用移位,并将前24置零
#include<stdio.h>
int main(){
int N,M,i,rev=255,sum=0;
while((scanf("%d",&N))!=EOF){
sum=0;
for(i=0;i<=24;i+=8){
M = N;
M>>=i;
M&=rev;
sum+=M;
}
printf("%d\n",sum);
}
return 0;
}

浙公网安备 33010602011771号