来一个C程序

HarveyBoys 2013-01-09 09:30:39
1.利用指向一维数组的指针作为函数参数具体实现:
(1)求数组最大元素及其所在位置。函数首部为:void fun_max(int * x, int * max, int *p,int n),其中x为指向数组的指针,max为指向最大元素的指针,p为指向最大元素位置的指针,n为数组元素的长度。
(2)利用选择排序对数组元素按照从小到大排序。
函数首部为:void sort(int * x, int n) ,其中x为指向数组的指针,n为数组元素的长度。
...全文
126 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
HarveyBoys 2013-01-10
  • 打赏
  • 举报
回复
谢谢你啊大神,我还有一个能帮忙不能? 写四个函数,要求利用指针实现字符串的复制、连接、比较和求字符串的长度。 函数首部分别为:void str_copy(char *str1 ,char *str2) void str_cat(char *str1 ,char *str2) void str_cmp(char *str1 ,char *str2) int str_len(char *str1 ,char *str2) 如果可以的话麻烦帮助下,
图灵狗 2013-01-09
  • 打赏
  • 举报
回复

#include <stdio.h>

void fun_max(int* x, int* max, int* p, int n)
{
  int i;

  *max = x[0];
  *p = 0;
  for(i = 1; i < n; i++)
    if(x[i] > *max){
      *max = x[i];
      *p = i;
    }
}

void sort(int* x, int n)
{
  int i, j, k;
  int temp;

  for(i = 0; i < n - 1; i++){
    k = i;
    for(j = i + 1; j < n; j++)
      if(x[j] < x[k])
	k = j;
    temp = x[i];
    x[i] = x[k];
    x[k] = temp;
  }
}

int main(int argc, char* argv[])
{
  int x[] = {19, 26, 47, 6, 26, 18};
  int max;
  int p;
  int i;

  fun_max(x, &max, &p, 6);
  sort(x, 6);

  printf("max=%d, p=%d\n", max, p);
  printf("x=");
  for(i = 0; i < 6; i++)
    printf("%d ", x[i]);
  printf("\n");

  return 0;
}

69,382

社区成员

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

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