【C语言复习要点】
C语言是一种基础且强大的编程语言,被广泛应用于软件开发。这份复习试卷涵盖了许多核心的C语言知识点,包括语法、运算符、输入输出、数组、指针以及控制结构等。
1. **标识符**:C语言中的标识符是用来命名变量、常量、函数等的符号。合法的标识符由字母、数字和下划线组成,并且不能以数字开头。不正确的C语言标识符例子是`ab-exe`,因为它包含了非法字符`-`。
2. **常量定义**:在C语言中,可以使用`#define`预处理器定义常量。正确的定义M为符号常量的方式是`#define M 3.14`。
3. **数学运算**:题目中提到了温度转换,涉及到浮点数运算。从华氏温度到摄氏温度的转换公式是`C = (F - 32) * 5 / 9`。正确的赋值表达式是`C = 5 / 9 * (F - 32)`。
4. **递减运算符**:`n=--k`等价于`n=k-1; k=k-1;`。因此,与`n=--k`完全等价的是`n=k ; k=k-1`。
5. **三目运算符**:`x>y ? x++ : y--`是一个三目运算符,如果`x>y`,则执行`x++`,否则执行`y--`。在给定的例子中,如果`x=3`,`y=1`,则`x>y`为真,所以`x++`,因此`x`和`z`的值分别为4和3。
6. **逗号运算符**:`(a=15, a*=4), a+15`首先执行`a=15`,然后`a*=4`使`a`变为60,最后`a+15`得到75,所以整个表达式的值是75。
7. **输入函数**:在C语言中,使用`scanf`函数进行标准输入。正确输入多个字符的方法是`scanf("%c%c%c", &x, &y, &z);`,确保为每个变量提供内存地址。
8. **逻辑运算符**:`||`是逻辑或运算符,`m=a>b`为假,`n=c>d`也为假,但因为`||`是短路运算符,一旦左侧为真,就不会评估右侧,所以`n`的值保持不变,仍为2。
9. **do...while循环**:当`i`初始值为10时,`do...while(i==1)`循环不会执行,因为`i`不等于1。
10. **二维数组初始化**:`int a[3][3]={1,2,3,4,5,6}`,未完全初始化的二维数组,`a[2][2]`的值默认是不确定的,但通常在未初始化的内存区域,其值为0。
11. **浮点数输出**:`printf("x=% .2f,y=% .2f\n", x, y)`会输出`x`和`y`的值,保留两位小数,结果是`x=3.00,y=5.00`。
12. **函数调用**:当实参是简单变量时,它与形参之间通过值传递,即单向值传递,形参的改变不会影响实参的值。
13. **字符串长度**:`sizeof(s)`返回数组`s`的总字节数(包括结束符`\0`),而`strlen(s)`返回字符串`s`的长度,不包括结束符。因此,`sizeof(s)`是6,`strlen(s)`是2。
14. **指针操作**:正确地将指针`p`指向整型变量`x`的方法是`p=&x`。
15. **数组定义**:不正确的数组定义是`int a[2]={1,2,3};`,因为数组大小为2,但初始化了3个元素。
16. **for循环**:这个循环`for(i=1; x>8; y=y+i) x--;`会在`x>8`时执行,每次循环`x--`,直到`x<=8`。当`x`初始值为10时,输出结果是`9,11`。
17. **结构体引用**:结构体成员的正确引用方式是`student.a`。
以上就是C语言复习试卷中涉及的一些关键概念,包括标识符规则、常量定义、算术和逻辑运算、输入输出、循环控制、数组、指针以及结构体的使用。熟悉并掌握这些知识点对于理解和编写C语言程序至关重要。