第六章复习

一.循环语句 while . do-while. for
1.while(循环控制表达式)→括号内容为真时执行,假时退出。

语句序列 →循环体
}
2.do
{
语句序列
}while(循环控制表达式)→真实执行假时退出。
注意:该循环体内语句至少执行一次。
3.for(初始化表达式;循环控制表达式; 增值表达式)
{
语句序列
}
使用的一般原则
循环次数已知计数控制的循环语句 for
循环次数未知条件控制的循环语句 while
循环体至少执行一次 do-while注意:在循环语句内定义的变量,离开循环语句,便不能使用。
二.特殊运算符
逗号运算符: 将多个表达式连接在一起,构成逗号表达式。
形式:表达式一,表达式二,……
例如;for(i=1,j=n;i<=j;i++,j–)
仅由一个分号构成的语句叫空语句,仅起延时作用
三.循环(.包括条件循环.嵌套循环.计数循环 )
在使用嵌套循环时,可利用枚举法(又称暴力法或穷举法)简单粗暴,但效率低.例如: 一个炊事员上街采购,用500元买了90只鸡,其中母鸡一共15元 ,公鸡一只10元,小鸡一只5元,正好把钱用完,问母鸡,公鸡,小鸡各买多少只。#inxlude
using namespace std;
int main()
{
int k;
for(int i=0;i<=33;++i)
for(int j=0;j<=50;++j)
{
k=90-i-j;
if(15i+10j+k*5500)

cout<<“母鸡有”<<i<<“只,” <<公鸡有"<<j<<“只,”<<“小鸡有”<<k<<“只”<<endl;
}
}return 0;
}
在做openjudge时,相同余数这道题折磨我好久,其中关键要有EOF
已知三个正整数 a,b,c。现有一个大于1的整数x,将其作为除数分别除a,b,c,得到的余数相同。请问满足上述条件的x的最小值是多少?数据保证x有解
#include<stdio.h>
int main()
{
long long int while(scanf("%lld%lld%lld",&a,&b,&c)!=EOF)
{
long long int i=1;
do
{
++i;
}while(a%i-b%i||c%i-a%i||b%i-c%i);
printf("%lld\n",i);
}
}
四.转移控制
转移语句包括break goto continue其中较多使用break语句在嵌套语句中break只能跳出最内层的循环,无法跳出多重循环,而goto语句是跳出多重循环的捷径
例如:求两个正整数的最小公倍数。#include<stdio.h>
int main()
{
int n,m,i;
scanf("%d %d",&n,&m);
for(i=1; ;i++)
{
if(i%n
0&&i%m==0) break;
}
printf("%d",i)
}

猜你喜欢

转载自blog.csdn.net/weixin_43242117/article/details/84522176
今日推荐