4. 输入4<回车>后,下列程序的输出结果是__1#3#21#1173#_____。
# include \int main( ) { int j,k,n; float f,s;
scanf(\ s=0; f=1;
for(k=1;k<=n;k++){ for(j=1;j 5. 若输入 -6+15*3/5=<回车> , 则以下程序的输出结果是__0, -6, 9, 6, 1_____。 #include int m=0, sum=0; char c, oldc='+'; do { c=getchar(); if(c<='9'&&c>='0') m=10*m+c - '0'; else { if(oldc=='+') sum += m; else sum -= m; m=0; oldc=c; printf(\ } } while(c!='='); } 四、程序(段)填空题 1.输入1 个正整数 n, 计算并输出 s 的前n项的和。 S = 1 -1/2 + 1/3 - 1/4 + 1/5 -1/6 + …… #include flag=1; (1) ; s=0 scanf(\ for (k=1 ; k<=n; k++){ s=s+ (2) ; 1.0*flag/k (3) ; flag=-flag } printf(\} 2.输入以 -1结束的一批整数,输出其中的最大值。 例如: 输入 -3 -8 -10 -1 后,输出:max=-3。 #include scanf(\ if(x!=-1){ (4) ;max=x while( (5) ){ x!=-1 if(max (6) ;scanf(“%d”,&x) } printf(\ } } 3.设变量x, y, z已正确定义和赋值,请仔细阅读程序段A,然后在程序段B中填入正确的内容,使程序段A和程序段B的输出结果一样(每空只能写一个赋值表达式)。 程序段A 程序段B x=x+y; (7) ;z=x y=x-y; (8) ;x=y x=x-y; y=z; z=x+y; z=x+y; printf(\ printf(\ 4. 输入一个十进制整数,将它对应的二进制数的各位反序,形成新的十进制数输出。 如:13-?1101--?1011-?11 如: 10-?1010-?0101-?5 #include printf(“请输入一个十进制整数:”); scanf(“%d”,&x); y=0; while( (9) ){ x!=0 t=x%2; (10) ; y=2*y+t x=x/2; } printf(“新的十进制整数为%d\\n”,y); }

