伊静风 2015-04-24 03:25 采纳率: 25%
浏览 2480
已采纳

C语言写的倒序小程序,麻烦大家看看

#include
#include
void reverse(int p,int *q)
{
int j=0,i=0,N=8,k=N/2;
for(;j<=N-1;j++) //雷德算法
{
*(p+j)=
(q+i);
while(k<=i)
{
i=i-k;
k=k/2;
}
i=i+k;
k=N/2;
}
}

int main()
{
int a[]={1,2,3,4,5,6,7,8};
int b,*c,i;
b=a;
c=(int
)malloc(sizeof(int)*8);
reverse(c,b);
for(i=0;i<8;i++)
printf("%d",*(c+i));
return 0;
}
编译没问题,运行也没提示出错,但就是一直卡在那,光标闪烁,没有显示结果,求大神解答

  • 写回答

10条回答 默认 最新

  • catik 2015-04-24 05:45
    关注
    #include <stdio.h>
    #include <stdlib.h>
    
    void reverse(int *p,int *q) {
      int j=0,i=7,N=8;
      for(;j<=N-1;j++, i--) {
        *(p+j) = *(q+i);
      }
    }
    int main()
    {
      int a[]={1,2,3,4,5,6,7,8};
      int *b,*c,i;
      b=a;
      c=(int *)malloc(sizeof(int)*8);
      reverse(c,b);
      for(i=0;i<8;i++)
        printf("%d ",*(c+i));
      putchar('\n');
      free(c);
      return 0;
    }
    
    
    

    反转没那么复杂吧

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

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制