若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是A.for(i=1; i<=5; i++ ) { p=1; p*=i; }B.for(i=1,p=1;i<=5;i++) p*=i;C.i=1; p=1; while (i<=5 ) { p*=i; i++; }D.i=1; p=1; do { p*=i; i++; } while (i<=5 );

题目

若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是

A.for(i=1; i<=5; i++ ) { p=1; p*=i; }

B.for(i=1,p=1;i<=5;i++) p*=i;

C.i=1; p=1; while (i<=5 ) { p*=i; i++; }

D.i=1; p=1; do { p*=i; i++; } while (i<=5 );


相似考题
更多“若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是”相关问题
  • 第1题:

    若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是

    A.for(i=1,p=1;i<=5;i++) p*=i;

    B.for(i=1;i<=5;i++){ p=1; p*=i;}

    C.i=1;p=1;while(i<=5){p*=i; i++;}

    D.i=1;p=1;do{p*=i; i++; }while(i<=5);


    正确答案:B
    解析:选项B中for循环了5次,而每次循环的时候,都将p的值重新赋值为1后,再乘以当前数字i,最后的结果为5,显然不是5!的值,同样的分析可知选项A、选项C和选项D计算的都是5!。

  • 第2题:

    若变量已正确定义,有以下程序段 i—o; do printf("%d,",i);while(i++); printf("%d",i) 其输出结果是( )。

    A.0,0

    B.0,1

    C.1,1

    D.程序进入无限循环


    正确答案:B
    本题中,变量i的初始值等于0,执行循环体中的语句后,输出i的值为0。while后面括号中表达式i++的值为0,循环结束。此时变量i自加1,所以再次“1”。

  • 第3题:

    若变量已正确定义,有以下程序段 其输出结果是( )。A.0,1B.0,0 C.1,1

    若变量已正确定义,有以下程序段

    其输出结果是( )。

    A.0,1

    B.0,0

    C.1,1

    D.程序进入无限循环


    正确答案:A
    循环语句中输出o,i为。循环结束,执行循环条件后i为l,输出1,所以选择A)。

  • 第4题:

    要求通过while循环不断读入字符,当读人字母N时结束循环,若变量已正确定义,下列正确的程序段是( )。A.

    B.

    C.

    D.

    A.A

    B.B

    C.C

    D.D


    正确答案:A
    while循环的执行过程如下:①计算while后面圆括号中表达式的值。当值为非0时,执行步骤②。当值为0时,执行步骤④。②执行循环体一次。③转去执行步骤①④退出循环。在选项A中,表达式(ch=get-char())!="N"表示输入的字符不等于N,如果这个条件表达式成立,则执行循环体,打印输出输入的字符。如果这个条件表达式不成立,即输入的字符等于N,则退出循环。所以选项A为正确答案。

  • 第5题:

    若变量已正确定义,有以下程序段: 其输出结果是( )。A.0,0B.0,1C.1,1

    若变量已正确定义,有以下程序段:其输出结果是( )。

    A.0,0

    B.0,1

    C.1,1

    D.程序进入无限循环


    正确答案:B
    对于do…while循环,程序先执行一次循环体,再判断循环是否继续。本题先输出一次i的值”0,”,再接着判断表达式i++的值,其值为0,所以循环结束。此时变量i的值经过自加已经变为l,程序再次输出i的值…1"。

  • 第6题:

    以下程序段中的变量已正确定义:

    程序段的输出结果是( )。

    A.**

    B.****

    C.*

    D.********


    正确答案:C
    由于内层循环for(k=1;k<3;k++)后面直接跟了空语句“;”所以在循环内部什么操作也不做,跳出外层循环后执行打印语句,所以打印了一个“t”,选择C。

  • 第7题:

    若变量已正确定义,有以下程序段:

    A)0,0

    B)0,1

    C)1,1

    D)程序进入无限循环


    正确答案:B
    do…while循环的执行过程如下:①执行do后面的循环体中的语句。②计算while后一对圆括号中表达式的值。当值为非0时,转去执行步骤①;当值为0时,执行步骤③。③退出do…while循环。对于本题变量i的初始值等于“0”,接着执行do后面的循环体中的语句,输出变量i的值0。再判断while后面括号中表达式i十的值,其值为0,所以循环结束。.此时变量i的值经过自加已经变为1,所以再次输出i的值“1”。

  • 第8题:

    要求通过while循环不断读人字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是 ( )。

    A.A

    B.B

    C.C

    D.D


    正确答案:A
    本题考查的知识点是:9etCharl函数和逻辑表达式的判定。题目要求“当读人字母N时结束循环”,所WE)、D)选项不对;选项B)中,作为条件的表达式的值恒成立,不符合题目要求,故本题选A)。

  • 第9题:

    若变量已正确定义,要求程序段完成5!的计算,不能完成此操作的程序段是 ______。

    A.for (i=1,p=1; i<=5; i+ +)p* = i;

    B.for (i=1;i<=5; i+ +) {p=1;p*=i;}

    C.i=1;p= 1;while( i<=5) { p* =i;i+ +; }

    D.i=1;p=1;do{ p*=i;i+ +; } while (i<=5);


    正确答案:B
    解析:选项B中每次执行循环体都要执行p=1,无法保存上次的运算结果,执行完while循环后p=5。

  • 第10题:

    若变量inti,intsum=0,要求程序段完成求1加到100的和的,能完成此操作的程序段不正确的是()

    • A、for(i=1;i<=100;i++)sum+=i;
    • B、for(i=1;i<=100;i++)sum=i;
    • C、for(i=1;i<=100;i++)sum=sum+i;
    • D、for(i=0;i<=100;i++)sum+=i;

    正确答案:B

  • 第11题:

    若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是()

    • A、for(i=1,p=1;i<=5;i++)p*=i
    • B、for(i=1;i<=5;i++){p=1;p*=i;}
    • C、i=1;p=1;while(i<=5){p*=i;i++;}
    • D、i=1;p=1;do{p*=i;i++;}while(i<=5)

    正确答案:B

  • 第12题:

    单选题
    若变量已正确定义,有以下程序段:int a=3,b=5,c=7;if(a>b) a=b;c=a;if(c!=a)c=b;printf("%d,%d,%d",a,b,c);其输出结果是(  )。
    A

    程序段有语法错误

    B

    3,5,3

    C

    3,5,5

    D

    3,5,7


    正确答案: B
    解析:
    a=3,b=5,因此a>b条件不成立,所以不执行a=b。然后c=a=3。此时“c!=a”条件不成立,不执行“c=b;”语句。结果为a=3,b=5,c=3。答案选择B选项。

  • 第13题:

    以下程序段中的变量已正确定义 for(=0;i<4;i++,i++) for(k=1;k<3;k++);printf("*") 程序段的输出结果是______。

    A.********

    B.****

    C.**

    D.*


    正确答案:D
    解析:本题考查的是for循环语句的使用以及分号“;”的使用,第一层for循环由于i两次自增运算故执行两次,每执行一次第一层for循环,第二条for循环语句执行三次,但由于语句后面加了分号,因此这一条空循环语句,结果当第一层的for语句执行完,跳出整个循环语句后,执行printf语句,因此执行一次printf语句,选项D是正确的。

  • 第14题:

    若变量已正确定义,有以下程序段

    A.0,0

    B.0,1

    C.1,1

    D.程序进入无限循环


    正确答案:B
    本题中,变量i的初始值等于0,执行循环体中的语句后,输出i的值为0。while后面括号中表达式i++的值为0,循环结束。此时变量i自加1,所以再次输出“1”。

  • 第15题:

    以下程序段中的变量已正确定义

    A.A

    B.B

    C.C

    D.D


    正确答案:A
    由于内层循环for(k=1;k<3;k++)后面直接跟了空语句“;”,因此在循环内部什么操作也不做,执行完内层循环后执行打印语句,所以打印了一个“*,’故本题答案A)。

  • 第16题:

    若变量已正确定义,有以下程序段: 其输出结果是( )。A.程序段有语法错误B.3,5,3SXB

    若变量已正确定义,有以下程序段:其输出结果是( )。

    A.程序段有语法错误

    B.3,5,3

    C.3,5,5

    D.3,5,7


    正确答案:B
    两个if语句的判断条件都不满足,程序只执行了c=a这条语句,所以变量c的值等于3,变量b的值没有变化,程序输出的结果为3,5,3。

  • 第17题:

    以下程序段中的变量已正确定义: 程序段的输出结果是( )。 A.********B.****

    以下程序段中的变量已正确定义:程序段的输出结果是( )。

    A.********

    B.****

    C.**

    D.*


    正确答案:D
    本题考察for循环语句,注意第二个for语句的后面有一个分号,即printf函数不属于循环体,无论循环执行多少次,printf(”*”)语句只执行一次。因此,本题正确答案为D)。

  • 第18题:

    以下程序段中的变量已正确定义: for(i=0;i<4;i++,i++) for(k=1;k<3;k++); printf("*"); 程序段的输出结果是______。

    A.******

    B.****

    C.**

    D.*


    正确答案:D
    解析: 本题考杏for循环语句中嵌套for循环语句的情况。由于第一个for语句没有具体的执行语句,故当i=0时,k=1时,执行一次语句 printf(“*”);,程序便会跳出整个循环,故运行结果为一个星号。

  • 第19题:

    若变量已正确定义,有下列程序段 inta=3,b=5,c=7; if(a>b)a=b;c=a; if(C!=a)C=b; printf(”%d,%d,%d\n”,a,b,c); 其输出的结果是( )。

    A.程序段有语法错

    B.3,5,3

    C.3,5,5

    D.3,5,7


    正确答案:B
    B。【解析】如果if判断条件成立时就执行其后的相关语句,否则不执行,第一个if条件a>b不成立,故不执行“a=b”,接着执行“c=a”,把a的值赋给c后,此时第二个if条件不成立,故不执行其后语句,最终点c的值为3。

  • 第20题:

    若变量已正确定义,要求程序段完成求51的计算,不能完成此操作的程序段是

    A.for(i=1,p=1;i<=5;i++) p*=i;

    B.for(i=1;i<=5;i++){ p=1; p*=i; }

    C.i=1; p=1; while(i<=5){p*=i; i++; }

    D.i=1;p=1;do{p*=i; i++; }while(i<=5)


    正确答案:B
    解析:本题考核的知识点是C语言在生活中的简单应用。选项B中for循环了5次,而每次循环的时候,都将p的值重新赋值为1后,再乘以当前数字i,最后的结果为5,显然不是51的值,同样的分析可知选项A、选项C和选项D计算的都是5!。所以,4个选项中选项B符合题意。

  • 第21题:

    若所用变量都已正确定义,请填写以下程序段的输出结果() for(i=1;i<=5;i++);       printf("OK/n");


    正确答案:OK

  • 第22题:

    控件是能够完成特定任务的一段程序,但不能独立运行,必须依赖于一个()。

    • A、系统变量
    • B、控制命令
    • C、脚本程序
    • D、主体程序

    正确答案:D

  • 第23题:

    下面是关于子程序定义,正确的是()。 

    • A、子程序和一般程序一样,无特殊之处
    • B、子程序就是一个程序段
    • C、子程序是按规定格式设计,可以多次反复调用,完成指定功能的特殊程序段
    • D、具有一定功能的独立程序段

    正确答案:C

  • 第24题:

    单选题
    若变量inti,intsum=0,要求程序段完成求1加到100的和的,能完成此操作的程序段不正确的是()
    A

    for(i=1;i<=100;i++)sum+=i;

    B

    for(i=1;i<=100;i++)sum=i;

    C

    for(i=1;i<=100;i++)sum=sum+i;

    D

    for(i=0;i<=100;i++)sum+=i;


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