32060049 2015-10-21 08:51 采纳率: 94.4%
浏览 1574
已采纳

C语言指针指向数组问题

#include

int main(){
   int a[5];
   int *p,i;
   printf("please enter ten numbers:");
   for(i=0;i<5;i++){
      scanf("%d",&a[i]);
   }
   for(p=a;p<(a+5);p++)
      scanf("%d",*p);
   printf("\n");


   return 0;
}

代码如图,是课本上的例题,我运行后输入五个数字以后没有反应。而且还想问一下,将第二个for循环中的(a+5)改为(p+5)可以吗?

万分感谢!!!

  • 写回答

6条回答 默认 最新

  • 守love唯诺 2015-10-21 09:21
    关注

    1、需要输入10个数字,你的代码没有输出,当然没有反应。
    2、不可以修改。p<p+5不是永远成立了??p在++,这样会造成越界访问。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
  • ¥15 NX MCD仿真与博途通讯不了啥情况
  • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
  • ¥15 gradio的web端页面格式不对的问题
  • ¥15 求大家看看Nonce如何配置
  • ¥15 Matlab怎么求解含参的二重积分?
  • ¥15 苹果手机突然连不上wifi了?
  • ¥15 cgictest.cgi文件无法访问