(1)修改下面代码中的错误。
(a)if (ival1 !=ival2)
ival1 = ival2
else ival1 = ival2 = 0;
解析:ival1 = ival2 ; //缺少一个分号
(b)if (ival1 < minva1)
minva1 = ival1;
occurs=1;
解析:使用了两条语句,需要使用花括号括起来
(c)if (int iva1 = get_value())
cout <<"ival = " <<iva1<<endl;
if (!iva1)
cout <<"iva1 = 0\n";
解析:下面的if需要换成else if
(d)if (iva1 = 0)
iva1 = get_value();
解析:“=”和“==”的区别再次注意
(2)什么是“悬垂else”?C++语言中是如何处理else子句?
解析:悬垂else:C++规定,else与其最近的尚未匹配的if相匹配。
(3) 编写一段程序,使用一系列if语句统计从 cin 读入的文本中有多少元音字母?
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
char cval;
int sum_a = 0, sum_e = 0, sum_i = 0, sum_o = 0, sum_u = 0; //变量的定义要简洁并且可以看出含义,切勿使用简单的a,b,c...
while (cin >> cval)
{
if (cval == 'a')
{
sum_a++;
}
else if (cval == 'e')
{
sum_e++;
}
else if (cval == 'i')
{
sum_i++;
}
else if (cval == 'o')
{
sum_o++;
}
else if (cval == 'u')
{
sum_u++;
}
}
cout << "元音字母a的个数为:" << sum_a << endl;
cout << "元音字母e的个数为:" << sum_e << endl;
cout << "元音字母i的个数为:" << sum_i << endl;
cout <<