int a=1,s=0,n;
scanf("%d",&n);
do {
s+=1;
a-=2;
}while(a!=n);
printf("%d\n",s);
举一反三
- 若要下面程序的输出值为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); }
- 有以下程序,若从键盘给n输入的值是-3,则程序的输出结果是 #include intmain() { ints=0,a=1,n; scanf("%d",&n); do { s+=1; a=a-2; }while(a!=n); printf("%d\n",s); return0; }
- 设有以下程序,若要使程序的输出值为2,则应该从键盘给n输入的值是() void ...; printf("%d ",s); }
- 假设整型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; }
- 以下程序段的输出结果是_______。 int s=1,i=2; do { s=s*i; i++; }while(i<=5); printf("%d\n",s);
内容
- 0
下面程序的功能是计算 S= 0!+1!+2!+…+k! ( k>=0 )。 #include "stdio.h" long fun(int n) { int i; long s=1; for(i=1; ① ;i++) s*=i; return( ② ); } int main() { int k,n; long s; scanf("%d",&n); s= ③ ; for(k=0;k<=n;k++) s+= ④ ; printf("%ld\n",s); return 0; }
- 1
下述程序段中, 与其他程序段的作用不同。 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
以下程序的功能是:将输入的正整数按逆序输出。例如:若输入135则输出531。 请填空。 #include int main { int n, s; printf ("Enter a number: "); scanf ("%d",&n); printf ("Output: "); do { s = n%10; printf ("%d",s); ; } while (n!=0); printf (" "); return 0; }
- 3
以下程序拟实现计算s=1 + 2*2 + 3*3 + … + n*n +…,直到s>1000为止。 #include main( ) { int s,n; s=1; n=1; do { n=n+1; s=s+n*n; } while(s>1000); printf("s=%d\n",s); } 程序运行后,不能得到正确结果,以下修改方案正确的是
- 4
main(){int s=0,a=5,n=1;do{s=s+1;a=a-2;}while(a!=n);printf("%d,%d\n",s,a);}