这个帖子能发出来吗
本帖最后由 一世轻尘 于 2020-12-26 20:45 编辑为啥第第一次输出数组q后程序直接退出了???
还有,为什么论坛不让我贴代码!!! 本帖最后由 风过无痕1989 于 2020-12-26 22:26 编辑
# include<stdio.h>
# include<stdlib.h>
# define N 5
int main()
{
int *p, i, a = { 1, 2, 3, 4, 5 };
p = a;
int temp;
for (i = 0;i < 5;i++)
{
printf("%d ", *p);
p++;
}
printf("\n");
p = a;
int *q;
q = (int*)malloc(N * sizeof(int));
for (i = 0;i < N;i++)
{
scanf("%d", &q);
}
for (i = 0; i < 5;i++)
{
printf("%d ", q);
}
for (i = 0; i < 5;i++)
{
if (*(p + i) > *(q + i))
{
temp = *(p + i);
*(p + i) = *(q + i);
*(q + i) = temp;
}
}
q = (int*)malloc(N * sizeof(int));
for (i = 0;i < N;i++)
{
scanf("%d", &q);
}
for (i = 0;i < 5;i++)
{
printf("%d ", q);
}
for (i = 0;i < 5;i++)
{
if (*(p + i) > *(q + i))
{
temp = *(p + i);
*(p + i) = *(q + i);
*(q + i) = temp;
}
}
for (i = 0;i < 5;i++)
{
printf("%d ", *(p + i));
}
for (i = 0;i < 5;i++)
{
printf("%d ", *(q + i));
}
free(a);
return 0;
} 第56行和第60行,你若是想输出地址,那就改回你自己的,用 *p++、*q++,若想输出值,就用 *(p + i)、*(q + i) 风过无痕1989 发表于 2020-12-26 21:58
第56行和第60行,你若是想输出地址,那就改回你自己的,用 *p++、*q++,若想输出值,就用 *(p + i)、*(q +...
应该不是这个问题,你的程序我这运行也是第一次输出q后直接退出了 一世轻尘 发表于 2020-12-26 22:02
应该不是这个问题,你的程序我这运行也是第一次输出q后直接退出了
我在第15行加了一条:p = a; 你再试我的程序
风过无痕1989 发表于 2020-12-26 22:30
我在第15行加了一条:p = a; 你再试我的程序
明天吧明天吧,睡觉睡觉ZZ 风过无痕1989 发表于 2020-12-26 22:30
我在第15行加了一条:p = a; 你再试我的程序
好吧好吧,我还是试了一下,是这个问题{:10_275:}
页:
[1]