| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 796 人关注过本帖
标题:请各位前辈看看指导,本人初学。
取消只看楼主 加入收藏
梦幻尘
Rank: 2
等 级:论坛游民
帖 子:33
专家分:34
注 册:2012-8-26
结帖率:87.5%
收藏
已结贴  问题点数:20 回复次数:3 
请各位前辈看看指导,本人初学。
题:请输入10个整数,要求最大的和最后一个数换,最小的和第一个数换。

#include <stdio.h>
void main()
{
  void s_port(int *q,int n);
  int a[10],i,*p=a;
  printf("请输入10个整数:\n");
  for(i=0;i<10;i++)
    scanf("%d",p++);
  s_port(p,10);
  printf("输出的整数为:\n");
  p=a;
  for(i=0;i<10;i++)
    printf("%d",p++);
  printf("\n");
}
void s_port(int *q,int n)
{
  int i,k,d,tem,max=min=*q;
  for(i=0;i<n;i++)
    if(max<*(q+i)) {max=*(q+i);k=j;}
    if(min>*(q+i)) {min=*(q+i);d=j;}
 tem=*(q+k);*(q+k)=*(q+n-1);*(q+n-1)=tem;
 tem=*(q+d);*(q+d)=*q;*q=tem;
}
运行结果是第一个数变成了0,其余愿样输出。

[ 本帖最后由 梦幻尘 于 2012-8-26 12:37 编辑 ]
搜索更多相关主题的帖子: void max include 最大的 
2012-08-26 12:32
梦幻尘
Rank: 2
等 级:论坛游民
帖 子:33
专家分:34
注 册:2012-8-26
收藏
得分:0 
回复 2楼 embed_xuel
明白,p=a,被我放错了位置。谢谢!
2012-08-27 08:29
梦幻尘
Rank: 2
等 级:论坛游民
帖 子:33
专家分:34
注 册:2012-8-26
收藏
得分:0 
回复 3楼 q13678986740
局部变量有范围,i不用换!谢谢。
2012-08-27 08:53
梦幻尘
Rank: 2
等 级:论坛游民
帖 子:33
专家分:34
注 册:2012-8-26
收藏
得分:0 
回复 2楼 embed_xuel
唉,q=a;从新赋值明白,重要是s_port这个函数的问题,刚学指针,还不透。
2012-08-27 08:57
快速回复:请各位前辈看看指导,本人初学。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011540 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved