818耶 2020-04-05 18:37 采纳率: 100%
浏览 145
已采纳

【C语言】题目,大一的知识点,指针,看不懂

1.算出程序运行结果

#include
void fun(char p,char b)
{ while(
(p++)!='\0');
while(*(p+1)<b)
(p--)=(p-1);
*(p--)=b;
printf("%s",p++);
}
int main()
{ char s[]="54679",c='3';
fun(s,c);
return 0;
}

这是书上练习,书上的答案是739,但我自己打代码是打的答案939,有大佬可以解释一下这是什么意思吗?我自己算出来的答案乱七八糟的,也不知道是书上的答案是不是正确的......
拜托大佬了谢谢!!

  • 写回答

1条回答

  • threenewbee 2020-04-05 22:48
    关注

    你的代码有语法问题,如果是这样写

    #include <stdio.h>
    
    void fun(char * p,char b)
    { while(*(p++)!='\0');
    while(*(p+1)<b)
    *(p--)=*(p-1);
    *(p--)=b;
    printf("%s",p++);
    } 
    int main()
    { char s[]="54679",c='3';
    fun(s,c);
    return 0;
    }
    
    

    结果是
    939

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题