单选题fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下画线处应该填写的是(  )。#include #define N 5void fun(int x[N]){ int m; for(m=N-1;m>=0;m--)scanf("%d",_____);}A &x[++m]B &x[m+1]C x+(m++)D x+m

题目
单选题
fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下画线处应该填写的是(  )。#include #define N 5void fun(int x[N]){ int m; for(m=N-1;m>=0;m--)scanf("%d",_____);}
A

&x[++m]

B

&x[m+1]

C

x+(m++)

D

x+m


相似考题
更多“fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下画线处应该填写的是(  )。#include #de”相关问题
  • 第1题:

    请编写函数fun(),其功能是:将s所指字符串中除了下标为偶数、同时ASCII码值为奇数的字符之外,其余的所有字符都删除,串中剩余字符所形成的一个新串放在t所指的数组中。

    例如,若s所指字符串中的内容为ABCDEFG12345,其中字符B的ASCII码值为偶数,所在元素的下标为奇数,因此必须删除;而字符A的ASCII码值为奇数,所在数组中的下标为偶数,因此不应当删除,其他依次类推。最后t所指的数组中的内容应是ACEG。

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

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

    试题程序:

    include<conio.h>

    include<stdio.h>

    include<string.h)

    void fun(char *s, char t[])

    {

    }

    main()

    {

    char s[100],t[100];

    clrscr();

    printf("\nPlease enter string s:");

    scanf("%s",s);

    fun(s,t);

    printf("\nThe result is: %s\n",t);

    }


    正确答案:void fun(char *s/char t[]) {int ij=0; for(i=0;s[i]!='\0';i++) {if(i%2==0 && s[i]%2!=0) t[j++]=s[i]; } /*将下标为偶数同时ASCII码值为奇数的字符放入数组t中*/ t[j]='\0'; /*在字符串最后加上结束标志位*/ }
    void fun(char *s/char t[]) {int i,j=0; for(i=0;s[i]!='\0';i++) {if(i%2==0 && s[i]%2!=0) t[j++]=s[i]; } /*将下标为偶数同时ASCII码值为奇数的字符放入数组t中*/ t[j]='\0'; /*在字符串最后加上结束标志位*/ } 解析:本题要求除了下标为偶数同时ASCII码值为奇数的字符之外,其他字符都删除。即要留下下标为偶数同时ASCII码值为奇数的字符。所以,在if的条件语句中应使用if(i%2==0&&s[i]%2!=0)。

  • 第2题:

    以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。 #include<stdio.h> #define N l0 void fun(int x[N]) {int i=O; while(i<N)scanf("%d",___ ); } 在程序中下划线处应填人的是( )。

    A.x+i

    B.&x[i+1]

    C.x+(i++)

    D.&x[++i]


    正确答案:C
    x为数组x[N]的首地址也就等于&x[0];A中i都为0则只对X[0]赋值,B对数组第二位赋值;D从数组第二位开始赋值;故选c。

  • 第3题:

    请在下列程序中的横线处填写正确的语句。include using namespace std; class Base{ pu

    请在下列程序中的横线处填写正确的语句。

    include<iostream>

    using namespace std;

    class Base{

    public:

    void fun(){cout<<“Basefun”<<endl;}

    );

    class Derivde:public Base{

    public:

    void fun(){

    //调用基类的函数fun()

    cout<<“Derived fun”<<endl;

    }

    };


    正确答案:Base::fun()。
    Base::fun()。 解析: 本题考查的是派生类对基类成员的访问。本题中派生类Derived覆盖了基类Base中的fun (),如果需要调用基类中的fun(),则需要使用域运算符“::”。故应填写Base::fun()。

  • 第4题:

    在下列程序画线处填入的正确语句是()。includeusing namespace std;classBase{public:

    在下列程序画线处填入的正确语句是( )。 #include <iostream> using namespace std; class Base { public: void fun() { cout<<"Base::fun",<<end1; } }; class Derived:public Base { void fun() { ______________ //显式调

    A.fun();

    B.Base.fun();

    C.Base::fun();

    D.Base->fun();


    正确答案:C
    解析:本题主要考核作用域分辨符的使用。作用域分辨符“::”可以用来限定要访问的成员所在类的名称。

  • 第5题:

    应在下列程序画线处填入的正确语句是 ( )。include using namespace std;clas Base{pu

    应在下列程序画线处填入的正确语句是 ( )。 #include <iostream> using namespace std; clas Base { public: void fun() { cout<<"Base::fun"<<end1; } }; class Derived : public Base { void fun() { ________________//显示调用基类的函数 fun() cout<<"Derived::fun"<<end1; } };

    A.fun();

    B.Base.fun();

    C.Base::fun();

    D.Base->fun();


    正确答案:C
    解析:作用域分辨符号是“::”,它可以用来限定要访问的成员所在的类的名称。在派生类Derive的定义中显式调用基类的函数fun(),则只能借助于作用域分辨符“::”。

  • 第6题:

    请编写一个函数fun(),它的功能是:找出一维数组元素中最大的值和它所在的下标,最大值和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。

    主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。

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

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

    试题程序:

    include<stdlib.h>

    include<stdio.h>

    void fun(int a[],int n, int *max,int *d)

    {

    }

    main()

    {

    int i, x[20], max, index, n=10;

    randomize();

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

    {

    x[i]=rand()%50;

    printf("%4d",x[i]);

    /*输出一个随机数组*/

    }

    printf("\n");

    fun(x,n,&max,&index);

    printf("Max=%5d,Index=%4d\n",max,index);

    }


    正确答案:void fun(int a[]int nint *maxint *d) { int i; *max=a[0]; *d=0; for(i=0;in;i++) /*将最大的元素放入指针max所指的单元最大元素的下标放入指针d所指的单元*/ if(*maxa[i]) {*max=a[i];*d=i;} }
    void fun(int a[],int n,int *max,int *d) { int i; *max=a[0]; *d=0; for(i=0;in;i++) /*将最大的元素放入指针max所指的单元,最大元素的下标放入指针d所指的单元*/ if(*maxa[i]) {*max=a[i];*d=i;} } 解析:该程序直接使用形参max和d,由于它们都是指针变量,所以要引用它所指向的变量时要对它进行指针运算,也即*号运算。

  • 第7题:

    以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。

    #include

    #define N 10

    void fun(int x[N])

    { int i=0;

    while(i<>

    }

    在程序中下划线处应填入的是

    A.x+i

    B.&x[i+1]

    C.x+(i++)

    D.&x[++i]


    正确答案:C

  • 第8题:

    函数fun()的功能是:逆置数组元素中的值,形参m给出数组中数据的个数。

    例如,若x所指数组中的数据依次为:9、8、7、6、5,则逆置后依次为:5、6、7、8、9。

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

    请勿改动函数main()与其他函数中的任何内容,仅在fun()函数的横线上填写所需的若干表达式或语句。

    试题程序:


    正确答案:

    【1】m/2【2】i【3】a[m-1-i]
    【解析】该题中函数功能是逆置数组元素的值。此类题的解题思路,是在简单的两个数值交换的基础上,增加对数值定位的功能,也就是确定要交换的数值在数组中的位置。
    第一空:对数组中的元素进行逆置,根据上面的分析,整个数组中元素交换的循环次数,应该是只需要交换整个数组长度的一半的次数,所以,第一空应填:“m/2”。
    第二空:元素逆置,就是第一个和最后一个交换,依次类推。个数为m的数组中,与第i个元素相对应需要交换的元素是第m-1-i个元素,所以第二空填:“i”。
    第三空:根据两个元素交换的算法,第i个和第m-i-1个元素交换的过程,应填:“a[m-1-i]”。

  • 第9题:

    给定程序中,函数fun的功能是:调用随机函数产生20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置O)。

    请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。

    注意:部分源程序在文件BLANKl.C中。

    不得增行或删行,也不得更改程序的结构!

    试题程序:


    正确答案:
    (1)N或20(2)break(3)n【解题思路】填空l:变量n用于存储数组的下标,要通过while语句对数组进行赋值,数组的容量为20,因此循环条件应为n<20。填空2:通过一个for循环判断X是否与数组中已存的元素重复,若重复则跳出for循环结束。填空3:若for循环是由break语句结束的,则X与数组中的元素重复,此时i必然小于n;若for循环是因为循环变量i递增到某值,而不再满足循环条件结束的,说明X的值与数组中的元素不重复,则此时i的值等于n。

  • 第10题:

    voidprint(inta[],intlen)是打印数组所有元素功能的函数头,则其参数是()。

    • A、数组
    • B、指针
    • C、普通整型变量
    • D、字符串

    正确答案:A

  • 第11题:

    单选题
    以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。#include #define N 10void fun(int x[N]){ int i=0; while(i
    A

    x+i

    B

    &x[i+1]

    C

    x+(i++)

    D

    &x[++i]


    正确答案: A
    解析:
    划线处需要完成两个功能:①给x[i]元素赋值;②i变量加一。A项错误,仅能对x[0]赋值,且会是程序陷入死循环;B项错误,仅能对x[1]赋值,程序陷入死循环;D项错误,不能实现为x[0]赋值,而且还会导致数组越界。答案选择C选项。

  • 第12题:

    单选题
    voidprint(inta[],intlen)是打印数组所有元素功能的函数头,则其参数是()。
    A

    数组

    B

    指针

    C

    普通整型变量

    D

    字符串


    正确答案: A
    解析: 暂无解析

  • 第13题:

    在主函数中,从键盘输入若干个数放入数组x中,用0结束输入但不计入数组。下列给定程序中,函数fun()的功能是:输出数组元素中小于平均值的元素。请补充函数fun()。

    例如:数组中元素的值依次为1,2,2,12,5,15,则程序的运行结果为1,2,2,5。

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

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

    试题程序:

    include<conio.h>

    include<stdio.h>

    void fun( 【 】,int n)

    {

    double sum=0.0;

    double average=0.0;

    int i=0;

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

    【 】;

    average= 【 】;

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

    if(x[i]<average)

    {

    if(i%5==0)

    printf("\n");

    printf("%d/",x[i]);

    }

    }

    main()

    {

    int x[1000];

    int i=0;

    clrscr();

    printf("\nPlease enter some data(end with 0):");

    do

    {

    scanf("%d",&x[i]);

    }

    while(x[i++]!=0);

    fun(x,i-1);

    }


    正确答案:int x[] sum+=x[i] sum/n
    int x[] sum+=x[i] sum/n 解析:第一空:由主函数main()调用fun()函数的格式,可知,函数fun()的第—个参数为整型数组。第二空:为了求出平均值,首先要对数组中的元素求累加和。第三空:数组中元素的累加和除以元素个数,得到所有元素的平均值。

  • 第14题:

    fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下划线处应填写的是( )。 #include<stdio.h> #define N 5 void fun(int x[N]) { int m; for(m=N-t;m>=O;m-)scanf("%d",____); }

    A.%&X[++m]

    B.&x[m+1]

    C.x+(m++)

    D.x+m


    正确答案:D
    D【知识点】宏定义与数组地址的考察【解析】数组名本身就是地址,所以不需要在用&符号。C选项不能对所有元素赋值而是反复再给一个数值赋值且是死循环。

  • 第15题:

    以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。 #define N 10 void arrin(intx[N]) { int i=0; while(i<N) seanf("%d",______); } 在下划线处应填入的是

    A.x+i

    B.&x[i+1]

    C.x+(i++)

    D.&x[++i]


    正确答案:C
    解析:在scanf()函数中有两个参数,其中第一个参数为输入格式字符串,第二个参数是地址字符串。根据scant()的定义,故应该在空白处填入一地址,又由题意要给数组的每个成员赋值,i表示数组的下标,那么i必须每循环一次加1,即指向下一个数组元素,当i=7时循环体执行了7次,数组的每个成员都被赋值了,退出循环。

  • 第16题:

    fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下划线处应填写的是

    #include <stdio.h>

    #define N 5

    void fun(int x[N])

    { int m;

    for(m=N-1;m>=0; m--) scanf(”%d”,__________);

    }

    A)&x[++m]

    B) &X[m+1]

    C)x+(m++)

    D) x+m


    正确答案:D
    【答案】D
    【知识点】宏定义与数组地址的考察
    【解析】数组名本身就是地址,所以不需要在用&符号。C选项不能对所有元素赋值而是反复再给一个数值赋值且是死循环。

  • 第17题:

    以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。

    #include<stdio.h>

    #define N 10

    void fun(int x[N])

    {int i=0;

    while(i<N)scanf(“%d”,_______);

    }

    在程序中下划线处应填入的是

    A.x+i

    B.&x[i+1]

    C.x+(i++)

    D.&x[++i]


    正确答案:C

  • 第18题:

    函数fun的功能是在a所指的具有n个元素的数组中查找最大值并返回给调用函数,函数不完整。

    在if语句下划线处应填人的选项是( )。

    A.O>s

    B.* P>*s

    C.a[p]>a[s]

    D.p—a>P—s


    正确答案:B
    函数fun的功能是在形参a所指的具有n个元素的数组中查找最大值并返回。通过for循环比较,s始终指向最大值的那个元素。取指针的值,使用+P,因此比较使用·P和}8,需要找到最大值,当}8<+P时,修改指针s的指向,因此答案为B选项。

  • 第19题:

    程序定义了NxN的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返给主函数中的s。

    例如:a数组中的值为:

    则返回主程序后s的值应为:3.375。

    注意:部分源程序存在文件PROGl.C文件中。

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


    正确答案:
    解析:该程序功能是求出数组周边元素的平均值。其中周边元素是指第一行的元素的行下标为0,或者第n行的元素行下标为n-1,或者第一列元素的元素列下标为0,或者第n列的元素的列下标为n-1。

  • 第20题:

    下列给定程序中,函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a [0][2] .....中,把偶数从数组中删除,奇数个数通过函数值返回。 例如:若a所指数组中的数据最初排列为:9、1、4,2、3、6、5、8、7,删除偶数后a所指数组中的数据为:9、1、 3、5、7,返回值为5。 请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序在文件BLANKl.C中。 不得增行或删行,也不得更改程序的结构!


    正确答案:
    【考点分析】
    本题考查:if语句条件表达式;自增/自减运算符;函数返回值。
    【解题思路】
    填空1:根据题目要求,需要进行奇偶数的判定,可以通过if条件语句来判断数组元素是否是奇数,如果元素不能被2整除,则为奇数,所以填人if(a[i]%2==1)。
    填空2:将为奇数的元素重新存放到数组的前面,同时下标增1。
    填空3:函数返回值需要返回数组中奇数的个数,因此返回变量j。
    【解题宝典】
    奇数和偶数的判定方法,通过if条件语句完成,对2求余运算,结果为0是偶数,结果为1是奇数。
    自增1、自减1运算符:自增l运算符记为”++”,其功能是使变量的值自增l。自减1运算符记为”一一”,其功能是使变量值自减1。自增1、自减1运算符均为单目运算,都具有右结合性。有以下几种形式:

  • 第21题:

    请在下列程序的横线处填写正确的语句。include using namespace std; class Base{ publ

    请在下列程序的横线处填写正确的语句。

    include<iostream>

    using namespace std;

    class Base{

    public:

    void fun(){cout<<"Base fun"<<endl;}

    };

    class Derivde:public Base{

    public:

    void fun(){

    ______∥ 调用基类的函数


    正确答案:Base∷fun()
    Base∷fun() 解析: 此题考查的是派生类对基类成员的访问。本题中派生类Derived覆盖了基类Base中的fun(),如果需要调用基类中的fun(),则需要使用域运算符“∷”。故应填写Base∷fun()。

  • 第22题:

    设有两个整型数组a和b,可以通过a=b,将数组b整体赋值给数组a。


    正确答案:错误

  • 第23题:

    问答题
    下列给定程序中,函数fun的功能是:把形参a所指数组中的偶数按原顺序依次存放到a[0]、a[1]、a[2]…中,把奇数从数组中删除,偶数的个数通过函数值返回。  例如,若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除奇数后,a所指数组中的数据为:4、2、6、8,返回值为4。  请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。  注意:部分源程序给出如下。  不得增行或删行,也不得更改程序的结构!  试题程序:#include #define N 9int fun(int a[],int n){ int i,j; j=0; for(i=0;i

    正确答案:

    ①a[i]%2
    ②a[j]
    ③j
    解析:

      填空1:if语句条件表达式,判断数组元素是否为偶数,对2求余,结果为0,则为偶数;结果为1,则为奇数。
      填空2:将为偶数的数组元素按原顺序保存至数组a中,对应的保存下标为j。
      填空3:最后按要求将偶数个数通过return语句返回给main函数。