问答题
给定程序中,函数fun的作用是:不断从终端读入整数,由变量a统计大于0的个数,用变量c来统计小于0的个数,当输入0时结束输入,并通过形参pa和pb把统计的数据传回主函数进行输出。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:源程序存放在BIANK1.C中。不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
void fun(int*px,int*PY)
{
/*********found*********/
int
【1】
;
scanf("%d",&k);
/*********found*********/
while
【2】
{if(k>0)a++;
if(k<0)b++;
/*********found*********/
【3】
;
}
*px=a;*Py=b;
}
main()
{ int x,y;
fun(&x,&y);
printf("x=%d y=%d\n",x,y);
}
【正确答案】正确答案:(1)a=0,b=0,k (2)(k!=0) (3)scanf("%d",&k)
【答案解析】解析:填空1:下面的scanf函数用到变量k,需要提前定义,在while循环中使用了临时存放正、负数个数的变量a,b,因此也要提前定义。 填空2:根据题意,输入0时结束程序,因此当k!=0时进入循环记录正负数的个数。 填空3:需要不断从终端输人整数,因此在循环体内添加输入操作。