| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1858 人关注过本帖
标题:改变不了数组a的值,哪里错了
取消只看楼主 加入收藏
NIALK
Rank: 1
等 级:新手上路
帖 子:15
专家分:6
注 册:2019-2-3
结帖率:0
收藏
已结贴  问题点数:20 回复次数:0 
改变不了数组a的值,哪里错了
un函数功能是:删除一堆数组中所有相同的数,使之只剩一个。数组中的数已按有小到大排序,函数返回删除后数组中的个数;
例如:
2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10
删除后
2 3 4 5 6 7 8 9 10

函数
#include <stdio.h>
#define N 80int fun(int a[], int n)
{
  int i,b[20],k=0;
  b[0]=a[0];
      for(i=0;i<n;i++)
      {
        if(b[k]!=a[i])
        {b[k+1]=a[i];
        k++;}
      }return k+1;
      for(i=0;i<k;i++)
       a[i]=b[i];
      
      
}
void main()
{
  FILE *wf;
  int a[N]={ 2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,10}, i, n=20;
  printf("The original data :\n");
  for(i=0; i<n; i++)  
     printf("%3d",a[i]);
  n=fun(a,n);
  printf("\n\nThe data after deleted :\n");
  for(i=0; i<n; i++)  
     printf("%3d",a[i]);  
  printf("\n\n");
/******************************/
  wf=fopen("out.dat","w");
  for(i=0; i<n; i++)  
     fprintf(wf,"%3d",a[i]);
  fclose(wf);
/*****************************/
}
图片附件: 游客没有浏览图片的权限,请 登录注册

搜索更多相关主题的帖子: 数组 int for i++ printf 
2019-02-16 13:15
快速回复:改变不了数组a的值,哪里错了
数据加载中...
 
   



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

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