// 读取数量不定的输入数据
int main(int argc, char const *argv[])
{
int sum = 0, value = 0;
while (cin >> value) {
sum += value;
}
cout << "sum is: " << sum << endl;
return 0;
}
表达式cin >> value从标准输入读取下一个数,保存在value中。 输入运算符返回左侧运算对象,因此,循环条件实际上检测的是cin, 当我们使用一个istream对象作为条件时,其效果是检测流的状态。如果流是有效的,即流未遇到错误,那么检测成功。 当遇到文件结束符,或遇到一个无效的输入时(假设读入的值不是一个整数),istream对象的状态就会变为无效。 处于无效状态的istream 对象会使条件为假。
输入两个整数,返回两个整数的和
#include
using namespace std;
int main(int argc, char const *argv[])
{
float a = 0, b = 0;
cout << "please input two number: " << endl;
cin >> a >> b;
cout << a << " and " << b << " sum: " << a + b << endl;
return 0;
}
#include
int main(int argc, char const *argv[])
{
std::cout << "hello world" << std::endl;
return 0;
}
#include
using namespace std;
int main(int argc, char const *argv[])
{
float a = 0, b = 0;
cout << "please input two number: " << endl;
cin >> a >> b;
cout << a << " * " << b << " = " << a * b << endl;
return 0;
}
#include
using namespace std;
int main(int argc, char const *argv[])
{
// 长语句
cout << "hello" << " world" << " haha" << endl;
// 独立短语句
cout << "hello";
cout << " world";
cout << " haha";
cout << endl;
return 0;
}
std::cout << "The sum of " << v1;
<< " and " << v2;
<< " is " << v1 + v2 << std::endl;
如果程序是合法的,它输出什么? 如果程序不合法,原因何在? 应该如何修正?
答: 不合法,每一行的后面都添加了;,表示该行结束,第一行增加了分号,第二行的<<的左侧就没有了一个ostream对象,导致语法错误,可以在2,3行左侧加std::cout, 也可以把分号去掉。
// 加 cout
std::cout << "The sum of " << v1;
std::cout << " and " << v2;
std::cout << " is " << v1 + v2 << std::endl;
// 去掉分号
std::cout << "The sum of " << v1
<< " and " << v2
<< " is " << v1 + v2 << std::endl;
int main(int argc, char const *argv[])
{
/*
*
* 注释对 /* */ 不能嵌套
*/
return 0;
}
编译器返回: 在注释外找到“*/”
std::cout << "/*";
std::cout << "*/";
std::cout << /* "*/" */;
std::cout << /* "*/" /* "/*" */;
预编译这些语句会产生什么样的结果,实际编译这些语句来验证你的答案(编写一个小程序,每次将上述语句作为其主体),改正每个编译错误。
std::cout << "/*"; 正确的
std::cout << "*/"; 正确的
std::cout << /* "*/" */; 不正确,嵌套界定符了,改为std::cout << "*/" /* */;
std::cout << /* "*/" /* "/*" */; 正确的,前后都有匹配的界定符,并且保证了cout 右边是一个对象。
int main(int argc, char const *argv[])
{
int i = 50, sum = 0;
while (i <= 100) {
sum += i;
++i;
}
cout << sum << endl;
return 0;
}
int main(int argc, char const *argv[])
{
int i = 10;
while (i >= 0) {
cout << i-- << endl;
}
return 0;
}
int main(int argc, char const *argv[])
{
cout << "please input two number: " << endl;
int start = 0, end = 0;
cin >> start >> end;
cout << start << "-" << end << " all int number: " << endl;
while (start <= end) {
cout << start++ << " ";
}
cout << endl;
return 0;
}
int sum = 0;
for (int i = -100; i <= 100; ++i) {
sum += i;
}
从 -100 加到 100,sum的终值是0
int sum = 0;
for (int i=50; i <= 100; ++i) {
sum += i;
}
for (int i = 10; i >= 0; --i) {
cout << i << " ";
}
cout << "please input two number: " << endl;
int start = 0, end = 0;
cin >> start >> end;
cout << start << "-" << end << " all int number: " << endl;
for (int i = start; i <= end; ++i) {
cout << i << " ";
}
cout << endl;
while 循环中,在循环条件中检查变量,在循环体中递增变量的模式非常频繁,所以有了for语句,来简化这种模式的语句。
int sum = 0, value = 0;
while (cin >> value) {
sum += value;
}
cout << "sum is: " << sum << endl;
// 练习1.17,1.18 所指的代码
int main(int argc, char const *argv[])
{
int curValue = 0, val = 0;
if (cin >> curValue)
{
int count = 1;
while (cin >> val) {
if (curValue == val) {
++count;
}
else {
cout << curValue << " occurs "
<< count << " times" << endl;
curValue = val;
count = 1;
}
}
cout << curValue << " occurs "
<< count << " times" << endl;
}
return 0;
}
int main(int argc, char const *argv[])
{
cout << "please input two number: " << endl;
int start = 0, end = 0;
cin >> start >> end;
cout << start << "-" << end << " all int number: " << endl;
if (start > end) {
swap(start, end);
}
while (start <= end) {
cout << start++ << " ";
}
cout << endl;
return 0;
}
页面更新:2024-05-18
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号