楼兰经历 2022-07-13 17:38 采纳率: 88.5%
浏览 50
已结题

二级c语言考试试题,知道答案理解不了

img


我知道输出的是最后k的值 和a数组中k对应位置的值,但是不知道这个k的值怎么求?还有这个s[p]>s[*k]*k=p理解不了

  • 写回答

3条回答 默认 最新

  • 关注

    1、fun() 函数里的k是一个指针,表示变量的地址,而*k则是变量的值,其中*k=p,即给变量赋值0。
    2、s[p]表示 数组第p个位置的值,s[*k]表示数组第*k个位置的值.
    3、fun() 函数从0开始循环遍历,
    第1次循环 p=0, *k=0, s[0] > s[0] 不满足条件,*k=0;
    第2次循环 p=1, *k=0, s[1] > s[0] 满足条件,*k=1;
    第3次循环 p=2, *k=1, s[2] > s[1] 满足条件,*k=2;
    第4次循环 p=3, *k=2, s[3] > s[2] 满足条件,*k=3;
    第5次循环 p=4, *k=3, s[4] > s[3] 满足条件,*k=4;
    第6次循环 p=5, *k=4, s[5] > s[4] 满足条件,*k=5;
    第7次循环 p=6, *k=0, s[6] > s[5] 满足条件,*k=6;
    第8次循环 p=7, *k=6, s[7] > s[6] 不满足条件,*k=6;
    第9次循环 p=8, *k=6, s[8] > s[6] 不满足条件,*k=6;
    第10次循环 p=9, *k=6, s[9] > s[6] 不满足条件,*k=6;
    循环结束后,k的值是6。整个函数的意思是找到数组的最大值以及它的位置。

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月19日
  • 已采纳回答 7月19日
  • 创建了问题 7月13日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分