跳到主要内容

任务五 同步训练

知识点​

同步训练(选择题)​

1.下面( )是合法的变量名。​

A. accp5.0 B. CSharp C. 99$ D. Main

答案:B(CSharp符合标识符命名规则。A含小数点,B含$符号,C以数字开头,D是关键字)

2.有一个浮点型变量 double money = 66.6,下面的( )语句可以将它转换为一个整型变量。(选两项)​

A. int pay = money; B. int pay = int money; C. int pay = int.Parse(money); D. int pay = Convert.ToInt32(money);

答案:CD(A隐式转换不允许从double到int,B语法错误,C和D都可以正确转换)

3.若要使用SubString()方法从字符串Superman中截取man这个子字符串,那么SubString()方法的两个参数应该分别为( )。​

A. 5, 3 B. 5, 7 C. 6, 3 D. 6, 8

答案:A(SubString(5,3)表示从索引5开始截取3个字符,"Superman"中索引5是'm',截取3个字符得到"man")

4.在C#中,定义一个字符串变量应使用( )语句。​

A. CString str; B. string str; C. Dim str as string; D. char * str;

答案:B

5.以下数据类型中,不可以使用算术运算的是( )。​

A. bool B. char C. decimal D. sbyte

答案:A(bool类型不能参与算术运算)

6.设x为int型变量,则描述"x是奇数"的C#表达式是( )。​

A. x / 2 == 0 B. x / 2 != 0 C. x % 2 == 0 D. x % 2 != 0

答案:D(x是奇数的条件是x除以2余数不为0)

7.若有定义语句 int a = 3;,在其后执行语句 int b = ++a;,则b的值为( )。​

A. 4 B. 3 C. 0 D. 不确定

答案:A(前置自增:先使a增1变为4,再赋值给b,所以b=4)

8.为了把字符串"A"和"B"连接到一个新变量中,需要的语句为( )。​

A. s = "A" * "B" B. s = "A" + "B" C. s = "A" . "B" D. 字符串不能被连接

答案:B(+ 是字符串连接运算符)

9.C#中的值类型包括三种,它们是( )。​

A. 整型、浮点型、基本类型 B. 数值类型、字符类型、字符串类型 C. 简单类型、枚举类型、结构类型 D. 数值类型、字符类型、枚举类型

答案:C(值类型分为简单类型和复杂类型,复杂类型又分为结构类型和枚举类型)

10.浮点常量有三种格式,下面( )组的浮点常量都属于double类型。​

A. 0.71828, 0.71828D, 7.1828E-1 B. 0.71828, 0.71828F, 0.071828e1 C. 0.71828, 0.71828f, 0.71828M D. 0.71828F, 0.71828D, 0.71828M

答案:A(不带后缀默认为double,D后缀也是double,科学记数法默认为double)

11.下面字符常量表示有错的一组是( )。​

A. '\\\\', '\\u0027', '\\x0027' B. '\\n', '\\t', '\\037' C. 'a', '\\u0061', (char)97 D. "\\x0030", '\\0', '0'

答案:D("\\x0030" 用了双引号,是字符串常量而非字符常量)

12.下列标识符命名全部正确的是( )。​

A. _int, Int, @int B. using, using, @using C. NO1, NO_1, NO.1 D. A3, _A3, @A3

答案:D(A中_int正确但@int不太规范,B中前两个using是关键字,C中NO.1含小数点)

13.当表达式中混合了几种不同的数据类型时,C#会基于运算的顺序将它们自动转换成同一类型。但下面( )类型和decimal类型混合在一个表达式中,不能自动提升为decimal。​

A. float B. int C. uint D. byte

答案:A(float和decimal混合时不能自动提升为decimal,需要显式转换)