Problem B: 2023CSP演练-阅读程序-1

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Special Judger Creator:
Submit:113 Solved:3

Description

1.

#include<cstdio>

int main()

{  int i,j,s,sp,p;

   int a[11];

   sp=1; a[1]=2; j=2;

   while(sp<10)    //6

   {  j++; p=1;

      for(i=2; i<=j-1; i++)

          if(j%i==0) p=0;

       if(p)

        { 

           sp++;     //12

          a[sp]=j; //13

        }

    }

    j=2; p=1;

   while(p)

   {  s=1;

      for(i=1; i<=j; i++) s=s*a[i];

      s++;

      for(i=2; i<=s-1; i++)

          if(s%i==0) p=0;  //22

      j++;  

   }

   printf("s=%d\n"s); //25

   return 0;

}



判断题

1) 此程序前几步计算可知a[1]=2 a[2]=3….  那么a[sp]=a[sp-1]+1 (     )

2) 若修改第6行为while(sp !=10) ,则此程序输出结果不会改变。(     )

3) 若删去12行的sp++ 更改第13行的语句为 a[++sp],程序输出的结果会改变。(       )

4) 第二个while循环终止后,j的值为6(     )

 

选择题

 5) while(sp<10)程序段执行完后,a数组中的最后一个数是(     )

A) 9      B) 10      C)  19     D)  29

 

 6) 此程序执行完后,第25行的printf("s=%d\n"s)输出结果为(     )         

A) s=211      B) s=2311      C) s=3031     D) s=30031

Sample Input Copy


Sample Output Copy