c语言文本内容转cmd彩色字体显示花哩胡哨极有趣
/*
源码如下
将文本内容转换成彩色字符显示在CMD控制台程序编于2021-2-12
奈叶敬编写
版本2.0
2963787923@qq.com
需要在c盘中创建 C:\奈叶敬文本目录\零钱计算\日报收入目录\悦诚生活馆收入日报2021-5-6.txt
文件并在里面写入内容,然后在本软件里输入日期就可以转彩色字符了
一个花哩胡哨及有趣的小软件
系统windows7
编译软件gcc9.2
ied code 和dve
编译成功
*/
#include<string.h>//字符串函数头文件
#include<conio.h>//输入函数头文件
#include<stdio.h>//标准头文件C
#include<windows.h>//API颜色函数的头文件
#include<time.h>//定位时间 函数的头文件
void srjm();//声明输入与界面函数
void color(short x)//颜色函数定义 一个老哥的
{
if(x>=0 && x<=15)//参数在0-15的范围颜色
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), x); //只有一个参数,改变字体颜色
else//默认的颜色白色
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 7);
}
void srjm()//定义输入界面函数
{
time_t timep;
struct tm *p;
time (&timep);
p=gmtime(&timep);
color(13);printf("#悦诚文化生活馆日报收入查询器2.0版#n");
color(12);printf("# 当前日期时间%d-%d-%d #n",1900+p->tm_year,1+p->tm_mon,p->tm_mday);//年月日
color(10);printf("#输入日期查日报表格式为X年-X月X-日#n#输入完->回车查询->:");
}
int main()//主函数
{
while(1)//程序主循环
{
long a1=0,b=0, q=1,a=0,k=0,l[9000]={0},p1=0;//长整形变量及声明
char ck[170]={"mode con cols="};//脚本函数字符串
char ck1[50]={" lines="};//脚本函数字符串
char rq[50]={0},hz[6]={".txt"},w[30]={0},cd[12]={0},cd2[12]={0};//一大堆变量
char rb[300]={"C:\奈叶敬文本目录\零钱计算\日报收入目录\悦诚生活馆收入日报"};//文件指针指向的文本目录地址
system(" color 15 &&mode con cols=35 lines=15 ");//CMD变量颜色定义及窗口大小设置
for(int i=0;i<9000;i++)l[i]='0';
srjm();//界面函数调用
gets(rq);//日期输入
strcat(rb,rq);//拼接函数 拼接脚本
strcat(rb,hz);//拼接函数 拼接脚本
system("cls");//清屏函数
FILE *str1=fopen(rb,"r");// 文件指针 指向RB目录中的文本
char str12[9000]={0};//定义一个从文本中抽取 放到变量的空间 并打印
for(int i=0;fscanf(str1,"%c",&str12[i]) !=EOF;i++)//一个循环把文本中的文本抽到字符串变量里的程序
{ {
b=i;//看看循环多少次得出STR12变量的长度及大小
if(str12[i]=='n')//如果I等于换行就A加1 说明这个文本有多少行 多少长度
a++;
}
if(str12[i]=='n')
{
a1++;
}
do//这个是算法是求文本中每一行的字符串长度
{
k++;
if(str12[i]=='n')
{
l[a1]=k;//这是把K每一行长度 存到数组里 日后可计算 最长的一行 并设置窗口宽度
//printf("K:%d n I:%dn",k,i);
k=0;//重新定值等于0 不让干扰循环 每一行的长度
break;//等于换行就断开 至此求第一行长度的程序完
}
}while(str12[i]=='n');
}
for(int i=0;i<b;i++)//这个 是刚刚从每一行的长度 数组中算出那个是宽最大的那个函数
{
if(l[0]<l[i])
{
p1=l[0];
l[0]=l[i];
l[i]=p1;
}
}
fclose(str1);//解开文本指针STR!
sprintf(cd,"%d",a+20);//把A整形转换成字符存到CD里 等于说是文本的长度
sprintf(cd2,"%d",l[0]);//把 L最大的数字 转换成字符CD2 等于说是文本的宽度
strcat(ck,cd2);//拼接脚本 名边窗口大小随着文本原生的来
strcat(ck1,cd);//拼接脚本 名边窗口大小随着文本原生的来
strcat(ck,ck1);//拼接脚本 名边窗口大小随着文本原生的来
system(ck);//执行脚本文件
for(int i=0;i<b;++i)//打印彩色文本函数
{
/*do{
if(q==1 ||str12[i]=='n')
{
int r = rand() % 15;
if(r==0){r+=13;}
color(r);
q=0;
}
if(str12[i]=='n')break;
}while(str12[i]=='n');*/
do
{
int r= rand() % 15;//随机函数 值在15以内
if(r==0){r+=13;}// 等于零是黑色的如果 等于零就看不见了 等于零加13
color(r); //颜色函数加随机函数
if(str12[i]=='n') //等于换行变退出 否则会卡死
{
break; //断开
}
}while(str12[i]=='n');//
printf("%c",str12[i]);//核心打印文本彩色的
}
if(fopen(rb,"r") == NULL){color(5);printf("n输入正确格式并任意继续...");} //如果输入日期的文本不存在或者就显示这个
putchar('n'); //换行
gets(w); //末端输入
if(!strcmp("E",w)) //末端输入 E退出
{
system("cls"); //清屏
fclose(str1); //解放文本指针
color(10);printf("┍ 关闭缓冲区.........┓n");
Sleep(400); //延时函数
color(10);printf("┠ 退出中.............┫n");
Sleep(400); //延时函数
color(10);printf("┗ 退出完毕...........┛n");
Sleep(400); //延时函数
break; //断开
}
system("cls"); //清屏
fclose(str1); //解放文本指针
}
return 0; //退出
}
相关知识
c语言文本内容转cmd彩色字体显示花哩胡哨极有趣
如何优雅地使用Sublime Text3(转)
机器学习术语表:语言评估
xml 属性value换行显示
语言,让承载的文明更精彩
《花》大班语言教案
转载:统计语言模型
for语句没有中括号.doc
大班语言教案《花的语言》
《花》大班语言教案(精选16篇)
网址: c语言文本内容转cmd彩色字体显示花哩胡哨极有趣 https://www.huajiangbk.com/newsview104417.html
上一篇: 2024年软件测试面试题大全【含 |
下一篇: 花卉营养液使用方法 |
推荐分享

- 1君子兰什么品种最名贵 十大名 4012
- 2世界上最名贵的10种兰花图片 3364
- 3花圈挽联怎么写? 3286
- 4迷信说家里不能放假花 家里摆 1878
- 5香山红叶什么时候红 1493
- 6花的意思,花的解释,花的拼音 1210
- 7教师节送什么花最合适 1167
- 8勿忘我花图片 1103
- 9橄榄枝的象征意义 1093
- 10洛阳的市花 1039