某核反应堆有两类事件发生:高能质点碰击核子时,质点被吸收,放出3个高能质点和1个低能质点;低能质点碰击核子时,质点被吸收,放出2个高能质点和1个低能质点。
//核反应堆推算#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp = NULL;
int H[31] = {1,3};
int L[31] = {0,1};
int n,i;
if((fp = fopen("we.txt","w")) == NULL)
{
printf("打开文件失败!");
exit(0);
}
for(i = 2;i <= 30;i++)
{
H[i] = 3 * H[i - 1] + 2 * L[i - 1]; //递推公式
L[i] = H[i - 1] + L[i - 1];
}
while(scanf("%d",&n))
{
fprintf(fp,"%d ",n);
if(n == -1)
{
break;
}
}
while(fscanf(fp,"%d ",&n))
{
if(n == -1)
{
break;
}
else
{
printf("%d, %d\n",H[n],L[n]);
}
}
return 0;
}
我用的文件来做,为什么会出不来结果呢?而且文件中还会有一个问号呢?