提问者:小点点

打印问题。 在数组中打印值时遇到一些问题


为什么打印的是0,而不是6?

main(void) {

   int i, j;

   int T[3][3] = {{5,1,3},{3,5,6},{5,6,3}};

   printf("%f", T[1][2]);
return 0;
}

共2个答案

匿名用户

您通过传递printf()错误的类型调用了未定义的行为,并偶然得到了结果。

%f用于打印double,而不是int。 若要打印int,应使用%d

匿名用户

它不是打印零,实际上,它是返回0,每当有错误时,这就会发生。

代码的错误是您使用了%f用于打印double,因为您的输入形式是int,所以您需要使用%d。 这将解决错误,因此不会返回0