1. 练习3.2.1:对于下列各个语言,查询语言使用手册以确定:(i)形成各语言的输入字母表的字符集分别是什么(不包括那些只能出现在字符串或注释中的字符)?(ii)各语言的数字常量的词法形式是什么?(iii)各语言的标识符的词法形式是什么?
(1) C 语言
(i) 输入字母表:
- 字符集:C语言的输入字母表包括:
- 大小写字母:`A-Z`、`a-z`
- 数字:`0-9`
- 特殊字符:`_`、`+`、`-`、`*`、`/`、`%`、`=`、`&`、`|`、`^`、`!`、`<`、`>`、`~`、`;`、`:`、`?`、`,`、`.`、`()`、`[]`、`{}`
等。
- 空白字符:空格、制表符、换行符。
(ii) 数字常量的词法形式:
- 整数常量:如 `123`、`0x1A`(十六进制)、`075`(八进制)、`0b101`(二进制,C99 以后支持)。
- 浮点数常量:如 `3.14`、`1e10`(科学记数法)。
(iii) 标识符的词法形式:
- 标识符**:由字母(`A-Z`、`a-z`)、数字(`0-9`)和下划线 (`_`) 组成,且不能以数字开头。
(2) C++ 语言
(i) 输入字母表:
- 字符集:与C语言相似,C++字符集包括:
- 大小写字母:`A-Z`、`a-z`
- 数字:`0-9`
- 特殊字符:`_`、`+`、`-`、`*`、`/`、`%`、`=`、`&`、`|`、`^`、`!`、`<`、`>`、`~`、`;`、`:`、`?`、`,`、`.`、`()`、`[]`、`{}`
等。
- 空白字符:空格、制表符、换行符。
(ii) 数字常量的词法形式:
- 整数常量:如 `123`、`0x1A`(十六进制)、`075`(八进制)、`0b101`(C++11 支持二进制常量)。
- 浮点数常量:如 `3.14`、`1e10`(科学记数法)。
- 字符常量:C++ 支持更复杂的字符和字符串字面量,如 `L'a'` 和 `u8"Hello"`。
(iii) 标识符的词法形式:
- 标识符:同C语言,标识符由字母(`A-Z`、`a-z`)、数字(`0-9`)和下划线 (`_`) 组成,不能以数字开头。
(3) C# 语言
(i) 输入字母表:
- 字符集:C#的字符集包括:
- 大小写字母:`A-Z`、`a-z`
- 数字:`0-9`
- 特殊字符:`_`、`+`、`-`、`*`、`/`、`%`、`=`、`&`、`|`、`^`、`!`、`<`、`>`、`~`、`;`、`:`、`?`、`,`、`.`、`()`、`[]`、`{}`
等。
(ii) 数字常量的词法形式:
- 整数常量:如 `123`、`0x1A`(十六进制)、`075`(八进制)。
- 浮点数常量:如 `3.14`、`1e10`,C#支持 `float`、`double` 和 `decimal` 类型。
(iii) 标识符的词法形式:
- 标识符:标识符由字母(`A-Z`、`a-z`)、数字(`0-9`)和下划线 (`_`) 组成,不能以数字开头,C# 还支持 @符号作为转义字符前缀。
(4) Fortran 语言
(i) 输入字母表:
- 字符集:Fortran 的输入字母表包括:
- 大小写字母:`A-Z`、`a-z`
- 数字:`0-9`
- 特殊字符:`+`、`-`、`*`、`/`、`=`、`<`、`>`、`,`、`.`、`()`、`:`、`!` 等。
(ii) 数字常量的词法形式:
- 整数常量:如 `123`、`+123`、`-123`。
- 浮点数常量:如 `3.14`、`1.0E10`。(iii) 标识符的词法形式:
- 标识符:标识符以字母开头,由字母、数字和下划线组成,Fortran 不区分大小写。
(5) Java 语言
(i) 输入字母表:
- 字符集:Java 的输入字母表包括:
- 大小写字母:`A-Z`、`a-z`
- 数字:`0-9`
- 特殊字符:`_`、`+`、`-`、`*`、`/`、`%`、`=`、`&`、`|`、`^`、`!`、`<`、`>`、`~`、`;`、`:`、`?`、`,`、`.`、`()`、`[]`、`{}`
等。
(ii) 数字常量的词法形式:
- 整数常量:如 `123`、`0x1A`(十六进制)、`0b101`(二进制)。
- 浮点数常量:如 `3.14`、`1e10`。
(iii) 标识符的词法形式:
- 标识符:由字母(`A-Z`、`a-z`)、数字(`0-9`)和下划线 (`_`) 组成,不能以数字开头,且区分大小写。(6) Lisp 语言
(i) 输入字母表:
- 字符集**:Lisp 的输入字母表包括:
- 大小写字母:`A-Z`、`a-z`
- 数字:`0-9`
- 特殊字符:`_`、`+`、`-`、`*`、`/`、`=`、`&`、`|`、`!`、`<`、`>`、`.`、`:`、`?`、`#`、`'`、`"`
等。
(ii) 数字常量的词法形式:
- 整数常量:如 `123`、`-123`。
- 浮点数常量:如 `3.14`、`1.0e10`。
(ii