14赋值运算符和赋值表达式(练习)-《C#程序设计基础》(河海大学出版社)同步精品课堂
1. 以下选项中,合法的赋值语句是( )
A. int a==1; B. int i=1;int j=i++;
C. int a=a+1=2; D. int i=int (j);
1. B
【解析】
选项A:错误。==是用来比较两个值是否相等的运算符,所以int a==1;这一句将无法通过编译。正确的语句应该是int a = 1;,这是声明一个整型变量a并将其赋值为1。
选项B:正确。int j=i++;,是先将i的值赋给j,i再加1。所以i的值为2,j的值为1。
选项C:错误。应改为:int a=a+1;
选项D:错误。应该改为:int i=(int)j;
2.在C#中,以下哪个符号不是赋值运算符?
A. = B. += C. -= D. ==
2. D
【解析】A、B、C都是赋值运算符。= 是基本的赋值运算符,+= 和 -= 是复合赋值运算符,分别表示加后赋值和减后赋值。D. == 是比较运算符,用于判断两个操作数是否相等,不是赋值运算符。
3. 在C#中,以下哪个表达式表示将变量a的值加10后赋给变量b?( )。
A. b = a + 10; B. b += a; C. b = a += 10; D. b = ++a;
3. A
【解析】A. b = a + 10; 这个表达式表示将变量a的值与10相加,然后将结果赋给变量b。B. b += a; 这个表达式表示将变量a的值加到变量b的当前值上,然后将结果赋给变量b。C. b = a += 10; 这个表达式首先会将变量a的值加10,然后将结果赋给a,最后再将a的新值赋给b。D. b = ++a; 这个表达式表示先将变量a的值加1,然后将新值赋给a,最后再将a的新值赋给b。因此,只有A选项符合题目要求。
4. 在C#中,以下哪个表达式使用了复合赋值运算符?( )。
A. a = b + c; B. a = b - c; C. a += b; D. a = b * c;
4. C
【解析】A、B、D选项都是使用了基本的赋值运算符=。C. a += b; 使用了复合赋
学科网(北京)股份有限公司