📜  C函数测试4

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

C函数测试4

16)下面程序的输出是什么?

#include
int chk (int, int);

int main()
{
    int x;
    x = check(10, 20);
    printf("x=%d\n", x);
    return 0;
}
int check(int a, int b)
{
    int *y, *z;
    y=&a;
    z=&b;
    a>=45 ? return(*y): return(*z);
}
  1. 打印1
  2. 列印10
  3. 列印20
  4. 编译错误

正确的选项是(d)。

说明:

第16行有错误,即a> = 45? return(* y):return(* z);我们不允许在三元运算符使用return关键字

因此,在程序的输出中会发生编译错误

17)下面程序的输出是什么?

#include
int j;
int function();

int main()
{
    while(j)
    {
        function();
        main();
    }
    printf("Hi\n");
    return 0;
}
int function()
{
    printf("Hello");
}

  1. Hi
  2. Hello Hi
  3. No output
  4. Infinite loop

正确的选项是(a)。

说明:

步骤1: int j;变量j被声明为整数类型。

步骤2: int函数();该语句告诉编译器该函数不接受任何参数,并且返回整数值。

步骤3: while(j)j的值未初始化,因此while条件失败。因此,它不会执行while块。

步骤4: printf(“ Hi \ n”);该语句显示“ Hi”。

因此,程序的输出为“ Hi”。

18)C库函数rewind()用于将文件指针重新定位在文件的开头。

正确的选项是(a)。

说明:

在C语言中,快退函数将文件位置重新定位在给定流文件的开头。

使用函数rewind()的语法为:

无效倒带(FILE * stream)

此函数还清除流的错误和文件结束指示符。

19)哪个头文件用于支持malloc()和calloc()函数。

  1. stdio.h
  2. math.h
  3. stdlib.h
  4. memory.h

正确的选项是(c)。

说明:

void * calloc(size_h nitems,size_h size):函数calloc()需要double参数。

void * malloc(size_h size):函数malloc()需要单个参数。

为了支持该函数-需要malloc()和calloc() stdlib.h头文件。

20)函数执行速度比宏指令快。

正确的选项是(b)。

说明:

宏可以更快地执行,而无需上下文切换,因为宏的代码在调用行处得到了扩展。

因此,以上说法是错误的。