首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

为什么运行不了?解决办法

2012-03-26 
为什么运行不了?#include stdio.hint fun(int k,int m)int main(){while(1){int k,mscanf(%d,&k)if

为什么运行不了?
#include <stdio.h>
int fun(int k,int m);
int main()
{
while(1)
{
int k,m;
scanf("%d",&k);
if(k==0)
break;
 
 
for(m=k+1; ;m++)
{if(fun(k,m))

break;
}
printf("%d\n",m);
}
system("pause");
return 0;
}
 

int fun(int k,int m)

  {
  int i,j,r=1,a[30]={1};
  for(i=1,j=1;r<=k;i=i%(2*k)+1,j=j%m+1)
  {
while(a[i]==0)
i=i%(2*k)+1;
if(j%m==0)
{ if(i<=k)
return 0;
break;
a[i]=0;
r++;
j=0;
}


while(r==k)
return 1;
}
}

 


[解决办法]
int fun(int k,int m)
{
int i,j,r=1,a[30]={1};
for(i=1,j=1;r<=k;i=i%(2*k)+1,j=j%m+1)
{
while(a[i]==0)
i=i%(2*k)+1;
if(j%m==0)

if(i<=k)
return 0;
break;
a[i]=0;
r++;
j=0;
}
while(r==k)
return 1;
}
}
这样写的话后面的语句是不会运行的

热点排行