void pyramid( int n );
int main()
{ int n;
scanf("%d", &n);
pyramid(n);
return 0;}
void pyramid(int n){
int i,j;
for(i=1;i<=n;i++){
for (j=1;j<=n-i;j++)
printf(" ");
for (j=1;j<=i;j++)
printf("%d ",&i);
putchar('\n');
}
}
printf("%d ",&i);
&i 这个是i变量的地址,就是一个指针值
i 这个才是变量i的值
所以改成
printf("%d ",i);
即可
printf("%d ",&i); 输出不用带‘&’ 符号: printf("%d ",i); 即可。 代码修改如下,供参考:
#include <stdio.h>
void pyramid( int n );
int main()
{
int n;
scanf("%d", &n);
pyramid(n);
return 0;
}
void pyramid(int n){
int i,j;
for(i=1;i<=n;i++){
for (j=1;j<=n-i;j++)
printf(" ");
for (j=1;j<=i;j++)
printf("%d ",i); //printf("%d ",&i);
putchar('\n');
}
}