一、前言 平时开发C语言程序时,经常需要调试代码,C语言有一些宏,可以打印出当前的行号、文件名称、日期、时间,对程序的调试起到很大的帮助,可以快速定位问题。...特别是开发单片机程序时,使用这些宏打印这些信息或者在LCD上显示程序的编译日期、时间,可以知道这个单片机上的固件是什么时候编译。帮助判断版本。...ANSIC标准定义了可供C语言使用的预定义宏: __LINE__ : 在源代码中插入当前源代码行号 __FILE__ : 在源代码中插入当前源代码文件名 __DATE__ : 在源代码中插入当前编译日期...:%s\r\n", __FILE__); printf("当前固件编译日期:%s\r\n", __DATE__); printf("当前固件编译时间:%s\r\n", __TIME__); 三、C语言封装快捷...(USART1->SR&1<<7)){} return c; } /* 函数功能: 格式化打印函数 */ char USART1_PRINTF_BUFF[1024]; void USART1_
例21:C语言实现打印菱形。 解题思路:今天这道题目的逻辑的很简单,本质来说还是循环的嵌套,然后就是一些简单的数学逻辑,有了上个题目心形表白的学习,读者看这道题应该很容易看懂。...今天的C语言实现菱形一共分为两部分,菱形的上下部分。...C语言实现前四行的打印: for(i=0;i<4;i++) { for(j=0;j<=2-i;j++) { printf(" "); } for...wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1] C语言实现后三行的打印: for(i=0;i<=2;i++) { for(j=0;jC语言入门到精通
题目 本题要求你写个程序把给定的符号打印成沙漏的形状。...输出格式: 首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。...char sign; scanf("%d %c",&sum,&sign); while(2*num*num-1<=sum) num++; num--;//因为跳出循环的时候已经是大于sum了,所以退一步回去...{ for(j=0;j<i;j++) printf(" "); for(j=i;j<floor-i;j++) printf("%c",sign); if(j==floor-i)...{ for(j=0;j<i;j++) printf(" "); for(j=i;j<floor-i;j++) printf("%c",sign); if(j==floor-i)
1.分析 在C语言中要实现菱形打印,首先先确定要打印的行数,这里我们用一个整型来接受输入行数。用*来实现菱形图案,其余地方为空白。 因为菱形是对称的,我们分为上下三角形两部分分别实现。
个的行)的差值*2=10;13-10=3,刚好等于它这一行的个数这样我们就找到规律了,即每一行的个数等于13-2*(行坐标的差值),别着急,当你写上去后,你会发现,是个三角形,没错,它还得需要空格才能打印出一个完整的菱形
当用户输入命令字符"1"会显示系统日期。 当用户输入命令字符"2"会显示系统时间。 当用户输入命令字符"3"会执行退出系统。...二:获取系统日期和系统时间。...一月一日后的天数(0-365),本年第几日,闰年有366日 int tm_isdst 夏令时标志(大于0的值说明夏令时有效,0说明无效,负数说明信息不可用) ¹time - 库函数 描述 C语言当中的库函数...time_t time(time_t *seconds) 注→这个存储的类型是时间类型也就是time_t在我们获取系统日期之前我们需要定义一个时间类型的变量。...---- ²localtime - 库函数 描述 C 库函数 struct tm *localtime(const time_t *timer) 使用 timer 的值来填充 tm 结构。
文章目录 1.计算日期到天数转换 题目详情 代码 思路 2.KY111 日期差值 题目详情 代码 思路 3.KY222 打印日期 题目详情 代码 4.KY258 日期累加 题目详情 代码 思路 1.计算日期到天数转换...2.KY111 日期差值 传送门 题目详情 代码 int GetDay(int year, int month) {//返回一年中哪一个月的天数 int DayOfMonth[13] = {0,...=EOF) 现在也可以,但毕竟是c++。...3.KY222 打印日期 传送门 题目详情 代码 #include using namespace std; int main() { int year, sum_day...break; } } printf("%d-%02d-%02d",year,month,sum_day); } } 4.KY258 日期累加
近期在PTA刷到了一道有意思的题目:打印沙漏。...k) { //内部循环2*(n-i)-1次,打印每行的符号个数 printf("%c", ch); } printf("\n"...printf("%c", ch); } printf("\n"); //打印每行的换行转义符 } 上述代码难点解释: 最外层循环为何是n-1次?...因为下正三角形首行需要打印n-2个空格,此后的每一行打印空格个数都比首行打印空格个数少i个空格,所以循环(n-2)-i次。...核心思路 将上述打印沙漏代码中的两次循环调换位置,并对for循环条件做适当的调整,即可实现先打印上正三角形,后打印下倒三角形,即打印钻石。
7-12 日期格式化 (5 分) 世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。...下面请你写个程序,自动把读入的美国格式的日期改写成中国习惯的日期。 输入格式: 输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。
引言 在日常代码测试或运行中,打印日志检测代码运行状态必不可少。...先举三个例子: 在物联网系统中设备什么时候上线,可以将上线的信息写入数据库,也可以将该设备上线的记录打印到日志中,以该设备的id为文件名,查找日志也比较方便,上线时间、IP地址等打印到文本中。...在复杂的多环节系统中,快速定位问题问题出错的环节,将各个系统数据接口的数据打印日志,如果有返回值可以判断执行是否成功,可以只打印错误的日志,出现问题时查看日志文件就可以定位是那个环节。...而且,最好在打印日志时输出英文,防止中文不支持而打印出乱码的情况。 日志的性能 无论我们把日志写到文件还是数据库,都需要消耗IO资源。适当的控制日志的输出也有利于提高程序的性能。...日志格式 常见的日志格式中对于每一条日志应含有的信息包括日期、时间、日志级别、代码位置、日志内容、错误码等信息。
//实现功能:控制台打印系统的日期和时间 // #include "stdio.h" #include "time.h" int main(){ struct tm *sysTime;//定义结构体...,用于存放日期和时间 time_t sysDay; time(&sysDay);//获取系统日期 sysTime = localtime(&sysDay);//转换为系统日期...printf("系统日期:%d-%d-%d\n", 1900 + sysTime->tm_year, sysTime->tm_mon + 1, sysTime->tm_mday); printf...d:%d\n", sysTime->tm_hour, sysTime->tm_min, sysTime->tm_sec); return 0; } 运行结果: 程序分析 本实例主要掌握系统日期和时间的获取方法
for(y=1.5f; y>-1.5f; y-=0.1f) { for(x=-1.5f; x<1.5f; x+=0.05f) { a = x*x+y*y-1; //这里的@符号即为打印出的心形图案符号...else printf("*"); } printf("\n"); } return 0; } //版本二:可用多个字符组成打印...[0m", buf[(int)(f*-8.0f)]); } else { printf("%c", ' '); } printf("3[0m"); // ==...m<=4*i+1; m++) printf("%c", c);//输出右半部分字符小爱心 printf("\n"); //每一行输出完毕换行 } for (i=1; i<=3...(" "); //最后一行左边的空格 printf("%c\n", c); //最后一个字符小爱心 for (i=1; i<=5; i++) printf("\n"); /
前言 time.h是C/C++中的日期和时间头文件。用于需要时间方面的函数。下面分享time.h头文件中几个常用函数的用法: ?...函数 1、函数原型 struct tm *gmtime(const time_t *timep); 2、函数说明 gmtime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法...注意:若再调用相关的时间日期函数,此字符串可能会被破坏。 3、函数返回值 返回一字符串表示目前当地的时间日期。格式:星期,月,日,小时:分:秒,年。...注意:若再调用相关的时间日期函数,此字符串可能会被破坏。与ctime()函数的不同在于传入参数结构不同。 3、函数返回值 返回一字符串表示目前当地的时间日期。格式:星期,月,日,小时:分:秒,年。...参考资料:百度百科及C语言中文网
判断素数的方法:用一个数分别去除 2 到开根号这个数,如果能被整除, 则表明此数不是素数,反之是素数。
1.打印素数: 使⽤C语⾔写⼀个程序打印100~200之间的素数,数字中间使⽤空格分割。 素数是指只能被1和它本⾝整除的正整数。... flag = 0;//不是素数 break; } } if (flag == 1)//是素数就打印
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106371.html原文链接:https://javaforall.cn
题目 打印楼梯,同时在楼梯上方打印两个笑脸。 思路 用 i 控制行,j 来控制列,j 根据 i 的变化来控制输出黑方格的个数。 注意编号在128~255的是扩展的编码,原本就不是作为显示用的。...); //输出两个笑脸 for(i=1;i<11;i++) { for(j=1;j<=i;j++) { printf("%c%...c",219,219); } printf("\n"); } } 样例输出
前言 个人主页: :✨✨✨初阶牛✨✨✨ 推荐专栏: c语言初阶 个人信条: 知行合一 本篇简介:>:介绍c语言中的三角形与菱形打印分步介绍 效果展示图: 目录 前言 一、等腰三角形...2*i-1;j++)//打印每行的元素个数 { printf("*"); } printf("\n");//每打印一行换行 } return 0; } 效果图: (2)打印空格...: 为了美观,我们需要在打印每行元素之前打印适当数量的空格,那么,每行打印多少空格呢?...通过观察,我们可以发现,空格数=需要打印的行数-所在行,即 例如: 打印5行是,空格数分别为 第一行:4(空格数)=5(需要打印的行数)-1(所在行) 第二行:5-2 第三行:5-3 第四行...与紧凑型元素个数是一样打印的,不同之处在于: 打印每个元素后用空格隔开: 打印空格数发生变化,应当为原来的两倍.
ANSI escape code 最近在研究日志打印组件easylogger,玩转各种彩色日志打印不亦乐乎,好奇心越来越重,遂深入研究,发现了一个非常神奇的东西:ANSI escape code!...① 打印没有背景色,字体颜色为绿色,字体正常的字符: printf("\033[32mHelloWorld\r\n"); 编译下载,即可看到效果: ?...② 及时取消属性 设置属性之后,该属性在终端中一直存在,必须要及时取消,比如在刚刚的printf之后,继续正常打印,不加特殊字符,依然会打印绿色字符: printf("\033[32mHelloWorld...③ 多个特殊字符一起设置 比如这里我同时设置打印颜色为绿色,字体在终端闪烁: printf("\033[32;5mHelloWorld\033[0m\r\n"); ?...怎么样,在终端打印各种好玩的字符是不是非常简单~自己上手玩玩吧!
参考链接: 用Python打印金字塔图案的程序 Submit Statistic Discuss Problem Description 输入n值,打印下列形状的金字塔...Output 打印金字塔图形,其中每个数字之间有一个空格。
领取专属 10元无门槛券
手把手带您无忧上云