- 理解循环结构的基本原理
- 使用while循环结构
- 使用do-while循环
- 会使用工具调试程序
while循环
int i =1;
while(i<10)
{
print("第%d遍\n", i);
i++;
}
循环三要素(如何选择循环变量)
循环变量的初值
可以控制循环次数的变量, i;j;k
循环变量的判断
循环变量的更新
l累乘案例
int i = 1;
double sum = 1;
while(i < 101){
sum = sum * i;
i++;
}
printf("%lf\n",sum);
使用循环实现三次输入密码失败退出
int main()
{
int i = 1;
int PW;
while (i < 4) {
printf("请输入密码");
scanf("%d", &PW);
if( PW == 123 ){
printf("successful_login\n");
}
else{
printf("fail_to_login; %dtimes\n", i);
i++;
}
}
}
2015交易额为800e,每年递增25%,哪年达到2000e
解:
int year = 2015; //年份
double rate = 1.25; //
double revenue = 800; //交易额
while (revenue < 2000) {
revenue = revenue * rate;
printf("%d年不行\n",year);
year = year + 1;
}
printf("%d年可以\n", year);
1p2p对战
解:
#include<stdio.h>
#include<stdlib.h> //标准库
#include<time.h> //time()
#include<windows.h> //sleep()
int main()
{
//随机函数. 使用时间作为种子,产生不一样的随机数字 所以用rand() % 11 +5= 5~15
//rand() % (b-a+1) +a 生成a~b之间的随机数字
//srand(time(NULL));
//rand()函数取值范围是 0~32767;
///printf("rodom_number: %d\n", rand());
srand(time(NULL));
int i = 0;
int hp1 = 100, hp2 =100; //1p2p血量
int atk1 = rand() % 11 +5, atk2 = rand() % 11+5; //1p2p攻击力
while(hp1 >= 0 && hp2 >= 0) //当两个玩家都活着的时候进行对战
{
hp2 = hp2 - atk1;
hp1 = hp1 - atk2;
printf("第%d局\n", i+1);
printf("董大人还有%d滴血\n小骚狗还有%d滴血\n", hp1, hp2);
printf("**************************\n");
if (hp2<0) {
printf("董大人赢了\n");
}
if (hp1<0) {
printf("小骚狗赢了\n");
}
}
return 0;
}