该程序输出结果为( ) n=1 s=0 while True: s+=n if s>10000: break n+=1 print(n-1)
举一反三
- 假设整型n已输入值。以下不能正确计算1*2*3*...*n的程序段是_______。 (1) for(i=1,s=1; i<=n; i++) s*=i; (2) i=1;s=1; while(i<=n) s*=i++; (3) i=0,s=1; do{ i++,s*=i; }while(i<=n); (4) for(i=1,s=1; ; i++) { s = s*i, if(i==n) break; }
- 下述程序段中, 与其他程序段的作用不同。 A: k=1; while (1) { s+=k ; k=k+1 ; if (k>100) break ; } printf(“\n%d”,s) ; B: k=1; Repeat : s+=k ; if (++k<=100) goto Repeat printf(“\n%d”,s) ; C: int k,s=0; for (k=1;k<=100;s+=++k); printf(“\n%d”,s) ; D: k=1; do s+=k; while (++k<=100) ;printf(“\n%d”,s) ;
- 以下程序段若要使输出值为2,则应该从键盘给n输入的值是( )。 int a=1,s=0,n; scanf("%d",&n); do { s+=1; a-=2; }while(a!=n); printf("%d\n",s);
- 如何解数列s(n)=(n-1)[s(n-1)+s(n-2)],s(1)=0,s(2)=1,求s(n)
- 若要下面程序的输出值为2,则应该从键盘输入的值是 #include void main() {int s=0,a=1,n; scanf("%d",&n); do {s+=1; a=a-2; }while(a!=n); printf("%d",s); }