更多“在下述程序中,判断i>j共执行的次数是 main() {inti=0,j=10,k=2,s=0; for(;;) {i+=k; ”相关问题
  • 第1题:

    有下列程序: include void fun(int * s,int n1,int n2) { int i,j,

    有下列程序: #include <stdio.h> void fun(int * s,int n1,int n2) { int i,j,t; i=n1;j=n2; while(i<j){t=s[i];s[i]=s[j];s[j]=t;i++;j--;} } main() { int a[10]={1,2,3,4,5,6,7,8,9,0},k; fun(a,0,3); fun(a,4,9);fun(a,0,9); for(k=0;k<10;k++)printf("%d",a[k]);printf("\n"); } 程序的运行结果是( )。

    A.987654321

    B.4321098765

    C.5678901234

    D.987651234


    正确答案:C
    解析:从题目的主函数入手,定义了一个一维数组并赋韧值,接着调用函数fun(),fun()函数的功能为使数组中的元素逆序,当调用 fun(a,0,3),将实参传递给形参实现数组a中a[0]-a[3]这4个元素逆序;同理调用fun(a,4,9)是将上步排列好的a数组中a[4]-a[9]这6个元素逆序;调用fun(a,0,9)是将数组中a[0]-a[9]这10个元素在逆序,再用printf()函数输出结果为5678901234,故选项C)正确。

  • 第2题:

    在下述程序中,判断i>j共执行的次数是( )。 main() {int i=O,j=10,k=2,s=0; for( ;; ) { i+=k; if(i>j) {ptintf("%d",s); break; }s+=i; } }

    A.4

    B.7

    C.5

    D.6


    正确答案:D
    解析:本题for后小括号中的表达式为空仍能执行循环体,当条件i>j满足时,退出循环。执行“i+=k;”使i的值每次循环增加2,直到i>j。i的值分别为2、4、6、8、10、12,当i=12时,i>j成立,执行if语句的子句,输出s的值并退出循环。判断i>j共执行的次数是6次。

  • 第3题:

    在下述程序中,判断i>j共执行的次数是()。 main() { int i=0,j=10,k=2,s=0; for(;;) { i+=k; if(i>j) { printf("%d",s); break; } s+=i; } }

    A.4

    B.7

    C.5

    D.6


    D

  • 第4题:

    以下循环体的执行次数是( )。 main() {int i,j; for(i=0,j=1;i<=j+1;i+=2,j--)cout<<i<<endl; }

    A.3

    B.2

    C.

    D.0


    正确答案:D
    解析: 本题考查考生对for循环中三个表达式的执行顺序及使用方法。首先执行第一个表达式,然后判断第二个表达式是否成立,如果成立则执行循环体,然后执行第三个表达式,随后再去判断第二个表达式。根据这个顺序,可以委有容易的判断出,循环体只执行了一次。

  • 第5题:

    下面程序的运行结果是【 】。

    main()

    { int i=0,j=10,k=2,s=0;

    for(;;)

    {i+=k;

    if(i>j)

    {printf("%d\n",s);

    break; }

    s+=i; } }


    正确答案:30
    30 解析:考查for循环的使用。题目中for(;;)表示:for循环的初始化表达式,条件表达式和修正表达式都省略了,表示进行for循环和for循环的终止都没有限制。