| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1231 人关注过本帖
标题:问大家个 关于 c 的问题`````
只看楼主 加入收藏
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
其实我觉得问题出在
for(d=0;d<=j;d++)

你把d<=j改为d<j就可以了....

淘宝杜琨
2005-04-03 03:31
七七
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2005-3-30
收藏
得分:0 
#include <stdio.h>
void main()
{
    int a[4]={1,0,2,4},b[10];
    int k,j=0,m;
    for(k=0;k<4;k++)
    {
        if(a[k]!=0) {
            b[j]=a[k];
            j++;   }
    }
    printf("%d,%d,%d",b[0],b[1],b[2]);
    getch();
    return;
}

2005-04-03 11:59
jehovahxxx
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2005-1-26
收藏
得分:0 
j=0;
for(i=0;i<N;i++)
if(a[i]==0){b[j]=a[i];j++;}
对不对??
这样 应该可以了吧`
 

#include \"stdio.h\" main() {FILE *myMind; printf(\"Life is A rollercoaster\"); /*生活就像过山车*/ if(myMind=fopen(\"My Heart\",\"w+\")==NULL) printf(\"tomorrow never comes\"); fputs(\"YOU\",myMind); printf(\"U\'R the last things on my mind!\"); }
2005-04-03 12:13
bouluo505
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2004-12-25
收藏
得分:0 

#include <stdio.h> void main() { int a[10]={0,1,2,0,0,4,0,6,0,7}; int i=0,j;

for(j=0;j<10;) { while(!a[j]) j++; a[i++]=a[j++]; } for(j=0;j<i;j++) printf("%d\n",a[j]); }


好好学习,\"歼\"死小日本……
2005-04-04 13:32
激情依旧
Rank: 1
等 级:新手上路
威 望:2
帖 子:524
专家分:0
注 册:2005-4-4
收藏
得分:0 
#include&lt;stdio.h&gt;
main(){
 int a[4]={1,0,2,3},b[4],j=0,i;
 for(i=0;i&lt;4;i++)
 {
  if(a[i]!=0)
  b[j++]=a[i];
 
 }
 for(i=0;i&lt;j;i++)
  printf("%d\t",b[i]);
}

看谁的简单.............我就不给b[4]赋值.......一样不会出错。嘿嘿。不过我只是为了逃避编译而已。所以并不是好方法.过段时间我想想用动态数组.看能不能编译出来

生是编程人!!!!死是编程鬼!!!!颠峰人生!!!焚尽编程!!! 爱已严重死机!情必须重新启动!情人已和服务器断开连接!网恋也需要重新拨号!-----激情依旧
2005-04-04 14:04
guitarliukai
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2004-12-5
收藏
得分:0 
这里的人真热心啊````````

我录的歌 http://1680279./ 我现在打不开了????
2005-04-06 18:36
guitarliukai
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2004-12-5
收藏
得分:0 
我已经 解决了`````

这里的人真热心`````

我会在这里学习的```````

我录的歌 http://1680279./ 我现在打不开了????
2005-04-06 18:41
guitarliukai
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2004-12-5
收藏
得分:0 

非递减的LA和LB,构建个 递增的LC main() {int a[4],b[7],c[4],d[7],e[11],f[11],i,j,l,k,lk,*p,*q,*ff,*ee;

p=&e[0]; /* p=e;*/ q=&f[0]; ff=&f[0]; ee=&e[0];

a[0]=2,a[1]=4,a[2]=5,a[3]=5,b[0]=4,b[1]=4,b[2]=6,b[3]=4,b[4]=4,b[5]=4,b[6]=4;

for(i=0;i<=2;i++) { for(j=0;j<=2-i;j++) if(a[j] != a[j+1]) {lk=a[j];a[j]=a[j+1]; a[j+1]=lk;} else a[j+1]=0; }

for(i=0;i<=5;i++) { for(j=0;j<=5-i;j++) if (b[j] != b[j+1]) {lk=b[j];b[j]=b[j+1];b[j+1]=lk;} else b[j+1]=0; }

for (i=0;i<7;i++) { for(j=0;j<4;j++) { if (a[j] != b[i]) c[j]=a[j]; else a[j]=0;

} /* 判断线形表LA里 是否有 和线形表LB里相同的元素,如果有,就把那个元素的值赋给0 */

} /* for(j=0;j<4;j++) printf("a[%d]=%d\n",j,c[j]); */ for(j=0;j<4;j++) for(i=0;i<7;i++) { { if (b[i] != a[j]) d[i]=b[i]; else b[i]=0;

} } /* 判断线形表LB里 是否有 和线形表LA里相同的元素,如果有,就把那个元素的值赋给0 */

/* for(i=0;i<7;i++) printf("b[%d]=%d\n",i,d[i]); */

for(l=0;l<4;l++) { if(a[l] != 0) e[l]=a[l]; else e[l]=a[l]; } /*把LA的元素:即数组a的元素放到一个新数组E[10]*/ /* for(k=0;k<4;k++) printf("c[i]=%d\n",e[k]); */

for(k=0;k<7;k++) { e[k+4]=b[k] ; } /*把LB里的元素:即数组b的元素插入到数组E[10]*/

/*for(k=0;k<11;k++) printf("c[%d]=%d\n",k,e[k]); */

/* for(k=0;k<11;k++) 先判断数组e里是否为0,不等于0的话就放到数组f { if ((*p) != 0)

{ f[k]=(*p);

printf("c[%d]=%d\n",k,f[k]);

}

p=p+1; } */

for(k=0;k<11;k++) /* 初始化数组 f[]=0*/ { f[k]=0; }

for(k=0;k<11;k++) /*两个分别指向数组e和数组f的指针(p--》e,q--》f)判断数组e中是否有0元素,把非0元素的值顺序放到数组f中*/ { if ((*p) != 0) { (*q)=(*p); q=q+1; p=p+1; } else { p=p+1;} }

for(i=0;i<=9;i++) { for(k=0;k<=9-i;k++) if(f[k] > f[k+1]) {lk=f[k];f[k]=f[k+1];f[k+1]=lk;} }

/* for(i=0;i<11;i++) printf("f[%d]=%d\n",i,f[i]); */ for(i=0;i<11;i++) e[i]=0;

for(k=0;k<11;k++) { if ((*ff) != 0) { (*ee)=(*ff); ee=ee+1; ff=ff+1; } else ff=ff+1; } for(i=0;i<11;i++) if (e[i] != 0) printf("eee[%d]=%d\n",i,e[i]);

} 已经做出来了````哈```` 大家看看先```


我录的歌 http://1680279./ 我现在打不开了????
2005-04-06 18:42
adm_qxx
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2005-4-5
收藏
得分:0 

三楼的做法就不错.既简单又明了.

楼上的写法不是很赞同.建议找一本介绍C语言编码规范的书来读. 斗胆重写楼上的程序,还请指教. #include<stdio.h> #include<conio.h>//包含函数getch() main() { int i,j=0; int a[4]={1,2,0,4},b[4]; for(i=0;i < 4;i++) { if(a[i] != 0) //建议把!=0写上以增加可读性 { b[j]=a[i]; j++; } } for(i=0;i < j;i++) //建议写d < j,这样循环次数正好是j次.这样增加可读性. { printf("%d\n",b[i]); //局部变量可以重用没必要定义太多的变量. } getch();//保住运行界面,击任意键退出. }


学习是进步的基础.
2005-04-07 08:07
zhangabc
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-4-7
收藏
得分:0 
2005-04-07 08:09
快速回复:问大家个 关于 c 的问题`````
数据加载中...
 
   



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

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