头文件后缀一般是.h或.hpp等,源文件后缀一般是.c或.cpp等。
在Windows操作系统下main函数没有报告运行失败,因此返回0或-1在运行效果没有什么区别。
#include
int main()
{
std::cout << "Hello , World。" << std::endl;
return 0;
}
#include
int main()
{
std::cout << "请输入两个数" << std::endl;
int v1 = 0, v2 = 0;
std::cin >> v1 >> v2;
std::cout << v1 << "和" << v2 << "的乘积为" << v1 * v2 << std::endl;
return 0;
}
#include
int main()
{
std::cout << "请输入两个数" << std::endl;
int v1 = 0, v2 = 0;
std::cin >> v1 >> v2;
std::cout << v1;
std::cout << "和";
std::cout << v2;
std::cout << "的乘积为";
std::cout << v1 * v2 << std::endl;
return 0;
}
#include
int main()
{
//错误代码
int v1 = 10, v2 = 20;
std::cout << "The sum of" << v1;
<< "and" << v2;
<< "is" << v1 + v2 << std::endl;
//不合法
//第5行和第6行代码最后分别有一个分号,表示语句结束。
//而第6行和第7行<<操作符为二元操作符,两行第一个<<操作符没有左操作数,因此不合法
//改正代码
std::cout << "The sum of" << v1
<< "and" << v2
<< "is" << v1 + v2 << std::endl;
return 0;
}
int main()
{
/*
* 注释对/* */不能嵌套/
*"不能嵌套"几个字会被认为是源码;
*像剩余程序一样处理
*/
return 0;
}
#include
int main()
{
std::cout << "/*";
std::cout << "*/";
//这两行语句合法,分别打印/*和*/
//错误代码
std::cout<< /* "*/" */;
//左引号被注释界定符限定,缺少右引号
//改正代码
std::cout << /* "*/" */";
std::cout <* "*/" /* "/*" */;
//79行语句合法,打印/*
return 0;
}
#include
int main()
{
int sum = 0, val = 50;
//当val的值在50-100之间,循环就会执行
while (val <= 100)
{
sum += val;
++val;
}
std::cout << "50-100的整数和为" << sum << std::endl;
return 0;
}
#include
int main()
{
int val = 10;
//当val的值大于等于0时,循环执行
while (val >= 0)
{
std::cout << val << std::endl;
--val; //每次循环val的值减1
}
return 0;
}
#include
int main()
{
int v1 = 0, v2 = 0;
std::cout << "请输入两个值:" << std::endl;
std::cin >> v1 >> v2;
//当v1值大于等于v2时,循环执行
while (v1 >= v2)
{
std::cout << v1 << std::endl;
--v1; //每次循环v1减1
}
return 0;
}
此代码只能打印当v1大于等于v2时,所指定范围的数字,若v1小于v2则不能。
#include
int main()
{
int sum = 0;
for (int i = -100; i <= 100; i++)
sum += i;
std::cout << sum << std::endl;
return 0;
//完成了从-100到100之间的数相加和,sum为0
}
#include
int main()
{
int sum = 0, val = 50;
//当val的值在50-100之间,循环就会执行
for(val=50;val<=100;++val)
{
sum += val;
}
std::cout << "50-100的整数和为" << sum << std::endl;
return 0;
}
#include
int main()
{
int val = 10;
//当val的值大于等于0时,循环执行
for(val=10;val>=0;--val)
{
std::cout << val << std::endl;
}
return 0;
}
#include
int main()
{
int v1 = 0, v2 = 0;
std::cout << "请输入两个值:" << std::endl;
//当v1值大于等于v2时,循环执行
for(std::cin>>v1>>v2 ; v1>=v2; --v1)
{
std::cout << v1 << std::endl;
}
return 0;
}
//此做法无法计算第一个数比第二个数小的情况
for循环形式上比较简洁,变量初始化,检测条件,修改变量都在语句头部,适用于循环次数已知的情况。
while循环形式上不如for简洁,适用于循环次数不易预知的情况。
#include
int main()
{
int sum = 0, val = 0;
//当读取数据遇到文件尾,计算所有数值之和
//输入文件结束符CTRL+Z再按ENTER
while (std::cin >> val)
{
sum += val;
}
std::cout << "sum的值为" << sum << std::endl;
return 0;
}
在Windows系统中,输入文件结束符的方法是Ctrl+Z,然后按Enter或Return。
在UNIX系统中,文件结束符输入是Ctrl+D。
#include
int main()
{
//currVal是正在统计的数,val是读入的新值
int currVal = 0, val = 0;
if (std::cin >> currVal)
{
int cnt = 1;
while (std::cin >> val)
{
if (val == currVal)
++cnt;
else
{
std::cout << currVal << "occurs" << cnt << "times" << std::endl;
currVal = val;
cnt = 1;
}
}//while循环在这里结束
std::cout << currVal << "occurs" << cnt << "times" << std::endl;
}//最外层的if语句在这里结束
return 0;
}
//输入
1 1 1 1 1
//输出
1occurs5times
//输入
1 2 3 4 5
//输出
1occurs1times
2occurs1times
3occurs1times
4occurs1times
5occurs1times
#include
int main()
{
int v1 = 0, v2 = 0;
std::cout << "请输入两个值:" << std::endl;
std::cin >> v1 >> v2;
if (v1 > v2)//由大到小打印
{
while (v1 >= v2)
{
std::cout << v1 << " ";
v1--;
}
}
else //由小到大打印
while (v1 <= v2)
{
std::cout << v1 << " ";
v1++;
}
std::cout << std::endl;
return 0;
}
#include
#include"Sales_item.h"
int main()
{
Sales_item book;
while (std::cin >> book)
{
std::cout << book << std::endl;
}
return 0;
}
#include
#include"Sales_item.h"
int main()
{
Sales_item item1, item2;
std::cin >> item1 >> item2;
std::cout << item1 + item2 << std::endl;
return 0;
}
#include
#include"Sales_item.h"
int main()
{
Sales_item item,sum;
//先输入一条销售记录作为sum
std::cin >> sum;
//输入剩余销售记录
while (std::cin >> item)
{
sum += item;
}
std::cout << sum << std::endl;
return 0;
}
#include
#include"Sales_item.h"
int main()
{
Sales_item item1,item2;
//读取第一个记录
if (std::cin >> item1)
{
int cnt = 1;
//读取剩余记录
while (std::cin >> item2)
{
if (item1.isbn() == item2.isbn())
{
++cnt;
}
else
{
std::cout << item1.isbn() << "有 " << cnt << " 条销售记录" << std::endl;
item1 = item2;
cnt = 1;
}
}
std::cout << item1.isbn() << "有 " << cnt << " 条销售记录" << std::endl;
}
return 0;
}
#include
#include"Sales_item.h"
int main()
{
Sales_item total;//保存和的变量
//读入第一条交易记录,并确保有数据可以处理
if (std::cin >> total)
{
Sales_item trans; //保存下一条交易记录的变量
//读入并处理剩余交易记录
while (std::cin >> trans)
{
//如果仍在处理相同的书
if (total.isbn() == trans.isbn())
total += trans; //更新总销售额
else
{
//打印前一本书的结果
std::cout << total << std::endl;
total = trans; //total现在表示下一本书的销售额
}
}
std::cout << total << std::endl;
}
else
{
//没有输入
std::cerr << "No data!" << std::endl;
return -1;
}
return 0;
}