這個程式哪里出問題了? 怎么改才正確。
#include <stdio.h>
int main( )
{ int a[5],i,*p;
p= a; /*將p 指向陣列a*/
printf("請輸入5個整數:\n");
for(i=0;i<5;i++)
scanf("%d", p+i); /*p+i是第i個元素的地址*/
printf("以相反順序輸出的結果為:\n");
p=&a[2]; /*將p 指向陣列元素a[2]*/
for(i=4;i>=0;i--)
printf(" %d",p[i] ); /*等價于printf(“ %d”,p[i]);*/
return 0;
}
uj5u.com熱心網友回復:
p=&a[2]; /*將p 指向陣列元素a[2]*/for(i=4;i>=0;i--)
printf(" %d",p[i] );
此時的p[i] 等價于 a[2+i]
根據回圈,輸出的結果就是a[6], a[5], a[4], a[3]和a[2]
p = &a[4];
for ( i=0; i<=4; I++ )
printf("%d", *p--);
這樣倒序輸出
uj5u.com熱心網友回復:
謝謝



轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/110127.html
標籤:C語言
上一篇:C語言
