【C语言】实现彩色的进度条

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LX18792732127/article/details/75125875

首先是颜色代码的编写:

#define NONE                "\033[m" 
#define RED                 "\033[0;32;31m" 
#define LIGHT_RED		 "\033[1;31m" 
#define GREEN			  "\033[0;32;32m" 
#define LIGHT_GREEN            "\033[1;32m" 
#define BLUE                     "\033[0;32;34m" 
#define LIGHT_BLUE              "\033[1;34m" 
#define DARY_GRAY             "\033[1;30m" 
#define CYAN                     "\033[0;36m" 
#define LIGHT_CYAN             "\033[1;36m" 
#define PURPLE                   "\033[0;35m" 
#define LIGHT_PURPLE           "\033[1;35m" 
#define BROWN                  "\033[0;33m" 
#define YELLOW                 "\033[1;33m" 
#define LIGHT_GRAY             "\033[0;37m" 
#define WHITE                "\033[1;37m"
然后是进度条的编写:

使用数组存放要输出的字符

使用循环语句控制条件

使用switch case语句来实现对颜色的控制

#include<stdio.h>
#include<unistd.h>
#include"color.h"
#define M 100

int main()
{
	char ch='#'; 
	char str[M]={0};
	int i=0;
	char symbol[4]={'|','/','-','\\'};
	for(i=0;i<M;++i)
	{
		int c=i%5;
		switch(c)
		{
			case 0:
				printf(RED);
				break;
			case 1:
				printf(GREEN);
				break;
			case 2:
				printf(BLUE);
				break;
			case 3:
				printf(YELLOW);
				break;
			case 4:
				printf(BROWN);
				break;
		}
		str[i]='#';
		printf("[%-100s][%%%d][%c]",str,i,symbol[i%4]);
		fflush(stdout);
		usleep(100000);
		printf("\n");
		system("clear");
	}
	printf("\033[0m");
	return 0;
}
结果的展示:





猜你喜欢

转载自blog.csdn.net/LX18792732127/article/details/75125875