请教两个问题
/*约瑟复环,数组做法*/#include<stdio.h>
#define N 50
int main() 问题1:这里我用void main()也是可以的,为什么呢?请问两者有什么区别?
{
int n,m,i,count=0,num=0,data[N];
printf("输入队列中总人数和要报的数:");
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)//初始化,全部进队。
{
data[i]=0;
}
i=0;
while(n-count>1)
{
if(num<m&&data[i]==0) //报数
{
num++;
}
if(num==m) //处理出队
{
data[i]=1; //标记表示出队
num=0; //报数器置0
count++; //出队人数增加
printf("第%d个出列的是%d\n",count,i+1);
}
i=(i+1)%n; 这句语言真实太漂亮了!!
}
i=0;
while(i<n&&data[i]==1) //寻找最后一个
{
i++;
}
printf("剩下的是第%d个\n",i+1);
return(0); 问题2:“return(0);”这句语言有什么用?我发现把它删了照样可以运行的?
}