niusouti.com

14、从键盘上输入若干个正整数,求出所有输入正整数之和,并输出所有的正整数。要求,当输入整数小于等于0时,结束该操作。 Step1:输入第一个整数n; Step2:对求和变量sum赋初值0; Step3:判断n<=0是否成立,若成立,则执行________,否则执行_______和______; 选择正确的步骤,填入空白处,顺序正确的是: ①求解输入正整数的累加和,并输出该正整数n的值; ②输入下一个正整数n,转去执行step3; ③输出sum的值;A.②①③B.①②③C.③①②D.①③②

题目

14、从键盘上输入若干个正整数,求出所有输入正整数之和,并输出所有的正整数。要求,当输入整数小于等于0时,结束该操作。 Step1:输入第一个整数n; Step2:对求和变量sum赋初值0; Step3:判断n<=0是否成立,若成立,则执行________,否则执行_______和______; 选择正确的步骤,填入空白处,顺序正确的是: ①求解输入正整数的累加和,并输出该正整数n的值; ②输入下一个正整数n,转去执行step3; ③输出sum的值;

A.②①③

B.①②③

C.③①②

D.①③②


相似考题
更多“14、从键盘上输入若干个正整数,求出所有输入正整数之和,并输出所有的正整数。要求,当输入整数小于等于0时,结束该操作。 Step1:输入第一个整数n; Step2:对求和变量sum赋初值0; Step3:判断n<=0是否成立,若成立,则执行________,否则执行_______和______; 选择正确的步骤,填入空白处,顺序正确的是: ①求解输入正整数的累加和,并输出该正整数n的值; ②输入下一个正整数n,转去执行step3; ③输出sum的值;”相关问题
  • 第1题:

    下面的程序执行时,可以从键盘输入一个正整数,然后把该数的每位数字按逆序输出。例如:输入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;

  • 第2题:

    写一个函数将输入的任意正整数转换为它所对应的二进制编码并输出。


    正确答案:
     

  • 第3题:

    阅读以下说明和C语言函数,将解答填入对应栏内。

    【说明】

    下面待修改的C程序完成的功能是:对于给定的一个长正整数,从其个位数开始,每隔一位取一个数字(即取其个位、百位、万位等数字),形成一个新的整数并输出。例如,将该程序修改正确后,运行时若输入“14251382”,则输出的整数为“4532”。

    下面给出的C程序代码中有五个错误,请指出所有的错误。

    【C程序代码】

    01 include <stdio.h>

    02

    03 int main()

    04 {

    05 long n, num;

    06 int i;

    07

    08 do {

    09 printf("请输入一个正整数:");

    10 scanf("%ld", n);

    11 }while(n <= 0);

    12 k = 1;

    13 for (i = 1; n >= 0; i++) {

    14 if (i % 2 = 1) {

    15 num= num+ (n % 10) * k;

    16 k = k * 10;

    17 }

    18 n = n / 10;

    19 }

    20 printf("新数据为: %d \n",num);

    21 return 0;

    22 }


    正确答案:错误1:变量k没有声明(或定义)。 错误2:变量num没有初始化或者num应初始化为0。 错误3:第10行scanf函数参数错或者“scanf("%1d"n);”中的n应该为“&n”;或者n之前应加取地址符号。 错误4:第13行循环条件错或改为“n>0”。 错误5:第14行if语句条件错将“=”改为“==”;或者将“1%2=1”改为“i% 2==1 ”
    错误1:变量k没有声明(或定义)。 错误2:变量num没有初始化,或者num应初始化为0。 错误3:第10行scanf函数参数错,或者“scanf("%1d",n);”中的n应该为“&n”;或者n之前应加取地址符号。 错误4:第13行循环条件错,或改为“n>0”。 错误5:第14行if语句条件错,将“=”改为“==”;或者将“1%2=1”改为“i% 2==1 ” 解析:本题考查程序检错和排错能力。
    程序错误一般分成语法错误和语义错误两种类型,其中语法错误是形式上的错误,语义错误是含义上的错误,编译程序能够发现程序中的所有语法错误。
    语义错误又可分为静态语义错误和动态语义错误,静态语义错误编译时检查,而动态语义错误在程序运行时表现。
    C程序中,常见的错误有:使用的变量没有定义、变量没有赋值初就直接使用、输入输出的数据类型与所用格式说明符不一致、超出数据范围、输入时数据的组织方式与要求不符、误把“=”作为关系运算符“等于”、语句的分号缺少或放置错误、缺少“{}”、符号引用错误,“(、)、[、]”括号不配对、引用数组元素超界等。
    在本题的程序中,使用变量num的语句为“num=num+(n%10)*k;”。由于变量 num没有赋初值,该语句运行的结果导致num的值是不确定的。
    在本题给出的程序中,出现了如下错误。
    (1)使用的变量k没有定义(语法错误,编译程序报告:k是未定义的标识符)。
    (2)变量num没有赋初始值就直接使用(动态语义错误),应将其初始值设为0。由于num是局部变量,使用变量num的语句为“num=num+(n%10)*k”,系统不保证对其进行初始化,导致程序的运行结果不确定。
    (3)第14行,误把“=”作为关系运算符“等于”(语法错误),
    (4)第10行,输入变量时忘记使用地址符号(动态语义错误),运行时变量n不能正确接收输入的数据。
    (5)第13行,循环条件错误,导致无穷循环。
    考生应多上机调试程序,这样就可以熟悉常见的程序错误,从而提高编程水平和效率。

  • 第4题:

    (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

  • 第5题:

    通过键盘输入一个高精度的正整数n(n的有效位数≤240),去掉其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整数。编程对给定的n和s,寻找一种方案,使得剩下的数字组成的新数最小。 【样例输入】 178543 S=4 【样例输出】 13


    正确答案: 为了尽可能地逼近目标,我们选取的贪心策略为:每一步总是选择一个使剩下的数最小的数字删去,即按高位到低位的顺序搜索,若各位数字递增,则删除最后一个数字,否则删除第一个递减区间的首字符。然后回到串首,按上述规则再删除下一个数字。重复以上过程s次,剩下的数字串便是问题的解了。
    具体算法如下:
    输入s,n;
    while(s>0)
    {i=1; //从串首开始找
    while(i
    {i++;}
    delete(n,i,1); //删除字符串n的第i个字符
    s--;
    }
    while(length(n)>1)&&(n[1]=‘0’)
    delete(n,1,1); //删去串首可能产生的无用零
    输出n;

  • 第6题:

    群G中,对于任意a∈G,存在n,n为正整数使得an=e成立的最小的正整数称为a的什么?()

    • A、阶
    • B、幂
    • C、域
    • D、根

    正确答案:A

  • 第7题:

    编一个程序,输入一个正整数n,把它转换为二进制数,并输出。提示:应该利用数组。


    正确答案: int[]a=newint[80];
    inti,j,n=0;
    while(n<=0)
    {
    Console.WriteLine("请输入一个正整数:");
    n=int.Parse(Console.ReadLine());
    }
    i=0;
    Console.Write("/n正整数{0}转换为二进制数:",n);
    while(n>0)
    {
    a[++i]=n%2;
    n=n/2;
    }
    for(j=i;j>0;j--)Console.Write(a[j]);
    Console.WriteLine();

  • 第8题:

    单选题
    将一个正整数n表示成一系列正整数之和,n=n1+n2+…+nk(其中,n1≥n2≥…≥nk≥1,k≥1)正整数n的一个这种表示称为正整数n的一个划分。正整数n的不同的划分个数总和称为正整数n的划分数,记作p(n);另外,在正整数n的所有不同划分中,将最大加数n1不大于m的划分个数记作q(n,m)。则当n=10时,p(n)=()。
    A

    q(8,8)

    B

    1+q(9,9)

    C

    2+q(10,8)

    D

    ABC都正确


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

  • 第9题:

    问答题
    从键盘输入若干个数,当输入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
    解析: 暂无解析

  • 第10题:

    单选题
    群G中,对于任意a∈G,存在n,n为正整数使得an=e成立的最小的正整数称为a的什么?()
    A

    B

    C

    D


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

  • 第11题:

    单选题
    一个求从1到正整数n之间所有正整数之和的单循环语句的时间复杂度为()。
    A

    O(1)

    B

    O(n)

    C

    O(n2

    D

    O(n3


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

  • 第12题:

    单选题
    算法可以有0~n(设n、m为正整数)个输入,有()个输出。
    A

    0~m

    B

    0

    C

    1~m

    D

    1


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

  • 第13题:

    有以下程序:includemain(){int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s

    有以下程序: #include <stdio.h> main() { int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s); } 程序执行后的输出结果是( )。

    A.正整数1~9的累加和

    B.正整数1~10的累加和

    C.正整数1~9中奇数之和

    D.正整数1~10中偶数之和


    正确答案:D
    解析:通过for(i=1;i10;i+=2)可知,i取值为1~10的奇数,即1,3,5,7,9,i+1即为2,4,6,8,10。因此,程序的功能是计算并输出1~10中的偶数之和,s+=i+1就是累加这些偶数。

  • 第14题:

    阅读以下说明和流程图,回答问题1-2,将解答填入对应的解答栏内。

    [说明]

    下面的流程图采用欧几里得算法,实现了计算两正整数最大公约数的功能。给定正整数m和 n,假定m大于等于n,算法的主要步骤为:

    (1)以n除m并令r为所得的余数;

    (2)若r等于0,算法结束;n即为所求;

    (3)将n和r分别赋给m和n,返回步骤(1)。

    [流程图]

    [问题1] 将流程图中的(1)~(4)处补充完整。

    [问题2] 若输入的m和n分别为27和21,则A中循环体被执行的次数是(5)。


    正确答案:[问题1] (1) n>m或nm或其它等效形式 (2) m←t (3) n←r (4) m%n [问题2] (5) 1
    [问题1] (1) n>m或nm或其它等效形式 (2) m←t (3) n←r (4) m%n [问题2] (5) 1 解析:(1)~(2)当n的值大于(等于)m时,应交换两者的值,再使用欧几里得算法;
    (3)~(4)略;
    (5)m,n和r在执行循环A前后的值分别为:

  • 第15题:

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


    正确答案:

  • 第16题:

    设{an}为数列,对于“存在正数肘,对任意正整数n,有
    的否定(即数列{an}无界)是( )。

    A、存在正数M,存在正整数n,使得|an|>M
    B、对任意正数M,存在正整数n,使得|an|>M
    C、存在正数M,对任意正整数n,有|an|>M
    D、对任意正数M以及任意正整数n,有|an|>M

    答案:B
    解析:
    对任意正数M,存在正整数n,使得

    则称数列{an}无界.

  • 第17题:

    在域F中,e是单位元,存在n,n为正整数使得ne=0成立的正整数n是什么?()

    • A、合数
    • B、素数
    • C、奇数
    • D、偶数

    正确答案:B

  • 第18题:

    算法可以有0~n(设n、m为正整数)个输入,有()个输出。

    • A、0~m
    • B、0
    • C、1~m
    • D、1

    正确答案:C

  • 第19题:

    编一个程序,输入一个正整数,判断它是否为素数。如不是,则输出其所有正约数。


    正确答案: Console.WriteLine("请输入一个正整数:");
    uinti,n,flag;
    boolf=true;
    n=uint.Parse(Console.ReadLine());
    //uint.TryParse(Console.ReadLine(),outn);
    for(i=2;i{
    if(n%i==0){f=false;break;}
    }
    if(f)Console.WriteLine("{0}是一个素数。",n);
    else
    {
    Console.Write("{0}不是一个素数。/n{1}=",n,n);
    i=2;
    flag=0;
    while(i<=n)
    {
    while(n%i==0)
    {
    n=n/i;
    if(flag!=0)Console.Write(’*’);
    flag=1;
    Console.Write("{0}",i);
    }
    i++;
    }
    }

  • 第20题:

    问答题
    编一个程序,输入一个正整数n,把它转换为二进制数,并输出。提示:应该利用数组。

    正确答案: int[]a=newint[80];
    inti,j,n=0;
    while(n<=0)
    {
    Console.WriteLine("请输入一个正整数:");
    n=int.Parse(Console.ReadLine());
    }
    i=0;
    Console.Write("/n正整数{0}转换为二进制数:",n);
    while(n>0)
    {
    a[++i]=n%2;
    n=n/2;
    }
    for(j=i;j>0;j--)Console.Write(a[j]);
    Console.WriteLine();
    解析: 暂无解析

  • 第21题:

    问答题
    编一个程序,输入一个正整数,判断它是否为素数。如不是,则输出其所有正约数。

    正确答案: Console.WriteLine("请输入一个正整数:");
    uinti,n,flag;
    boolf=true;
    n=uint.Parse(Console.ReadLine());
    //uint.TryParse(Console.ReadLine(),outn);
    for(i=2;i{
    if(n%i==0){f=false;break;}
    }
    if(f)Console.WriteLine("{0}是一个素数。",n);
    else
    {
    Console.Write("{0}不是一个素数。/n{1}=",n,n);
    i=2;
    flag=0;
    while(i<=n)
    {
    while(n%i==0)
    {
    n=n/i;
    if(flag!=0)Console.Write(’*’);
    flag=1;
    Console.Write("{0}",i);
    }
    i++;
    }
    }
    解析: 暂无解析

  • 第22题:

    问答题
    通过键盘输入一个高精度的正整数n(n的有效位数≤240),去掉其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整数。编程对给定的n和s,寻找一种方案,使得剩下的数字组成的新数最小。 【样例输入】 178543 S=4 【样例输出】 13

    正确答案: 为了尽可能地逼近目标,我们选取的贪心策略为:每一步总是选择一个使剩下的数最小的数字删去,即按高位到低位的顺序搜索,若各位数字递增,则删除最后一个数字,否则删除第一个递减区间的首字符。然后回到串首,按上述规则再删除下一个数字。重复以上过程s次,剩下的数字串便是问题的解了。
    具体算法如下:
    输入s,n;
    while(s>0)
    {i=1; //从串首开始找
    while(i
    {i++;}
    delete(n,i,1); //删除字符串n的第i个字符
    s--;
    }
    while(length(n)>1)&&(n[1]=‘0’)
    delete(n,1,1); //删去串首可能产生的无用零
    输出n;
    解析: 暂无解析

  • 第23题:

    单选题
    窗体上有一个文本框,用于接收正整数。为保证输入数据是合法的(即正整数),可以在该数据输入结束后准备继续其他操作时进行数据的合法性检查。为实现上述目的,应选用的事件是(  )。
    A

    Change

    B

    LostFocus

    C

    Click

    D

    KeyPress


    正确答案: C
    解析:
    Change事件过程和Lost Focus事件过程都可以检查文本框的Text属性值,但后者更有效。LostFocus事件过程通常用来对更新进行确认和有效性检查,也可用于修正或改变在GotFocus事件过程中设立的条件,窗体和多数控件支持这些事件。Change事件在程序运行后,在文本框中每键入一个字符,就会引发一次Change事件。

  • 第24题:

    单选题
    在域F中,e是单位元,存在n,n为正整数使得ne=0成立的正整数n是什么?()
    A

    合数

    B

    素数

    C

    奇数

    D

    偶数


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