版本1.cpp

来自「演示了荷兰国旗问题(c语言)从简单到复杂的三种算法」· C++ 代码 · 共 40 行

CPP
40
字号
#include "stdlib.h"
#include "time.h" 
#include <stdio.h>
#define N 15
int main(int argc, char* argv[])
{ 
	char a[N],b[N],color[]={'r','w','b'};
	int i,j,q;
	srand( (unsigned)time( NULL ) );
  printf("原始系列\n");
	for(i=0;i<N;i++)
	{ 
		switch (j=rand()%3) 
		{ 
			case 0: 
				a[i]='r'; 
				break;
			case 1: 
				a[i]='w';
				break;
			default: 
				a[i]='b';
		} 
		printf("%c ",a[i]);
	} 
	printf("\n");
	q=0;
	for(i=0;i<3;i++)
	{
 		for (j=0;j<N;j++)
 			if (a[j]==color[i])
 				b[q++]=a[j];
		for(j=0;j<N;j++)
			printf("%c ",b[j]);
		printf("\n");
  } 
	scanf("%d",&i);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?