niusouti.com

下面程序的功能是:从输入的正整数中选3个数进行输出,要求这些数都是2的倍数,请填空。

题目

下面程序的功能是:从输入的正整数中选3个数进行输出,要求这些数都是2的倍数,请填空。


相似考题
更多“ 下面程序的功能是:从输入的正整数中选3个数进行输出,要求这些数都是2的倍数,请填空。 ”相关问题
  • 第1题:

    下列程序的功能是输出如下数列的前20项,按每行5个数的形式输出。

    1,1,2,3,5,8,13,…

    程序代码如下,请填空。

    A=1

    B=1

    I=3

    ?A,B

    DO WHILE( _______ )

    C=A+B

    T=B

    B=A+B

    _______

    ?? C

    If _______ Then

    ?

    EndIf

    I=I+1

    ENDDO


    正确答案:I=20 I=20 I%5=0
    I=20 I=20 I%5=0 解析:通过分析可知,该数列从第3项开始,每一项的值是前面两项的值的和。一共要求前面的20项,因此可通过一个循环来实现,由于只求前20项,故循环条件应是I(项数)的值小于等于20。在循环中应求出第1项(C=A+B),并为求I+1项作好准备,即要让刚才的B成为下一个A,刚才的C成为下一个B,故[10]处应填“A=T”。“??”命令在输出数据的时候不换行,为了在每输出5个数据后分行,可根据项数I的值来进行控制,当I的值能够被5整除时,换到下一行进行输出,换到下一行用命令“?”来实现,故(11)处应填“I%5=0”。

  • 第2题:

    有四个不同的正整数,其中任意两个数之和是2的倍数,任意三个数的和是3的倍数,满足条件的最小的四个正整数之和是:

    A.51

    B.38

    C.40

    D.42


    正确答案:C
    首先这4个数必须同奇偶,其次这4个数必须对于3同余则4个数必须对6同余;又要最小则4个数中最小的是1,所以1、7、13、19是满足条件的最小的四个正整数,和为40。

  • 第3题:

    下面程序的功能是:从输入的正整数中选3个数进行输出,要求这些数都是2的倍数,请填空。

    main()

    { int a,i=0;

    scanf("%d",&A);

    do

    { if(a>0&&a%2==0)

    {printf("%d\n",A);i++;}

    if(i!=3)

    { scanf("%d",&A);}

    }while(( ));

    }


    正确答案:i3
    i3

  • 第4题:

    阅读下面的程序: n1=InputBox(“请输入第一个数:”) n2=InputBox(“请输入第二个数:”) Print n1+n2 当输入的数分别为111和222时,程序输出______。

    A.111222

    B.222

    C.333

    D.程序出错


    正确答案:A
    解析:由于InputBox函数的默认返回值是字符串,因此n1和n2的值分别为111和222,那么n1+n2就将两个字符串连接为111222。

  • 第5题:

    阅读下面的程序,当输入分别为111和222时,程序输出为 ______。 n1=InputBox(”请输入第一个数:”) n2=Val(1nputBox("请输入第二个数:")) Print n1+n2

    A.111222

    B.222

    C.333

    D.程序出错


    正确答案:C
    解析:由于InputBox函数的默认返回值是字符串,因此n1的值为111,n2经过函数Val转换后成为数值型,其值为222。按照Visual Basic自动结合的原则,n1会先自动转换为数值型再和n2进行运算,最终输出结果为333。
      为了提高程序的可读性,最好对每一个变量都进行定义。故在程序的最前面加上:
      Dim n1 As Integer
      Dim n2 As Integer

  • 第6题:

    程序Cmody051.c,其功能是统计输入字符串中大写英文字母的个数。请改正错程序中的错误。如输入:abcDEFGH123输出:5


    /**/charstr1[128];/**/
    /**/sum++;/**/

  • 第7题:

    已知在in.dat中存有若干个(个数<200)四位十进制数字组成的正整数,函数ReadDat读取这若干个正整数并存入数组 xx中。请编制函数CalValue,其功能要求:1.求出该文件中共有多少个正整数totNum;2.求这些正整数右移1位二进制位后,产生的新数是偶数的数的个数totCnt,以及满足此条件的这些正整数(右移前的值)的算术平均值totPjz。最后main函数调用函数WriteDat把所求的结果输出到out.dat文件中。 注意:部分源程序存放在test.c文件中。 请勿改动数据文件in.dat中的任何数据,主函数main、读函数ReadDat和输出函数WriteDat的内容。


    正确答案:
    【审题关键句】读取正数,统计个数,右移后为偶数的个数及平均值。
    【解题思路】
    ①定义整型变量i、j和长整型he,并把其初始值设置为0。
    ②用for循环语句对数组xx进行扫描,如果当前数组元素xx[i]非零,则全局变量totNum加1。
    ③在for循环语句中,循环变量i从0开始递增到totNum.1,对数组xX中的每个元素xx[i]右移一位,把这个值赋给整型变量j,再对j的值对2求余数,如果余数等于0,则变量totCnt加1,并把数组元素xx[i]累加到变量he。
    ④退出循环时,把变量he的数据类型转换成双精度型再除以变量totCnt的值,就得到算术平均值totPjz。
    【参考答案】

  • 第8题:

    在文件in.dat中存有若干个(个数<200)四位数字的正整数,函数ReadDat读取这若干个正整数并存入数组XX中。请编制函数CalValue,其功能要求:1.求出该文件中共有多少个正整数totNum;2.求出这些正整数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的这些正整数的算术平均值totPjz。最后main函数调用函数WriteDat把所求的结果输出到0ut.dat文件中。 注意:部分源程序存放在test.c文件中。 请勿改动数据文件in.dat中的任何数据,主函数main、读函数ReadDat和输出函数WriteDat的内容。


    正确答案:
    【审题关键句】读取正数,统计个数,各位数字之和为偶数的数的个数及平均值。
    【解题思路】 定义整型循环变量i、j,表示各位数字之和的长整型变量he以及存储一个四位数的字符数组num[5]。
    ②循环变量i从0开始,依次递增到4,对字符数组num[5]的每个元素赋初值0。
    ③循环变量i从0开始,依次递增到MAXNUM.1,对每个数组元素xx[i]进行判断,如果xx[i]的值非零,则变量totNum加1,退出循环时,totNm的值就是文件in.dat中存有的四位正整数的个数。
    ④循环变量i从0开始,依次递增到totNum-1,对于每个数组元素xx[i]调用库函数sprintf以4个字符宽度形式输出到字符数组num中,用字符数组num中的每个元素减去0的ASCII码48,就分别得到XX[i]这个四位数每位上的数字,并把这四个数字相加赋给变量j。再对变量j对2求余数进行判断其值是否等于0,如果等于0,则说明j是偶数,变量totCnt加1,并把xx[i]的值累加到变量he。
    ⑤退出循环后,把变量he的类型转换成双精度型再除以totCnt得到符合条件的数的算术平均值totPjz。
    【参考答案】

  • 第9题:

    执行以下程序段,如果在对话框中输入8,输出结果是"Hello"的是______。

    A.n = InputBox("请输入一个数") Select Case n Case 7 To 1 Print "Hello" End Select

    B.n = InputBox("请输入一个数") Select Case n Case Is>1, Is < 6 Print "Hello" End Select

    C.n = InputBox("请输入一个数") Select Case n Case Is > 5, 1, 3 To 10 Print "Hello" End Select

    D.n=InputBox("请输入一个数") Select Case n Case 1, 5, Is > 9 Print "Hello" End Select


    正确答案:C

  • 第10题:

    下面程序的功能是:输出100以内能被3整除且个位数为9的所有整数,请填空。


    正确答案:

  • 第11题:

    (7)在窗体上画1个名称为Command 1的命令按钮,然后编写如下程序:

    Private Sub Command 1 Click()

    Dim m As Integer, x As Integer

    Dim flag As Boolean

    flag=False

    n=Val(InputBox("请输入任意1个正整数"))

    Do While Not flag

    a=2

    flag=【7】

    Do While flag And a <= Int(Sqr(n))

    If n/a=n\a Then

    flag=False

    Else

    【8】

    End If

    Loop

    If Not flag Then n=n+l

    Loop

    Print【9】

    End Sub

    上述程序的功能是,当在键盘输入任意的1个正整数时,将输出不小于该整数的最小素数。请填空完善程序。


    正确答案:
    (7)True
    (8)a=a+1
    (9)n

  • 第12题:

    问答题
    从键盘输入若干个数,当输入0时结束输入,求这些数的和以及平均值。 提示:设输入的数存放在x中,sum表示和,n表示读入数的个数,则求若干个数的和,就是对x进行累加,即sum=sum+x,其中sum的初值为0。如果读入个数n大于0,则输出sum、sum/n。 要求:采用while与if结构语句实现。

    正确答案: 程序:
    sum=0; n=0;
    x=input('Enter a number (end in 0):');
    while x~=0
    sum=sum+x;
    n=n+1;
    x=input('Enter a number (end in 0):');
    end
    if n>0
    sum
    mean=sum/n
    end
    解析: 暂无解析

  • 第13题:

    下面程序的功能是输出数组s中最小元素,请填空。 include void main(){int k, p, s[]=

    下面程序的功能是输出数组s中最小元素,请填空。

    include<iostream.h>

    void main(){

    int k, p, s[]={1,-9,7,2,-10,3};

    k=s[0];

    for(p=0;p<6;p++)

    if(s[p]<k) 【 】;

    cout<<k;

    }


    正确答案:k=s[p]
    k=s[p]

  • 第14题:

    阅读下面程序:

    Private Function a(load As Integer) As Single

    If load <20 then

    money = load/2

    else

    money =20 + load

    end if

    a = money

    End Function

    Private Sub Form_Click( )

    Dim load As Integer, fee As Single

    Load = InputBox("请输入一个数:")

    fee= a(loa@D@Print fee

    End Sub

    输入20,运行后的输出结果是【 】。


    正确答案:40
    40 解析:本题调用通用函数过程,进行虚实结合后load的值为20。执行a函数时,首先判断 load20条件为假,执行money=20+load,使money的值为40。接着执行a=money语句,使函数名的值为40,执行到语句End Function则返回调用它的事件过程,将函数值赋给变量fee。最后输出变量fee的值,其值为40。

  • 第15题:

    某人编写了下面的程序

    Private Sub Commandl_click()

    Dim a As Integer,b As Integer

    a=InputBox(“请输入整数”)

    b=InputBox(“请输入整数”)

    pro a

    pro b

    Callpro(a+B)

    End Sub

    Private Sub pro(n As Integer)

    While(n>0)

    Print n Mod 10;

    n=n\10

    Wend

    Print

    End Sub

    此程序功能是:输入2个正整数,反序输出这2个数的每一位数字,再反序输出这2个数之和的每一位数字。例如:若输入123和234,则应该输出:

    3 2 1

    4 3 2

    7 5 3

    但调试时发现只输出了前2行(即2个数的反序),而未输出第3行(即2个数之和的反序),程序需要修改。下面的修改方案中正确的是

    A.把过程pro的形式参数n As Integer改为ByVal n As Integer

    B.把Call pro(a+B)改为pro a+b

    C.把rl=n\10改为11=n/10

    D.在pro b语句之后增加语句c%=a+b,再把Call pro(a+B)改为pro c


    正确答案:D
    解析:题中定义函数proc的参数为n,因此在调用时也必须是一个变量,而不能自变量进行运算。

  • 第16题:

    下面的程序执行时,可以从键盘输入一个正整数,然后把该数的每位数字按逆序输出。例如:输入7685,则输出5 8 6 7;输人1000,则输出0 0 0 1。请填空。 Private Sub Command1_Click Dim x As Integer X=InputBox(“请输入一个正整数”) While x> 【11】 Print x Mod 10; x=x\10 Wend Print 【12】 End Sub


    正确答案:
    void Base::fun ; virtual display==0;

  • 第17题:

    在文件in.dat中已存有200个正整数,且每个数均在1 000至9999之间。函数readDat是读取这200个数存放到数组aa中。请编制函数jsSort,其函数的功能是:要求按每个数的后三位的大小进行降序排列,如果出现后三位相等的数值,则对这些数值按原始4位数据进行升序排列,将排序后的前10个数存入数组bb中。 最后调用函数writeDat把结果bb输出到文件out.dat中。


    正确答案:
    【审题关键句】按每个数的后三位降序排列,然后取出满足此条件的前10个数依次存入数组;如果后三位的数值相等,则按原先的数值进行升序排列。
    【解题思路】本题类似第7套试题,通过审题可以发现主要有两个不同点:①按每个数的后三位降序排列,参考答案的第5条语句,修改两数组元素的大小比较符即可;②后三位的数值相等则按原先的数值进行升序排列,参考答案的第13条语句,同样也是修改两数组元素的大小比较符即可。
    【参考答案】


  • 第18题:

    程序Cmody031.c的功能是:从键盘上输入两个整数,及一个运算符(+、-、*、/或%),进行相应的运算后输出运算的结果。请改正错程序中的错误。如输入:1+2将输出:1+2=3


    /**/if(m%i==0)/**/
    /**/if(i>k)/**/或/**/if(i==k+1)/**/

  • 第19题:

    下面程序的功能是将从键盘输入的两个数由小到大排序输出,当输入一对相等数时结束循环。请选择填空。 #include <stdio.h> main() { int a,b,t; scanf("%d%d",&a,&b); while(______) } if(a>b) {t=a;a=b;b=t;} printf("%d,%d\n",a,b); scanf("%d%d",&a,&b); } }

    A.! a=b

    B.a! =b

    C.a= =b

    D.a=b


    正确答案:B
    解析:根据本题提出的条件可知,控制循环的表达式应该是所输入的两数互不相等(相等时结束循环),也即只有满足这一条件时,才对两数进行排序输出操作,由此得出循环的控制表达式应该为a!=b。

  • 第20题:

    给定程序MODll.C中函数fun的功能是:求三个数的最小公倍数。

    例如,给主函数中的变量x1、x2、x3分别输入15 112,则输出结果应当是:330。

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

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


    正确答案:(1)int fun(int x int y int z)(2)return j;
    (1)int fun(int x, int y, int z)(2)return j; 解析:本题中函数的功能是求三个数的最小公倍数。fun函数辛接收的值能同时被x、y、z除尽的最小数就是它们的最小公倍数。

  • 第21题:

    在文件IN6.DAT中有200个正整数,且每个数均在1000至9999之间。函数readDat()的功能是读取这200个数存放到数组aa中。请编制函数jsSort(),该函数的功能是:要求按每个数的后3位的大小进行降序排列,将排序后的前10个数存入数组b中,如果数组b中出现后3位相等的数,则对这些数按原始4位数据进行升序排列。最后调用函数writeDat()把结果bb输出到文件OUT6.DAT中。

    例如:处理前 9012 5099 6012 7025 8088

    处理后 5099 8088 7025 6012 9012

    注意:部分源程序已给出。

    请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。


    #include
    #include
    #include
    int aa[200], bb[10] ;
    void readDat();
    void writeDat();
    void jsSort()
    {
    int i,j; /*定义循环控制变量*/
    int temp; /*定义数据交换时的暂存变量*/
    for(i=0;i<199;i++) /*用选择法对数组进行排序*/
    for(j=i+1;j<200;j++)
    {
    if(aa[i]%1000
    {
    temp=aa[i];
    aa[i]=aa[j];
    aa[j]=temp;
    }
    else if(aa[i]%1000==aa[j]%1000) /*如果后3位数相等*/
    if(aa[i]>aa[j]) /*则要按原4位数的值进行升序排序*/
    {
    temp=aa[i];
    aa[i]=aa[j];
    aa[j]=temp;
    }
    }
    for(i=0;i<10;i++) /*将排序后的前10个数存入数组b中*/
    bb[i]=aa[i];
    }
    void main()
    {
    readDat() ;
    jsSort() ;
    writeDat() ;
    }
    void readDat()
    {
    FILE *in ;
    int i ;
    in = fopen("IN6.DAT", "r") ;
    for(i = 0 ; i < 200 ; i++) fscanf(in, "%d,", &aa[i]);
    fclose(in) ;
    }
    void writeDat()
    {
    FILE *out ;
    int i ;
    out = fopen("OUT6.DAT", "w") ;
    system("CLS");
    for (i = 0 ; i < 10 ; i++)
    {
    printf("i=%d,%d\n", i + 1, bb[i]) ;
    fprintf(out, "%d\n", bb[i]) ;
    }
    fclose(out) ;
    }

  • 第22题:

    以下程序统计从终端输入的字符中大写字母的个数。用号作为输入结束标志,请填空。


    正确答案:

  • 第23题:

    每一个确定的正整数a,都有一个确定的后继数a’,a’也是正整数(一个数的后继数就是紧接在这个数后面的数,例如,1的后继数是2,2的后继数是3等等).那么1()任何正整数的后继数。


    正确答案:不是