亲爱的们,输入10个数,把最大的与第一个数交换,最小的与最后一个数交换,用指针,看看我这个程序哪不对。。。

XKXDKLN 2012-05-24 09:56:07
#include<stdio.h>
#define N 10
main()
{ int a[N],*u,*p,n=0,*q,*m,i;
clrscr();
printf("Please input number:");
for(i=0;i<=9;i++)
scanf("%d",&a[i]);

q=p=a;m=NULL;
for(p=a;p<a+10;p++)
{ if(*p>*m)
m=p;
n++;
}

if(m!=NULL)
{ int t;
t=*m;
*m=*q;
*q=t;
}
p=a;
while(p!=0)
p++;
u=a;
for(q=a;q<a+10;q++)
{ if(*q+1<*u)
u=q+1;
}
if(u!=a)
{ int l;
l=*u;
*u=*p;
*p=l;
}
for(p=a;p<a+10;p++)
printf("%4d",*p);
getch();
}
...全文
212 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
PANHL97 2012-05-24
  • 打赏
  • 举报
回复

#include<stdio.h>
#include<stdlib.h>
#define N 10
main()
{
int a[N],*u,*p,n=0,*q,*m,i;
int t;
int l;
system("cls");
printf("Please input number:");
for(i=0;i<=9;i++)
scanf("%d",&a[i]);

q=p=m=u=a;
for(p=a+1;p<a+10;p++)
{
if(*p>*m)
m=p;
if(*p<*u)
u=p;
}
t=*m;
*m=*a;
*m=t;
q=a+9;
l=*u;
*u=*q;
*q=l;
for(p=a;p<a+10;p++)
printf("%4d",*p);
getch();
}
liutengfeigo 2012-05-24
  • 打赏
  • 举报
回复
本ID回寝室了.不刷了.

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧