第五题,过程思路,谢谢

 我来答
梦醒南天
2016-05-02 · 学习乃进步之根本,创作是快乐的源泉
梦醒南天
采纳数:109 获赞数:362

向TA提问 私信TA
展开全部

  #include <stdio.h>


  int main()

  {

  //定义一个整型变量i,一个整型数组变量a,一个指针变量p1

  int i=10, a[]={10,20,30,15}, *p1;

  //定义指针b,指向字符串“Learning”的首地址,二级指针p2,指向指针变量b的地址

  char *b="Learning", **p2=&b;


  p1=&i; //将i的地址赋给指针变量p1


  // *p 的意思是从p1存放的那个地址中取出值,p1存放的是i的地址,所以从i的地址取出来的值就是10

  // 所以 *p+20 就是 30

  printf("%4d",*p1+20);


  //把p1指向数组a的首地址,每循环一次,指针变量p1要偏移两个int类型的长度

  //所以,第一次打印出来的是10,第二次循环的时候,p1已经指向30了,所以打印出来的值是30

  for(p1=a;p1<a+4;p1+=2)

  printf("%4d",*p1);


  //指针变量b指向的是字符串的首地址,如果以%c的形式打印出来,那*(b+0)就是L,*(b+4)就是n

  //p2里面存放的是指针变量b的地址,所以*p2取出来的值就是"Learning"字符串的首地址,以%s的形式打印出来就是整个字符串

  printf("\n%c\t%s\n",*(b+4),*p2);

  }

追问
厉害👍
jeanie12345699
2016-05-02 · TA获得超过149个赞
知道小有建树答主
回答量:446
采纳率:0%
帮助的人:171万
展开全部

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式