三、程序分析题(本大题共4小题,每小题4分,共16分)
阅读下列程序,将输出结果写到各题右侧的空白处。
26.main()
{ int x=1,a=0,b=0;
switch(x)
{
case 0: a++; break;
case l: b++;
case 2: a++; b++; break;
case 3: a++; b++;
}
printf(″a=%d,b=%d\n″,a,b);
)
27.main()
{ int a=10,b=20,*p1=&a,*p2=&b;
*p1=20;*p2=40;
if(*p2>*p1)*p1=*p2;
printf(″a=%d,b=%d\n″,a,b);
}
28.f(int b)
{ static int y=3;
return(b+y++);
}
main()
{ int a=2,i,k;
for(i=0;i<2;i++)
printf(″%d\n″,f(a++));
}
29. int funs(int n)
{ if(n= =1 ||n= =2) return 2;
else return n+funs(n-1);
}
main()
{ int x=4;
printf(″S=%d\n″,funs(x));
}