📜  C控制语句测试2

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

C控制语句测试2

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

6)在下面程序的while循环中查找错误(如果有)。

#include
int main()
{
    int j=1;
    while()
    {
        printf("%d\n", j++);
        if(j>5)
           break;
    }
    return 0;
}
  1. while语句中应该有分号
  2. while循环应替换为do-while循环
  3. while循环中应该有一个条件
  4. 没错

正确的选项是(c)。

说明:

在程序“表达式语法”中发生错误,因为while()循环必须具有条件表达式。

例如:while(j> 5){…}

因此,删除?Expression语法?错误while循环中应该有一个条件。

7)如果使用scanf()语句将值存储在char变量中,则还将与该值一起存储回车符(\ r)。

正确的选项是(b)。

说明:

不,如果使用scanf()语句,则在用户按下ENTER键后,回车符会告诉编译器从缓冲区读取输入。因此,回车(\ r)的值不会存储在内存中。

8)找出程序中的两个循环是否都打印正确的字符串长度?

#include
main()
{
   int j;
   char s[] = "javaTpoint";

   for(j=0; s[j]; ++j);
      printf("%d \n", j);
   
j=0; 
   while(s[j++]);
      printf("%d ", j);
}
  1. 是的,两个循环都打印正确的字符串长度
  2. 只有while循环才能打印正确的字符串长度
  3. 仅用于循环打印正确的字符串长度
  4. 程序中的编译错误

正确的选项是(c)。

说明:

  1. 输出:10
  2. 11

在while循环中,打印不正确的字符串长度是因为在检查’\ 0’之后,while循环变量’i’会增加,因此比字符串的长度多1。

因此,只有for循环才能打印正确的字符串长度。

9)break语句用于控制开关,而continue语句用于控制开关的开始?

  1. 没有

正确的选项是(b)。

说明:

不可以,因为continue语句仅适用于C编程中的循环,而不适用于switch。

10)为了打印下面给出的a和b的值,您将使用哪个printf()语句?

#include
main()
float a=3.14;
double b=3.14;
  1. printf(“%Lf%f”,a,b);
  2. printf(“%Lf%Lf”,a,b);
  3. printf(“%f%Lf”,a,b);
  4. printf(“%f%lf”,a,b);

正确的选项是(d)。

说明:

为了打印,双精度值%lf用作格式说明符。

为了打印浮点值%f,它用作格式说明符。

因此,对于打印a和b的值,printf语句的语法为printf(“%f%lf”,a,b);