设有如下函数: fun(floatx) { x*=x++; printf("%d\n",x); return(x); } 则函数的类型是______。A.floatB.voidC.intD.无法确定

题目

设有如下函数: fun(floatx) { x*=x++; printf("%d\n",x); return(x); } 则函数的类型是______。

A.float

B.void

C.int

D.无法确定


相似考题
更多“设有如下函数:fun(floatx){ x*=x++;printf("%d\n",x);return(x);}则函数的类型是______。A.floatB ”相关问题
  • 第1题:

    设有如下的函数______。 f(x) float x; {printf("\n%d",x*x); }则函数类型

    A.与参数x类型相同

    B.是void

    C.是int

    D.无法确定


    正确答案:C
    解析:在函数名前没有说明函数返回值类型时,隐含为int类型。

  • 第2题:

    请编写一个函数unsigned fun (unsigned w),w 是一个大于 10的无符号整数,若w是n(n≥2)位的整数,则函数求出w的后 n-1位的数作为函数值返回。

    例如:w值为5923,则函数返回923;若w值为923,则函数返回23。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。

    试题程序:

    include<conio. h>

    include<stdio. h>

    unsigned fun(unsigned w)

    {

    }

    main()

    {

    unsigned x;

    clrscr ();

    printf("Enter a unsigned integer

    number: ");

    scanf ("%u",&x);

    printf("The original data is:%u\n",x);

    if (x<10)

    printf ("Data error! ");

    else

    printf ("The result :%u\n", fun(x) );

    }


    正确答案:unsigned fun (unsigned w) { if(w>=10000) return w%10000; /*求出n位整数w的后n-1位的数*/ if(w>=1000) return w%1000; if(w>=100) return w%100; if(w>=10) return w%10; }
    unsigned fun (unsigned w) { if(w>=10000) return w%10000; /*求出n位整数w的后n-1位的数*/ if(w>=1000) return w%1000; if(w>=100) return w%100; if(w>=10) return w%10; } 解析:我们首先应该明白无符号整数的定义形式,若它大于10000(5位)时,将10000对它求余则结果为后4位;当它大于1000(4位)时,将1000对它求余则结果为后3位,花此类推。特别注意这里所有if()的顺序不能颠倒。

  • 第3题:

    设有如下的函数 funct(x) float x; {x*=x;printf("\n%d",x);return(x);} 则函数的类型( )

    A.与参数x的类型相同

    B.void

    C.int

    D.无法确定


    正确答案:C

  • 第4题:

    以下程序通过函数sunFun求。这里f(x)=x2+1

    main( )

    { printf("The sum=%d\n",SunFun(10)); }

    SunFun(int n)

    { int x,s=0;

    for(x=0;x<=n;x++) s+=F(【 】);

    return s;

    }

    F( int x)

    { return 【 】);}


    正确答案:x*x+1
    x*x+1 解析:本题中F(  )函数实现表达示f(x) =x2+1,SunFun(  )函数实现循环累加F(0)...F(10)的值因此[14]填x,[15]填x*x+1。

  • 第5题:

    下列给定程序中,函数fun()的功能是:计算

    S=f(-n)+f(-n+1)+…+f(0)+f(1)+f(2)+…f(n)的值。

    例如,当n为5时,函数值应为10.407143。f(x)函数定义如下:

    请改正程序中的错误,使它能得山正确的结果。

    注意:不要改动main 函数,不得增行或删行,也不得更改程序的结构。

    试题程序:

    include <conio. h>

    include <stdio. h>

    include <math. h>

    /**************found***************/

    f (double x)

    {

    if (x==0.0 || x==2.0)

    return 0.0;

    else if (x<0.0)

    return (x-1) / (x-2);

    else

    return (x+1) / (x-2);

    }

    double fun(int n)

    {

    int i; double s=0.0,y;

    for (i=-n; i<=n; i++)

    { y=f(1.0*i); s+=y;}

    /**************found**************/

    return s

    }

    main()

    { clrscr();

    printf ("%f\n", fun (5));

    }


    正确答案:(1)错误;(1)f(double x) 正确:double f (double x) (2)错误;return s 正确:return s;
    (1)错误;(1)f(double x) 正确:double f (double x) (2)错误;return s 正确:return s; 解析:该程序的流程是,fun()程序对f (n)项循环累加,fun()程序采用条件选择语句计算函数f(x)的值。本题错误在于未定义函数f(double x)的返回值类型。C语言规定,在未显式声明的情况下,函数返回值默认为int 型。