Exercise 2.11:
编写程序,要求用户输入两个数——底数(base)和指数(exponent),输出底数的指数次方的结果。
int base,expond,result = 1;
std::cin>>base>>expond;
for (expond;expond > 0;expond--)
{
result *= base;
}
std::cout<<result;Exercise 2.12:
区分左值和右值,并举例说明。
变量是左值,因此可以出现在赋值语句的左边。数字字面值是右值,因此不能被赋值。int a = 0; //right
1 = 2; //wrongExercise 2.13:
举出一个需要左值的例子。
变量赋值Exercise 2.14:
下面哪些(如果有)名字是非法的?更正每个非法的标识符名字。
(a) int double = 3.14159; (b) char _;
(c) bool catch-22; (d) char 1_or_2 ='1';
(e) float Float = 3.14f;
(b)不能以_定义变量开头
(c)变量中不能包括-
Exercise 2.15:
下面两个定义是否不同?有何不同?
int month = 9, day = 7;
int month = 09, day = 07;
如果上述定义有错的话,那么应该怎样改正呢?
正确的
Exercise 2.16:
假设 calc 是一个返回 double 对象的函数。下面哪些是非法定义?改正所有的非法定义。
(a) int car = 1024, auto = 2048;
(b) int ival = ival;
(c) std::cin >> int input_value;
(d) double salary = wage = 9999.99;
(e) double calc = calc();
b:不可对初始化变量赋值给一个未初始化的变量
c:使用变量时应该先定义
Exercise 2.17:
下列变量的初始值(如果有)是什么?
std::string global_str;
int global_int;
int main()
{
int local_int;
std::string local_str;
// ...
return 0;
}
golbal_str:""
golbal_int:0
local_int:0
local_str:""
Exercise 2.18:
解释下列例子中 name 的意义
extern std::string name;
std::string name("exercise 3.5a");
extern std::string name("exercise 3.5a");
name被声明
赋值name
错,必须先声明
Exercise 2.19:
下列程序中 j 的值是多少?
int i = 42;
int main()
{
int i = 100;
int j = i;
// ...
}
100
Exercise 2.20:
下列程序段将会输出什么?
int i = 100, sum = 0;
for (int i = 0; i != 10; ++i)
sum += i;
std::cout << i << " " << sum << std::endl;
i:100,sum:45
Exercise 2.21:
下列程序合法吗?
int sum = 0;
for (int i = 0; i != 10; ++i)
sum += i;
std::cout << "Sum from 0 to " << i
<< " is " << sum << std::endl;
不合法,最后一个i未定义,sum = 45
本文详细介绍了编程中的基本概念,如变量、赋值、运算符等,并通过多个示例帮助读者理解如何在代码中应用这些概念。
1万+

被折叠的 条评论
为什么被折叠?



