meili 发表于 2022-10-27 16:05:44

【执行以下程序段后,y的值为B.怎么算的?staticinta[]={1,3,5,7,9};inty,x,*ptr;y=1;ptr=amp;a[1];for(x=0;xlt;3;x++)y*=*(ptr+x);A.105x05x05B.15C.945x05x05D.无定值】

<p>问题:【执行以下程序段后,y的值为B.怎么算的?staticinta[]={1,3,5,7,9};inty,x,*ptr;y=1;ptr=amp;a;for(x=0;xlt;3;x++)y*=*(ptr+x);A.105x05x05B.15C.945x05x05D.无定值】
<p>答案:↓↓↓<p class="nav-title mt10" style="border-top:1px solid #ccc;padding-top: 10px;">童怀的回答:<div class="content-b">网友采纳  答案是105ptr=&a;就是一个赋值a就是数组里面的第二个就是3*(ptr+x)里面x依次是012这个数值依次就是357  y*=*(ptr+x);就是y乘以这个值  y=1*3  y=3*5  y=15*7=105<p class="nav-title mt10" style="border-top:1px solid #ccc;padding-top: 10px;">乔平林的回答:<div class="content-b">网友采纳  我算的结果也是105,问题是答案是B!!<p class="nav-title mt10" style="border-top:1px solid #ccc;padding-top: 10px;">童怀的回答:<div class="content-b">网友采纳  那除非第一个指针赋值的是1结果就是15但是程序运行的结果是105
页: [1]
查看完整版本: 【执行以下程序段后,y的值为B.怎么算的?staticinta[]={1,3,5,7,9};inty,x,*ptr;y=1;ptr=amp;a[1];for(x=0;xlt;3;x++)y*=*(ptr+x);A.105x05x05B.15C.945x05x05D.无定值】