为了账号安全,请及时绑定邮箱和手机立即绑定

c语言求大佬,这是怎么回事?是软件的问题吗?

c语言求大佬,这是怎么回事?是软件的问题吗?

C
你存在我婶婶的脑海里 2019-03-08 21:48:15
#include<stdio.h>int main (){int *p1,*p2,*p,a,b; printf("please enter tow integer number:"); scanf("%d,%d",&a,&b); p1=&a;p2=&b;if(a<b){ p=p1; p1=p2; p2=p;}printf("a=%d,b=%d\n",a,b);printf("max=%d,min=%d\n",*p1,p2);return 0;}
查看完整描述

1 回答

已采纳
?
onemoo

TA贡献883条经验 获得超454个赞

p2 是个 int 指针,想要得到它所指的 int 值,就必须解引用它(*p2)。我想你应该是知道这一点的——在最后一个 printf 中,你对 p1 就是这样做的。是不是大意忘了对 p2 也这样了?!


如果直接打印 p2,就是直接输出 p2 的这个指针所表示的地址值,自然就不正确了。

查看完整回答
2 反对 回复 2019-03-09
  • 你存在我婶婶的脑海里
    你存在我婶婶的脑海里
    多谢,没看到
  • 你存在我婶婶的脑海里
    你存在我婶婶的脑海里
    #include<stdio.h> #include<stdlib.h> int main() { int max,j,k,a; // 分别为最大值 循环总次数 子循环次数 输出循环 int arr[10]; //定义一个十位数的预存空间 int i; //定义循环常数输入十个 for(i=0;i<=9;i++) { scanf("%d,&arr[i]"); //存入10个数 } for(j=0;j<9;j++) { for(k=0;k<(9-j);k++) { if(arr[k]<=arr[k+1]) { arr[k]=max; arr[k+1]=arr[k]; arr[k+1]=max; } } } for(a=0;a<=9;a++) { printf("%d",arr[a]); } return 0; } 能否问一下这个哪里错了吗?求大佬解答
  • 1 回答
  • 0 关注
  • 829 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信