C++基础代码层面(例子-核心语句说明-总结)
概览
- While 语句
- for 语句
- if 语句
- 拓展
- while语句
一个简单的求和程序:sum=1+2+...+10
#include <iostream>
using namespace std;
int main(){
int sum=0,val=1;
while(val<=10){
sum+=val;
++val;
}
cout<<"sum is "<<sum<<endl;
return 0;
}
while语句反复执行循环体:{sum+=val; ++val; }直到给定条件为假时停止。(直至val>10时停止。)
- for语句
还是求和例子:
#include <iostream>
using namespace std;
int main()
{
int sum=0;
for(int val=1;val<=10;++val)
sum+=val;
cout<<"sum of 1 to 10 inclusive is "<<sum<<endl;
return 0;
}
for语句:循环头+循环体。
循环头:控制循环体的执行次数,包括三部分(初始化语句;循环条件;表达式)
- if 语句
//统计在输入中的每个值*连续出现*的次数
#include <iostream>
using namespace std;
int main()
{
int currVal=0,val=0;
if(cin>>currVal) //输入第一个数
{
int cnt=1;
while(cin>>val) //输入剩余的数
{
if(val==currVal)
++cnt;
else
{
cout<<currVal<<" occurs "<<cnt<<" times "<<endl;
currVal=val;
cnt=1;
}
}
cout<<currVal<<" occurs "<<cnt<<" times "<<endl;
}
return 0;
}
执行结果:
if也对一个条件求值。(第一条if语句的条件是读取一个数值存入currVal,如果读取成功,则条件为真,将继续执行后续语句块。)
while循环反复从标准输入中读取整数,进入while语句首先判断新输入的值和要计数的当前值是否相等。若相等,要计数的当前值个数+1。若不相等,则在else中首先输出当前要计数值的个数,在令刚才在while判断中输入的新值为当前要计数的值。以此类推,直至遇到非整数值,循环结束。
- 拓展
从标准输入中读取数据(例子:读取不定数量的输入数据)
//读取数量不定的输入数据
//本程序实现对用户输入数据的一组数求和,预先不知道要对多少个数求和
//需要不断读取数据直至没有新的输入为止
#include <iostream>
using namespace std;
int main()
{
int sum=0,value=0;
while(cin>>value)//循环条件求值是执行 表达式:cin>>value
sum+=value;
//输入全部数据要求结果时,win中使用Ctrl+Z,然后回车;UNIX、MAC_OS 中用Ctrl+D
cout<<"sum="<<sum<<endl;
return 0;
}