niusouti.com

请编写函数void fun(int x, int pp[], int *n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在即所指的数组中,这些除数的个数通过形参n返回。例如,若x中的值为30,则有4个数符合要求,它们是1, 3,5,15。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:include <conio.h>include <stdio.h>void fun (int x, int pp[],

题目

请编写函数void fun(int x, int pp[], int *n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在即所指的数组中,这些除数的个数通过形参n返回。

例如,若x中的值为30,则有4个数符合要求,它们是1, 3,5,15。

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

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

试题程序:

include <conio.h>

include <stdio.h>

void fun (int x, int pp[], int *n)

{

}

main()

{

int x,aa[1000], n, i ;

clrscr();

printf("\nPlease enter an integer

number : \n ") ;

scanf ("%d", &x) ;

fun (x, aa, &n) ;

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

printf ("%d ", aa [i]);

printf ("\n ") ;

}


相似考题
更多“请编写函数voidfun(int x,int pp[], int *n),它的功能是:求出能整除x且不是偶数的各整数,并按从 ”相关问题
  • 第1题:

    请编写函数fun(),它的功能是:求出1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数并将它们放在 a所指的数组中,通过n返回这些数的个数。

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

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

    试题程序:

    include <conio.h>

    include <stdio.h>

    void fun (int *a,int *n)

    {

    }

    main()

    {

    int aa[1000], n, k;

    clrscr();

    fun(aa,&n);

    for(k=0;k if((k+1)%10==0)

    {printf("%5d",aa[k]);

    printf("\n");} /*一行写9个数*/

    else

    printf("%5d ",aa[k]);

    }


    正确答案:void fun(int *a int *n) { int ij=0; for(i=1;i=1000;i++) /*求1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数并放入数组a中*/ if((i%7==0||i%11==0)&&i%77!=0) a[j++]=i; *n=j; /*传回满足条件的数的个数*/ }
    void fun(int *a, int *n) { int i,j=0; for(i=1;i=1000;i++) /*求1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数,并放入数组a中*/ if((i%7==0||i%11==0)&&i%77!=0) a[j++]=i; *n=j; /*传回满足条件的数的个数*/ } 解析:注意本题题目应是找出能被7或11整除但不能同时被7和11整除的所有整数。能同时被7和11整除的整数一定能被77整除,且不能被77整除的数不一定就是能被7或11整除的数。所以可得出程序中的if()。按运算优先级可知 (i%7==0||i%11==0),注意,两边必须要有小括号。

  • 第2题:

    请编写函数void proc(int X,int pp[],int*n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。

    例如,若X中的值为50,则有3个数符合要求,它们是

    1,5,25。

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

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

    试题程序:


    正确答案:


    【解析】按照题目中要求求出能整除x且不是偶数的各整数,可以通过判断小于整数x的所有整数能否整除x。将能整除x的所有奇数放入数组pp中。最后将符和条件的整数个数通过形参返回到主函数当中。

  • 第3题:

    关于函数int() 的描述,下列哪个是正确的?

    A.任何数学函数f(x)都可以用int()求出不定积分

    B.任何数学函数f(x)都可以用int()求出定积分

    C.只要f(x)连续,都可以用int()求出不定积分

    D.只要f(x)连续,都可以用int()求出定积分

    E.int()既可以用于求函数的不定积分,也可以用于求函数的定积分

    F.int()可以用于求函数的广义积分


    int( )既可以用于求函数的不定积分,也可以用于求函数的定积分;int( )可以用于求函数的广义积分

  • 第4题:

    请编写一个函数fun(),它的功能是:求出1到m(含m)之内能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。

    例如,若传给m的值为50,则程序输出:

    7 11 14 21 X 28 33 35 42 44 49

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

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

    试题程序:

    include<conio.h>

    include<stdio.h>

    define M 100

    void fun(int m, int *a, int *n)

    {

    }

    main()

    {

    int aa[M],n,k;

    clrscr();

    fun(50,aa,&n);

    for(k=0;k<n; k++)

    if((k+1)%20==0) /*每行输出20个数*/

    {printf("%4d",aa[k]);

    printf("\n");

    }

    else

    printf("%4d",aa[k]);

    printf("\n");

    }


    正确答案:void fun(int mint *aint *n) { int ij=0; for(i=1;i=m;i++) if(i%7==0||i%11==0) /*求出1到m(含m)之内能被7或11整除的所有整数放在数组a中*/ a[j++]=i; *n=j; /*返回这些数的个数*/ }
    void fun(int m,int *a,int *n) { int i,j=0; for(i=1;i=m;i++) if(i%7==0||i%11==0) /*求出1到m(含m)之内能被7或11整除的所有整数放在数组a中*/ a[j++]=i; *n=j; /*返回这些数的个数*/ } 解析:本题要找出能被7或11整除的所有整数,注意数学中的“或”和C语言中的“或”的区别,但在此处,if条件语句中用了“||”运算符,若要找能同时被7和11整除的所有整数则在if()中应用“&&”运算符。

  • 第5题:

    请编写函数void proc(int x,int pp[],int*n),它的功能是:求出能整除x且不是偶数、不为1的各整数,并按从大到小的顺序放在PP所指的数组中,这些除数的个数通过形参n返回。

    例如,若x的值为30,则有3个数符合要求,它们是15,5,3。

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

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

    试题程序:


    正确答案:


    【解析】按照题目中要求,求出能整除x且不是偶数的各整数。首先判断小于等于整数x的所有奇数是否能被x整除,将能被x整除的奇数放入数组pp中。最后将数组pp中元素的个数返回到主函数中。