生成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这种类型的,一会就绕晕了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM