| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1525 人关注过本帖
标题:小人不才,实在想不出了.
只看楼主 加入收藏
雪不归
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-29
收藏
得分:0 

不好意思哈
只是兄弟,我不知道错误的话不好进步啊,我真的那么菜吗??
还有你的那个程序我调试了下,你所做的是对随机数进行排序吗?只要输入一个数就直接给出结果了~~
我想对自己输入的数进行排序.

哦,你的程序对我而言有些地方有些难啊,比如那个包含 time.h的
那是一个什么头文件?
我真的好想知道自己的错误所在



小弟真的不才~~~

2006-04-30 13:09
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 

发帖一次说明白~不要一句话发一次


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-04-30 13:14
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
哦,其实你的错误说多也不是很多的
你仔细看看我贴出来的一段代码,和你原来的那段代码比较一下就知道那里有问题了

你原来的代码:
for(i=0;i<n;i++)
scanf("%d",a[i]);
for(i=0;i<n;i++)  /*判断排序的次数*/
for(i=n-1;i>=0;i--)  /*进行排序,每次将一个最小的数上移*/
{
if(a[i]<a[i-1])
{
temp=a[i];
a[i]=a[i-1];
a[i-1]=temp;
}
}


我修改的代码
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=1;i<n;i++)/*判断排序的次数*/
for(k=i-1;k>=0;k--)/*进行排序,每次将一个最小的数上移*/
{
if(a[k]<a[k+1])
{
temp=a[k];
a[k]=a[k+1];
a[k+1]=temp;
}
}

淘宝杜琨
2006-04-30 13:17
雪不归
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-29
收藏
得分:0 
对不起~~~
我只是在求教,因为一下子弄不明白~~而且我是看一次他们方案我就调试一次的,因为没成功,所以~~
我又有问题了~~

楼上的大哥,我刚才在排序之前就先对数组中的数进行了输出,发现,在我输入的时候,数组中的数就已经不是我所输入的数了~~
我想,错误真的很多
C这么难嘛~~~
2006-04-30 13:20
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
因为你这句
for(i=0;i<n;i++)
scanf("%d",a[i]);
错了

所以我把它列入我修改的范围

淘宝杜琨
2006-04-30 13:23
雪不归
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-29
收藏
得分:0 
啊哈哈~~~
大哥哈,谢谢了,这真的是个初级错误哦,浪费你这么多时间真的对不起~~~万分感谢~~
只是`~
呵呵
还有一点小小的问题
排序方面是没有问题了,可是在循环使用这里不对,我本意是在一次排序结束后问:"还需要继续使用吗?"
但是运行的时候这句话会出现,可是不会等待用户确认,任意键结束了~~这是为何??
如果去掉那个
getch();
的话,他输出结果之后按任意键就关闭了,Why??
最后的问题了~~
谢谢
2006-04-30 13:30
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
你把getch()改为getchar()看看~

淘宝杜琨
2006-04-30 13:37
雪不归
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-29
收藏
得分:0 
谢谢,太谢谢了!!!
为什么getch()
会没有用呢?

呵呵,我给你发短信了
我在Linux学习中~~~
2006-04-30 13:41
雪不归
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-29
收藏
得分:0 
神vLinux飘飘

真的很强~~~
2006-04-30 13:42
韦应贵
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2006-4-30
收藏
得分:0 
[CODE]

小弟不才呀,请各位大哥大姐帮忙看看我的程序,顺便帮我修改一下好吗?小弟在这,先谢谢了

[/CODE]#define NULL 0
struct term
{int coef;
int expn;
struct term *next;
};
int n;
struct term *creat(void)
{struct term *La;
struct term *p1,*p2;
n=0;
p1=p2=(struct term *)malloc(sizeof(struct term));
scanf("%d,%d",&p1->coef,&p1->expn);
La=NULL;
while(p1->coef!=0)
{n=n+1;
if(n==1)La=p1;
else p2->next=p1;
p2=p1;
p1=(struct term *)malloc(sizeof(struct term));
scanf("%d,%d",&p1->coef,&p1->expn);
}
p2->next=NULL;
return(La);
}
void print(struct term *La)
{struct term *p;
printf("\nNOW,there %d items are :\n",n);
p=La;
if(La!=NULL)
do
{printf("%d%d",p->coef,p->expn);
p=p->next;}while(p!=NULL);
}
void sort(struct term *La)
{struct term *q,*p,*r;
int i,j,temp,ts,min,max;
p=La;
q=p->next;
while(p!=NULL)
{max=p->coef;
min=p->expn;
r=p;
while(q!=NULL)
{if(min>q->expn)
{max=q->coef;min=q->expn;r=q;}
q=q->next;}
temp=p->expn;ts=p->coef;
p->expn=r->expn;p->coef=r->coef;
r->expn=temp;r->coef=ts;
p=p->next;
q=q->next;
}
}
void *add(struct term *La,struct term *Lb)
{struct term *p1,*p2,*mid;
p1=La->next;p2=Lb->next;mid=Lb->next;
while(p1&&p2)
{if(p1->expn<p2->expn)
{La=p1;p1=p1->next;}
else if(p1->expn==p2->expn)
{p1->coef=p1->coef+p2->coef;mid=mid->next;
if(p1->coef==0)
{La->next=p1->next;free(p1);}
mid=p2;Lb->next=p2->next;free(p2);
p2=p2->next;p1=p1->next;}
else if(p1->expn>p2->expn)
{Lb->next=p2->next;La->next=p2;
p2->next=p1;mid=p2;
p2=p2->next;p1=p1->next;}
}
if(Lb)p1->next=p2;free(p2);
return(La);
}
main()
{struct term *La,*Lb;
printf("\ninput the La:\n" );
La=creat();
print(La);
printf("\ninput the Lb:\n");
Lb=creat();
print(Lb);
sort(La);
print(La);
sort(Lb);
print(Lb);
add(La,Lb);
print(La);

}

2006-04-30 13:49
快速回复:小人不才,实在想不出了.
数据加载中...
 
   



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

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