生成0~9之间不重复的随机数

int main(void)
{
	int m[9] = { 0 };
	int flag = 0;
	srand(time(0));
	for (int i = 0; i < 9; i++)
	{
		
		do
		{
			flag = 0;
			m[i] = rand() % 9 + 1;
			
			for (int j = 0; j < i; j++)
			{
				if (m[j] == m[i])
				{
					flag = 1;
				}
			}
		
		} while (flag==1);
	}
	
	

	for (int i = 0; i < 9; i++)
	{
		printf("%d ",m[i]);
	}


}

 

那句flag=0很关键。

感觉自己while循环用的不是很好呀,尤其是while里面用了if这种类型的,一会就绕晕了。

posted @ 2018-10-23 00:12  eatwhat  阅读(2408)  评论(0编辑  收藏  举报