问题遇到的现象和发生背景
c语言 vs 2022 无法正确得出结果 要求使用函数和指针将十个数排大小,指针变量作为函数传递值
用代码块功能插入代码,请勿粘贴截图
int main()
{
void compare(int *p);
int i = 0;
int a[10];
int* p1;
p1 = a;
for (i = 0; i < 10; i++)
scanf("%d",&a[i]);
printf("\n");
compare(p1);
return 0;
}
void compare(int *p)
{
int j = 0, i = 0,t=0;
for (i = 1; i < 10; i++)//冒泡排序
for (j = 0; j <= 9-i; j++)
{
if (*(p + j) < *(p + j + 1))//不知道是不是这样表示
{
t = *(p + j);
*(p + j) = *(p + j +1) ;
*(p + j + 1) = t;
}
}
printf("%d", *(p+10));//打印第十个数
}
运行结果及报错内容
输入1-10,函数中打印第十个数出错
我的解答思路和尝试过的方法
尝试打印第10个数验证结果(不知道怎么打印)
我想要达到的结果
正确打印第十个数