[英]Why the number '0' (number, not char) doesn't displaying?
問題是我無法在數組中看到0 。
我運行程序,看到2D數組。 但是我看不到0 (第一個元素)。
這是代碼:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i;
int *Ptr;
scanf("%d%d", &M, &N); /* Size of array. */
Ptr = malloc(M*N*sizeof(int));
for (i = 0; i < M * N; i++) /* Filling in. */
{
*(Ptr + i) = i;
}
for (i = 0; i < M * N; i++) /* Displaying. */
{
if (i % N == 0)
printf("\n");
printf("%2.d ", *(Ptr + i));
}
return 0;
}
問題是什么? 有什么辦法可以解決?
點后的數字是精度。 如果精度為0(或不存在),則printf不會打印出0
。 在您的情況下,您不需要點:
printf("%2d ", ...)
更改
printf("%2.d ", *(Ptr + i));
至
printf("%2d ", *(Ptr + i));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.