c代码规范(编程代码大全)

赏心悦目的C语言输出C语言的输出功能,超出你的想象,你能想到的,她基本也能做到。刚开始还只是照抄printf语句,老是出现下面的情况:HelloWorld%$后面才晓得printf函数是有特殊规定字符的,比如换行的\\n,换页的\\f,回车的

赏心悦目的C语言输出

C语言的输出功能,超出你的想象,你能想到的,她基本也能做到。

刚开始还只是照抄printf语句,老是出现下面的情况:

Hello World% $

后面才晓得 printf 函数是有特殊规定字符的,比如换行的 \\n,换页的 \\f,回车的 \\r,以及制表符 \\t 等。

这次就说说是个什么意思以及如何使用。

本节尽量只使用 printf 函数,除非 有必要,尽量简洁,然后举几个用的最广的例子。

换行显示文本

printf要完成的功能就是显示文本,比如最简单的:

/*beginner/print/print1.c*/#include <stdio.h>int main(){ printf(\"Hello World\\n\"); return 0;}

比如我们想打印一首诗,原文是

Hickory, dickory, dock,

The mouse ran up the clock.

The clock struck one,

The mouse ran down,

Hickory, dickory, dock.

这个简单呀,直接输入下面的代码

/*beginner/print/print2.c*/#include <stdio.h>int main(){ printf(\"Hickory, dickory, dock,\"); printf(\"The mouse ran up the clock.\"); printf(\"The clock struck one,\"); printf(\"The mouse ran down,\"); printf(\"Hickory, dickory, dock.\"); return 0;}

输出是什么的

Hickory, dickory, dock,The mouse ran up the clock.The clock struck one,The mouse ran down,Hickory, dickory, dock.%

这就是没有添加换行符的原因,加上以后如下所示:

/*beginner/print/print3.c*/#include <stdio.h>int main(){ printf(\"Hickory, dickory, dock,\\n\"); printf(\"The mouse ran up the clock.\\n\"); printf(\"The clock struck one,\\n\"); printf(\"The mouse ran down,\\n\"); printf(\"Hickory, dickory, dock.\\n\"); return 0;}

优雅的输出如下所示:

Hickory, dickory, dock,

The mouse ran up the clock.

The clock struck one,

The mouse ran down,

Hickory, dickory, dock.

回车显示进度条效果

其实回车的意思并不是通俗意义上的回车,你敲下键盘,叫做Enter,是另外一种回车。

这里的回车是不换行从头开始的意思,是ASCII码为13的特殊字符,换行是ASCII码为10的特殊字符。

这个示例只能通过自己编译来使用了,代码简单,如下,就能看到进度条的效果了

/*beginner/print/print4.c*/#include <stdio.h>#include <unistd.h>int main(){ printf(\"* \\r\"); fflush(stdout); sleep(1); printf(\"***** \\r\"); fflush(stdout); sleep(1); printf(\"******* \\r\"); fflush(stdout); sleep(1); printf(\"********* \\r\"); fflush(stdout); sleep(1); printf(\"************* \\r\"); fflush(stdout); sleep(1); printf(\"***************** \\r\"); fflush(stdout); sleep(1); printf(\"*********************\\r\"); fflush(stdout); sleep(1); printf(\"\\n\\n\"); return 0;}

运行的时候,可以看到光标在移动,这个用法我是学了2个多月才知道,悲哉!

说明:fflush是用来强行刷新的,因为如果不刷新,有的时候无法显示,另外sleep是为了演示移动效果,不然毫秒级显示完成,就看不到效果了。

优雅的对齐特性

其实想对齐,是比较简单的一件事情,直接空格多敲一些就行了,如下所示:

/*beginner/print/print5.c*/#include <stdio.h>#include <unistd.h>int main(){ printf(\"Name Age ID\\n\"); printf(\"Zhang San 16 1\\n\"); printf(\"Li Si 17 2\\n\"); printf(\"Wang Wu 18 3\\n\"); return 0;}

输入为:

Name Age ID

Zhang San 16 1

Li Si 17 2

Wang Wu 18 3

但是,如果在我们不知道数字是多少,字符串是多少的时候怎么来做呢,就是制表符的效果了。

很简单,只要在需要分割的地方加上就可以了:

/*beginner/print/print6.c*/#include <stdio.h>#include <unistd.h>int main(){ printf(\"Name \\tAge\\tID\\n\"); printf(\"Zhang San\\t16\\t1\\n\"); printf(\"Li Si \\t17\\t2\\n\"); printf(\"Wang Wu \\t18\\t3\\n\"); return 0;}

输入为:

Name Age ID

Zhang San 16 1

Li Si 17 2

Wang Wu 18 3

集大成

这里三个都演示下,可以通过./print_all来查看效果。

###################The demo of \\n################### * ***** ******* * ***** ******* ********* * ***** ******* ********* ************* ***************** ********************* ***** ***** ***** ***** ***** ***** ******************************************###################The demo of \\r###################*********************###################The demo of \\t###################Name AgeIDZhang San161Li Si 172Wang Wu 183

编译运行

还是跟前面的hello world一致,这次还是包含两类文件,一个是源码文件print.c,另外一个就是Makefile了。

Makefile如下所示,比上一个稍微复杂了些,其实不难理解,可以搜索Makefile帮助查看信息。

#beginner/print/Makefile

ALL : print1 print2 print3 print4 print5 print6 print_all

print1: print1.c

gcc -o print1 print1.c

print2: print2.c

gcc -o print2 print2.c

print3: print3.c

gcc -o print3 print3.c

print4: print4.c

gcc -o print4 print4.c

print5: print5.c

gcc -o print5 print5.c

print6: print6.c

gcc -o print6 print6.c

print_all: print_all.c

gcc -o print_all print_all.c

运行只需要输入make,然后./print就可以看到相关的输出了。

以上就是c代码规范编程代码大全)的相关内容了,更多精彩内容请关注!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/74173.html

(0)
nan
上一篇 2021-12-31
下一篇 2021-12-31

相关推荐

  • 陈佩斯方否认坐拥万亩良田:是属于整个园区的公共用地 !

    近日,有网友爆料称陈佩斯在北京郊区坐拥万亩良田,引发热议。记者求证陈佩斯工作人员,对方回应称:“这片地其实是公司办公室外面的一片地,属于整个园区的公共用地,我们只是在此取景拍摄短视频,和陈佩斯老师本人没有任何关系。”

    热点头条 2023-04-28
    0
  • 100句优美短句(100句值得摘抄的神仙句子)

    今天,我为大家准备了100句关于春天的浪漫句子,都是很不错的作文素材,记得收藏好,没准以后用得上哦~沈从文1.在青山绿水之间,我想牵着你的手,走过这座桥,桥上是绿叶红花,桥下是流水人家,桥的那头是青丝,桥的这头是白发。冯唐1.春水初生,

    2022-01-14
    0
  • 小知识:200块钱油跑300公里油耗多少(正确的油耗计算方法)

    摘要:如果只用200块钱的油跑300公里,实际油耗会达到10.50升百公里。当然实际油耗还会受到车辆的技术状况、路况、载重等因素的影响,因此以上计算结果仅供参考。

    2023-06-16
    0
  • 梦幻西游“全责”!男子高速违停玩手游(网友:网瘾大)

    由于高速公路的速度限制,很多人在行驶时都需要打起精神,担心出现事故。近日,在湖北高速上,执勤民警巡逻时发现了一辆小车停在应急车道上,随后民警上前询问,发现驾驶员翟先生竟在玩手机游戏

    2021-09-19
    0
  • 欠2万餐费还怼媒体?(中建八局回应)

    12月24日,据广东民生热线报道,近日,广州一位快餐店老板投诉称一项目工程从今年7月开始订餐,但对方在8月到10月的订餐不结账,期间快餐店老板报过警,双方曾去派出所签过保证书。据悉,该保证书写明于11月15日前结清账款,但截至12月22日仍未结清。广

    2022-01-08
    0
  • 教师体罚学生被开除44名家长在群里接龙挽留 !

    5月21日报道,广东东莞,寮步明珠小学的一学生家长称孩子在学校扎马步将近一小时左右,扎不好还需要挨打,其他家长却表示平时对小孩也比较严格,把孩子交给班主任也是相信于她。校长表示,他们已对事件进行了调查,发现个别学生在老师上课面向黑板的时候,做了一些不雅的动作,老师觉得班风可能存在问题,于是对学生进行

    热点头条 2023-05-23
    0

发表回复

登录后才能评论