如何用C语言打印出二维数组?

Python013

如何用C语言打印出二维数组?,第1张

假设需要打印的数组为int类型,数组名为Array,Dim1为数组的行,Dim2为数组的列。

int i,j//临时变量

for(i = 0 i < Dim1 i++)//外层循环遍历行

  for(j = 0 j < Dim2 j++)//内层循环遍历列

    {

        printf("%d ",Array[i][j])//访问数组元素并打印

    }

打印数组时(无论几维)都要注意数组下标从0开始,除非刻意放弃下标为0的元素,多存一个元素,此时for循环范围则可从1开始到数组长度。

#include <stdio.h>

int main(void)

{

int Arr[10]={1,2,3,4,5,6,7,8,9,0}

// 通过下标

printf("%d\n",Arr[5])

// 指针偏移法

printf("%d\n",*Arr+4)

int* PArr=Arr

// 指针偏移法

printf("%d\n",*PArr+3)

return 0

}

有没有打印值,如果有打印出数组的值,问题出在getchar()这个函数;

getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).当用户键入回车之后,getchar才开始从stdio流中每次读入一个字符.getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键.