📜  C控制语句测试1

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

C控制语句测试1

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

1)在switch-case语句中不能检查哪种数据类型?

  1. enum
  2. character
  3. integer
  4. float

正确的选项是(d)。

说明:

在C语言中,语言规范将switch / case语句定义为使用int值,因此我们不能在switch / case语句中使用浮点值。

2)打印多少次“ javaTpoint”?

#include
int main()
{
    int x;
    for(x=-1; x<=10; x++)
    {
        if(x < 5)
            continue;
        else
            break;
        printf("javaTpoint");
    }
    return 0;
}
  1. 10倍
  2. 11次
  3. 0次
  4. 无限的时代

正确的选项是(c)。

说明:

在程序中,x用-1初始化。由于x <5(因为x为-1),它将以continue语句开始。

继续表示“停止当前迭代并继续下一个迭代”。因此,x现在变为0。直到x变为5为止。

现在,如果x = 5的值,它将在遇到break语句的地方进入else部分,结果它将退出for循环。因此,它不会转到printf语句。

因此javaTpoint将被打印0次。

3)如果short int为2字节宽,则执行while循环多少次?

#include
int main()
{
    int i=1;
    while(i <= 155)
    {
        printf("%c %d\n", i, i);
        i++;
    }
    return 0;
}
  1. 154次
  2. 155次
  3. 156次
  4. 无限的时代

正确的选项是(b)。

说明:

short int的大小(2字节宽)不会影响while()循环操作。

因此while(i <= 155)循环将执行155次。

4)关于以下程序哪个陈述正确?

#include
int main()
{
    int i = 8, j = 24;
    if(i = 8) && if(j = 24)
        printf("Welcome Programmer");
    return 0;
}

  1. Welcome Programmer
  2. Error: Undeclared identifier if
  3. Error: Expression syntax
  4. No output

正确的选项是(c)。

说明:

在程序的第5行,即if(i = 8)&& if(j = 24)中,发生“表达式语法”错误。

因此,该语句应类似于if((i == 5)&&(j == 10))。

因此,在编译程序时出现错误:出现表达式语法

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

#include
int main()
{
    int j = 1;
    switch(j)
    {
        printf("Hello programmer!");
        case 1:
            printf("Case1");
            break;
        case 2:
            printf("Case2");
            break;
    }
return 0;
}
  1. 程序中没有错误,并显示“ Case1″
  2. 错误: switch语句后无效的printf语句
  3. 错误:未指定默认值
  4. 以上都不是

正确的选项是(a)。

说明:

在程序switch语句用于switch(j)的情况下,由于i初始化为1,所以它变为switch(1)。

因此,情况1:块被执行。因此,它打印“ Case1″。

Printf(“您好,程序员!”);被编译器忽略。

因此,程序中没有错误,并显示“ Case1″。