【漫漫转码路】Day29C++day02-创新互联

关于if
//例如
#include#includeusing namespace std;
int main()
{int a = 1;
	int b = 2;
	int c = 3;
	int d = 0;
	if ((a >= 0) || (b >3) && (d = 4))  //  此时或||的左边是True,右边是False,||有返回值了,因此d=4不会执行
	{cout<< d;
	}
	else
	{cout<< "没有执行if";
	}
		
}
//显示
0

同理

创新互联公司是一家专注于成都网站设计、做网站和温江服务器托管的网络公司,有着丰富的建站经验和案例。
//例如
#include#includeusing namespace std;
int main()
{int a = 1;
	int b = 2;
	int c = 3;
	int d = 0;
	if ((b >3) && (a = 8) && (d = 4))  // &&左边是False,后面根本不会执行
	{cout<< d<< a;
	}
	else
	{cout<< "没有执行if";
	}
		
}
//显示
没有执行if
循环 for循环
for(initialization; condition; increase)statement;
// (初始化(可以不传;  条件;    递增(可以不传))语句
// 条件,可以写赋值语句,可以写运算符
// 以;为界,可以声明多个,也可以写多个increase

注意:
initialization和increase可以不传,但是;要有

//例如
#include#includeusing namespace std;
int main()
{for (int i = 0;i< 10; i++)
	{cout<< i;
	}	
}
//显示
0123456789  // 输出0到9的数

注意:

“a”+1得到b
“0”+7得到7
字符+整型=整型,然后整型会变成对应的字符
字符占字节小,整型占字节多,相加之后结果会变成占字节多的
while循环
while(表达式expression)语句(statement)
//while后面不加;,如果加;则,表示中止,只有判断,没有执行语句
输入几个数,以0结束,求这几个数的和
//例如
#include#includeusing namespace std;
int main()
{int a = 0;
	int n = 1;
	while (n != 0)
	{cin >>n;
		a += n;
	}
	cout<< a;
}
// 显示
cin:1 3 5 7 0
cout:16

注意:
cin是以空格或回车做分隔,读入一个数,并赋值给后面的数

do while循环
do 
{语句
statement
}
while(条件);

不同
do while语句会先执行一遍语句,然后进行判断

输入一个数字(例如256),返回倒序(652)
//例如
#include#includeusing namespace std;
int main()
{int a = 0;
	int b = 0;
	int n = 1;
	cin >>a;
	do
	{b = a % 10;
		a /= 10;
		cout<< b;
	} while (a % 10 != 0);
}
//输入
456
//输出
654
break

退出当前循环,后面的语句都不执行

continue

本次循环不结束,且不执行后面的语句,开始下次循环

//例如
#include#includeusing namespace std;
int main()
{int a = 0;
	int b = 0;
	for (;a< 10;a++)
	{if (a % 3 == 0)  // 3的倍数都跳过
			continue;
		cout<< a<< "\n";
	}

}
//显示
1
2
4
5
7
8
双重循环 依次输出1+2,1+2+3,1+2+3+4…1+2+…100的结果
//例如
#include#includeusing namespace std;
int main()
{int a = 1;
	int b = 1;
	int res = 0;
	for (;a<= 100;a++)
	{b = 1;
		res = 0;
		for (; b<= a; b++)
			res += b;
			cout<< res<< "\n";
	}

}
三重循环 100 元,铅笔2 元一只,橡皮 4 元一个,卷笔刀7 元一个,列出所有可能集合,结果之间换行显示
//例如
#include#includeusing namespace std;
int main()
{for (int a = 0;a<= 100;a++)
	{for (int b = 0;b<= 100;b++)
		{	for (int c = 0;c<= 100;c++)
			{		if (2 * a + 4 * b + 7 * c == 100)
					cout<< "铅笔"<< a<< " "<< "橡皮"<< b<< " "<< "卷笔刀"<< c<< "\n";
			}
		}
	}
}

注意:
通常不建议三重循环以上的循环,会写成函数形式

例题 求大公约数
//例如
#include#includeusing namespace std;
int main()
{int x= 789;
	int y = 99879;
	for (int i = 789; i >0;i--)
	{if ((y % i == 0) && (x % i == 0))
		{	cout<< i;
			break;
		}			
	}
}
//显示
3
计算x平方+sin(x)-2=0的解

方法一:循环,求最接近的值

//例如
#include#include#includeusing namespace std;
int main()
{float x = 0;
	float sep = 0.00001;
	float maxres = 100000000;
	float result = 0;
	float minr = 0;
;	for (x;x< 10 ;x += sep)
	{result = x * x + sin(x) - 2;
		if (abs(result)< maxres)
		{	maxres = abs(result);
			minr = x;
		}
	}
	cout<< "最接近0的结果是"<< maxres<< " "<< "对应的x值是"<< minr;
}
//显示
最接近0的结果是6.67572e-06 对应的x值是1.06155

方法二,二分法求最接近的值

//例如  
#include#include#includeusing namespace std;
int main()
{float left = 0.0;
	float right = 10.0;
	int i = 10000;
	while (i >0)
	{float a = left * left + sin(left) - 2;
		float b = right * right + sin(right) - 2;

		float mid = (left + right) / 2;
		float c = mid * mid + sin(mid) - 2;

		if (a * c< 0)
		{	right = mid;
		}
		else
		{	left = mid;
		}
		i--;
	}
	cout<< left<<"   "<< right;
//显示
1.06155   1.06155
goto

通过使用 goto 语句可以使程序从一点跳转到另外一点。你必须谨慎只用这条语句,因为它的执行可以忽略任何嵌套限制。
跳转的目标点可以由**一个标示符(label)来标明,该标示符作为 goto 语句的参数。一个标示符(label)由一个标识名称后面跟一个冒号 colon (😃**组成
通常除了底层程序爱好者使用这条语句,它在结构化或面向对象的编程中并不常用。下面的例子中我们用 goto 来实现倒计数循环:

//例如
#include#include#includeusing namespace std;
int main()
{int n = 10;
	loop:  // loop加冒号
	cout<< n<< ",";
	n--;
	if (n >0) goto loop;  //跳到loop
	cout<< "完成";
}
//显示
10,9,8,7,6,5,4,3,2,1,完成

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


名称栏目:【漫漫转码路】Day29C++day02-创新互联
转载来源:http://scyanting.com/article/dpsjog.html