q1678020420 2015-01-09 05:50 采纳率: 0%
浏览 1527

请教C语言的问题解决方案

数组求和,这个好像不能够运行,但是提交代码可以,而且加入了getch();和system pause;试过了也不行!
#include
#include
void Print(int*data,int n)
{ int i;
for(i=0;i<n;i++)
{

printf("%d",data[i]);

         }
      printf("\n");
 }

int Split(int *data,int pre,int rear)
{
int value=data[pre];
while(pre {
while(data[rear]>=value && pre<rear) rear--;

data[pre]=data[rear];
while(data[pre]<value && pre<rear) pre++;
data[rear]=data[pre];
}
data[pre]=value;
return pre;
}
//快速排序
void QuickSort(int *data,int pre,int rear)
{

if(pre<rear)

{ int mid=Split(data,pre,rear);
QuickSort(data,pre,mid-1);

QuickSort(data,mid+1,rear);
}

}
int main()
{
int i,n;
int data;
scanf("%d",&n);
data=(int
)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
{
scanf("%d",&data[i]);

        }

}
    QuickSort(data,0,n-1);
    Print("data,n");
    getch();
    return 0;

}
还有一个能提交但是不能运行,getch();用过了也不行!

Fibonacci数列的
#include
#define N 1000001
#define M 10007
int main()
{
int a[N],i,n;
scanf("%d",&n);
a[1]=1;a[2]=1;
for(i=3;i<=n;i++)
a[i]=(a[i-1]+a[i-2])%M;
printf("%d",a[n]);
getch();
return 0;
}

  • 写回答

6条回答 默认 最新

  • 91program 博客专家认证 2015-01-09 06:12
    关注

    int a[N] 这个数组定义的也太大了吧,已经超过 VC 或 VS 系统编译工具的默认设置,这样的程序运行不起来也是正常的。
    可以考虑将 a 所需要的内存动态分配:malloc / new 都可以的。

    评论

报告相同问题?

悬赏问题

  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试