c/c++语言开发共享如何打印arrays?

int main() { int my array[3][3] = 10, 23, 42, 1, 654, 0, 40652, 22, 0 }; printf("%dn", my_array[3][3]); return 0; } 

我无法打印arrays..任何想法为什么? 我是一名初学程序员,所以任何建议的话都会受到赞赏。

    你正在做的是在spot [3] [3]中打印数组中的值,这对于3by3数组是无效的,你需要遍历所有的点并打印它们。

     for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { printf("%d ", array[i][j]); } printf("n"); } 

    这将以下列格式打印

     10 23 42 1 654 0 40652 22 0 

    如果你想要更精确的格式化,你将不得不改变printf的格式。

    C中没有.length属性.length属性只能应用于面向对象编程(OOP)语言中的数组。 .length属性inheritance自对象类; 所有其他类和对象inheritance自OOP语言的类。 另外,可以使用.length-1来返回数组中最后一个索引的数量; 仅使用.length将返回数组的总长度。

    我会建议这样的事情:

     int index; int jdex; for( index = 0; index < (sizeof( my_array ) / sizeof( my_array[0] )); index++){ for( jdex = 0; jdex < (sizeof( my_array ) / sizeof( my_array[0] )); jdex++){ printf( "%d", my_array[index][jdex] ); printf( "n" ); } } 

    该行(sizeof(my_array)/ sizeof(my_array [0]))将为您提供相关数组的大小。 sizeof属性将以字节为单位返回长度,因此必须将每个元素组成的字节数除以数组的总大小,每个元素占用4个字节,因为每个元素的类型分别为int。 该数组总大小为16个字节,每个元素为4个字节,因此16/4产生4个数组中元素的总数,因为索引从0开始而不是1。

    看起来您的arrays上有拼写错误,它应该是:

     int my_array[3][3] = {... 

    你没有_{

    my_array[3][3]也是一个无效的位置。 由于计算机从0开始计数,因此您将访问位置4 。 (arrays很奇怪)。

    如果你只想要最后一个元素:

     printf("%dn", my_array[2][2]); 

    如果你想要整个数组:

     for(int i = 0; i < my_array.length; i++) { for(int j = 0; j < my_array[i].length; j++) printf("%d ", my_array[i][j]); printf("n"); } 

    你可以试试这个:

    需要了解更多c/c++开发分享如何打印arrays?,也可以关注C/ C++技术分享栏目---计算机技术网(www.ctvol.com)!

     #include  int main() { int i,j; int my_array[3][3] ={10, 23, 42, 1, 654, 0, 40652, 22, 0}; for(i = 0; i < 3; i++) { for(j = 0; j < 3; j++) { printf("%d ", my_array[i][j]); } printf("n"); } return 0; } 

      以上就是c/c++开发分享如何打印arrays?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/980542.html

      (0)
      上一篇 2021年12月14日
      下一篇 2021年12月14日

      精彩推荐