| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 410 人关注过本帖
标题:[求助]本人想请教大家一些问题
只看楼主 加入收藏
中山DJ肥仔
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-4-20
收藏
 问题点数:0 回复次数:3 
[求助]本人想请教大家一些问题

/*给定程序modi.c中,函数fun的功能是:求出a所指数组中最大数和次最大数(规定最大数和次最大数不在a[0]和a[1]中,依次和a[0]、a[1]中的数对调。
例如数组中原有的数为:7、10、12、0、3、6、9、11、5、8,
输出的结果为:12、11、7、0、3、6、9、10、5、8。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!*/
#include <conio.h>
#include <stdio.h>
#define N 20

int fun(int *a,int n)
{int k,m1,m2,max1,max2,t;
max1=max2=-32768;m1=m2=0;
for (k=0;k<n;k++)
if(a[k]>max1)
{ max2=max1;m2=m1;
max1=a[k];m1=k;
}
else if (a[k]>max2)
{ max2=a[k];m2=k;}
/************found************/
t=a[0];a[m1]=a[0];a[m1]=t;
/************found************/
t=a[1];a[m2]=a[1];a[m2]=t;
}

main()
{ int x,b[N]={7,10,12,0,3,6,9,11,5,8},n=10,i;
clrscr();
for (i=0;i<n;i++) printf("%d ",b[i]);printf("\n");
fun(b,n);
for(i=0;i<n;i++) printf("%d ",b[i]);printf("\n");
}




如果知道的可以加我QQ:362604147


( modi.c) ONE

2007-04-21 12:34
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
这个题目我不是已经给你解答了吗,为什么还要发过来呀?
受不了......

~~我的明天我知道~~
2007-04-21 12:41
中山DJ肥仔
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-4-20
收藏
得分:0 
pinglideyu没有讲啊..我有发过吗?
2007-04-21 13:31
k_summer7
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-3-19
收藏
得分:0 

这个题目其实就是选择排序的一部分思想,可以借鉴选择排序即可轻松解决,我写了一个,在VC6.0验证通过,你可以参考一下:


#include<stdio.h>

#define SIZE 7
void foo(int *array, int size)
{
int i,j,maxPos;

for(i=0; i<2; i++)
{
maxPos = i;
for(j=i+1; j<size; j++)
if(array[maxPos] < array[j])
maxPos = j;
if(maxPos != i)
{
array[i] ^= array[maxPos];
array[maxPos] ^= array[i];
array[i] ^= array[maxPos];
}
}

return;
}

int main(void)
{
int array[SIZE];
int i;

printf("input %d numbers:\n",SIZE);
for(i=0; i<SIZE; i++)
scanf("%d",&array[i]);
foo(array,SIZE);
printf("the result:\n");
for(i=0; i<SIZE; i++)
printf("%-5d",array[i]);
printf("\n");

return -1;
}

2007-04-21 13:43
快速回复:[求助]本人想请教大家一些问题
数据加载中...
 
   



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

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