📜  C控制语句测试3

📅  最后修改于: 2020-10-23 01:44:12             🧑  作者: Mango

C控制语句测试3

C控制语句测试纸3包含来自决策语句的问题:if-else和switch,循环语句:for循环,while循环&do-while循环和jump语句:中断并继续。

11)关于C程序中的if-else语句,哪些语句正确?

  1. 允许嵌套if-else语句
  2. 每个if-else语句都可以使用?:运算符替换为等效语句
  3. 允许在else块中使用多个语句
  4. 如果允许块中的多个语句
  1. 1、3和4
  2. 1 2 3 4
  3. 2、3和4
  4. 1和4

正确的选项是(a)。

说明:

在C程序中允许嵌套if-else语句,我们可以在if或else语句中使用if-else语句。

允许在if or else块中使用多个语句,因为我们可以通过将语句置于{?..}中来针对if or else条件的真实值执行多个语句。

大多数情况下,if-else语句可以由三元运算符替换,但是也有一些例外,其中if-else语句不能由三元运算符替换。

因此,关于if-else语句的1、3和4语句是正确的。

12)找出错误,如果在下面的程序?

 #include
int main()
{
    int P = 10;
    switch(P)
    {
       case 10:
       printf("Case 1");

       case 20:
       printf("Case 2");
       break;

       case P:
       printf("Case 2");
       break;
    }
    return 0;
}
  1. 错误:在行情况P下需要常量表达式:
  2. 错误:在每种情况下都没有break语句
  3. 错误:未指定默认值
  4. 没错

正确的选项是(a)。

说明:

在编译程序时,编译器将在大小写为P:的情况下报告错误“需要常量表达式”,因为变量名不允许与case语句一起使用。

case语句仅接受常量表达式。因此出现错误:在行情况P:处需要的常量表达式。

13)在以下程序中查找错误?

#include
int main()
{
    int i = 1;
    switch(i)
    {
        case 1:
           printf("Case1");
           break;
        case 1*2+2:
           printf("Case2");
           break;
    }
return 0;
}
  1. 错误:在switch语句中
  2. 错误:如果是1 * 2 + 4语句
  3. 错误:未指定默认值
  4. 没错

正确的选项是(d)。

说明:

在switch语句中允许使用常量表达式,因此在1 * 2 + 4语句的情况下不会给出错误。

因此,它将在程序输出中打印“ Case1″。

14)长整数至少32位宽,短整数至少16位宽

正确的选项是(a)。

说明:

使用的基本C编译器是16位编译器,以下是其数据类型的大小:

long int的大小为4字节宽,即32位。

short int的大小为2字节宽,即16位

15)char变量可以存储Unicode字符或ASCII字符。

正确的选项是(a)。

说明:

是的,允许char变量存储Unicode字符或ASCII字符,因为字符数据类型的编码是以Unicode或ASCII格式进行的。