写点什么

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

  • 2022 年 3 月 05 日
  • 本文字数:795 字

    阅读完需:约 3 分钟

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]); }
复制代码

总结

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

发布于: 刚刚阅读数: 2
用户头像

十年磨一剑,一剑破万法 2018.01.16 加入

JAVA开发五年,希望早日成就架构师

评论

发布
暂无评论
c语言怎么避免打印空数据?_c_北极的大企鹅_InfoQ写作平台