Welcome 歡迎光臨! 愛上網路 - 原本退步是向前

C++ 程式題

109學年度師大附中 國中資訊科技

12 以下求最大公因數,空格的正確程式片段為

13 題 此程式輸出為何 ?

ANS A[0-99]=值為對應索引值

b[50]-a[50]=b[49]+a[50]-a[50]=b[49]

b[49]=b[48]+49

b[48]=b[47]+48

答案為  1324

這題為某些特定 C++/C 下會有特定解法

(0+1+..+.49)*50/2=49*25=1225

1225+99=1324

為何加 99 因為 b[-1]=99 表示 對應到第最後一個

這個問題有趣了... 不知為何會是 99 

int main()
{
    int a[100],b[100],c[100];
    
    int i;
    for(i=0;i<100;i++)
        a[i]=i;
    printf("\n%d",a[-1]) ;
   
   for(i=0;i<100;i++)
        b[i]=i;
    printf("\n%d",b[-1]) ;
   
   for(i=0;i<100;i++)
        c[i]=i;
    printf("\n%d",c[-1]) ;

    return 0;
}
 

a=100

b 和 c 都是  99

=======================


int main()
{
    int a[100],b[100],c[100];
    
    int i;
    for(i=1;i<100;i++)
        a[i]=i;
    printf("\n%d",a[-2]) ;
   
   for(i=1;i<100;i++)
        b[i]=i;
    printf("\n%d",b[-2]) ;
   
   for(i=1;i<100;i++)
        c[i]=i;
    printf("\n%d",c[-2]) ;


    return 0;
}

a=亂輸出

b 和 c 都是  98

=======================

 

[ 資訊科技 ] 瀏覽次數 : 112 更新日期 : 2023/12/24