c语言怎么避免打印空数据?

Posted 北极的大企鹅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言怎么避免打印空数据?相关的知识,希望对你有一定的参考价值。

前景提要

  • 使用c语言的数组打印数据的时候,总是会打印出,如下形式的无效数据,虽然不影响结果,但是,感觉这不整洁.

解决方案

  • 减少循环的次数,使得被循环的数据的空数据,正好空数据不被输出
  • 限制数据类型空的不输出

实战演练

1.数组搭建


int main()

	char arrayChar[20];


	for (int i = 0; i < 6; i++)
	
		arrayChar[i] = \'a\' + i;
	

	for (int i = 0; i < 20; i++)
	
		printf("arrayChar[%d]=%c\\n",i,arrayChar[i]);
	



  • 显示结果

2.在循环处,处理这个问题


int main()

	char arrayChar[20];


	for (int i = 0; i < 6; i++)
	
		arrayChar[i] = \'a\' + i;
	

	// 循环处控制,控制输出的次数
	for (int i = 0; i < 6; i++)
	
		printf("arrayChar[%d]=%c\\n",i,arrayChar[i]);
	


  • 存在问题,将循环写死了,如果是动态的按照数组大小循环的情况,就还会存在,产生空值的问题.,就像如下操作一样.

   // 动态循环次数
	for (int i = 0; i < sizeof(arrayChar)/sizeof(arrayChar[0]); i++)
	
		printf("arrayChar[%d]=%c\\n",i,arrayChar[i]);
	


3.在循环中,添加过滤条件.


int main()

	char arrayChar[20];


	for (int i = 0; i < 6; i++)
	
		arrayChar[i] = \'a\' + i;
	

	// 循环处控制,控制输出的次数
	for (int i = 0; i < sizeof(arrayChar)/sizeof(arrayChar[0]); i++)
	
		if (arrayChar[i]>0)
		
			printf("arrayChar[%d]=%c\\n", i, arrayChar[i]);
		

	


4.扩展了其他类型的数组,都是可以通过这种方式进行过滤,最后,得到打印的时候,没有空值.


                if (arrayChar[i]>0)
		
			printf("arrayChar[%d]=%c\\n", i, arrayChar[i]);
		

总结

  • 这就是最近遇到的问题,这个问题困扰了很久,相信许多的初学者也遇到了这样的问题,但是,网上的描述根本不怎么好用,所以,希望本博主遇到的这个问题能帮助到你,喜欢的话,请关注,点赞,收藏.
十年磨一剑,一剑破万法

以上是关于c语言怎么避免打印空数据?的主要内容,如果未能解决你的问题,请参考以下文章

c语言主20

C语言中怎样实现打印宏?(例如#define BBBBBBB 100000,然后输入为100000的时候打印出BBBBBB。

C++ c++与C语言的区别(空结构体)

c语言怎么结构数据初始化?

原创请避免GO语言中的携程空跑(CPU突然激增)

c语言结构体怎么判断是不是为空