C,总线错误??

软件和网站开发以及相关技术探讨
回复
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
联系:

C,总线错误??

#1

帖子 月下叹逍遥 » 2011-10-19 17:29

http://forum.ubuntu.org.cn/viewtopic.ph ... 7&start=15
VC下正常,geany报错,gcc报线程错误 :em06 :em06
[c]#include"stdio.h"
#include"stdlib.h"
#include"time.h"
void main()
{
int p,c=1,n=0,k,x1=1,x2=1,x3=1;
int t[3][3]={{0,-1,1},{1,0,-1},{-1,1,0}};
float l=0.0;
printf("1,剪刀;2,石头;3,布;0,退出\n");
do
{
printf("请输入你的结果:");
scanf("%d",&p);
srand((unsigned)time(NULL));
c=(int)(rand()%3+1);
c=(int)(c*(1.0*x1+2.0*x2+3.0*x3)/n);
switch(p)
{
case 0:break;break;
case 1:k=t[p-1][c-1];x2++;n++;break;
case 2:k=t[p-1][c-1];x3++;n++;break;
case 3:k=t[p-1][c-1];x1++;n++;break;
default:
printf("输入有误,请重新输入:\n");break;
}
switch(k)
{
case 1:printf("你赢了!\n"),l++;break;
case -1:printf("你输了!\n");break;
case 0:printf("平局!\n");break;
}
}while(p!=0);
printf("一共进行了%d场比赛,胜率为:%f.",n,l/n);
}[/c]
浮生七十今三十,从此凄惶未可知
头像
灰色小狼
帖子: 4585
注册时间: 2008-12-06 10:38
系统: Arch

Re: C,总线错误??

#2

帖子 灰色小狼 » 2011-10-19 17:42

srand((unsigned)time(NULL));拿到循环外试试?
头像
remeber
论坛版主
帖子: 13030
注册时间: 2009-01-06 15:18
来自: 人间

Re: C,总线错误??

#3

帖子 remeber » 2011-10-19 17:44

南瓜搞代码 ?
“有一种被人抛诸脑后的过去,包含一些不该遗忘的点点滴滴。欢笑之余,我将故旧拾起,才刹见自己的薄情。人世间似乎存在着某种公平,每个人都曾被抛掷在他人的遗忘中;而今你所有哽咽难宣的话语,也正是你曾为人所期盼,却永远听不见的字句。” —赫曼 赫塞
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
联系:

Re: C,总线错误??

#4

帖子 月下叹逍遥 » 2011-10-19 17:45

remeber 写了:南瓜搞代码 ?
闲着无聊,做做任务 :em03 :em03
浮生七十今三十,从此凄惶未可知
头像
remeber
论坛版主
帖子: 13030
注册时间: 2009-01-06 15:18
来自: 人间

Re: C,总线错误??

#5

帖子 remeber » 2011-10-19 17:46

开始接任务了呀。树碑围观支持
“有一种被人抛诸脑后的过去,包含一些不该遗忘的点点滴滴。欢笑之余,我将故旧拾起,才刹见自己的薄情。人世间似乎存在着某种公平,每个人都曾被抛掷在他人的遗忘中;而今你所有哽咽难宣的话语,也正是你曾为人所期盼,却永远听不见的字句。” —赫曼 赫塞
头像
灰色小狼
帖子: 4585
注册时间: 2008-12-06 10:38
系统: Arch

Re: C,总线错误??

#6

帖子 灰色小狼 » 2011-10-19 17:46

是这句报错吧,越界了?c=(int)(c*(1.0*x1+2.0*x2+3.0*x3)/n);
n=0
头像
ttand
帖子: 1745
注册时间: 2005-08-22 14:05
来自: 离开北京

Re: C,总线错误??

#7

帖子 ttand » 2011-10-19 17:53

[ttand@myhost ~]$ gcc Desktop/c.c

[ttand@myhost ~]$ ./a.out
1,剪刀;2,石头;3,布;0,退出
请输入你的结果:1
请输入你的结果:1
请输入你的结果:1
你赢了!
请输入你的结果:1
你赢了!
请输入你的结果:1
你赢了!
请输入你的结果:1
平局!
请输入你的结果:2
平局!
请输入你的结果:2
平局!
请输入你的结果:2
平局!
请输入你的结果:2
平局!
请输入你的结果:2
平局!
请输入你的结果:2
平局!
请输入你的结果:2
你输了!
请输入你的结果:2
你输了!
请输入你的结果:2
平局!
请输入你的结果:2
平局!
请输入你的结果:2
你输了!
请输入你的结果:2
你输了!
请输入你的结果:2
你输了!
请输入你的结果:2
你输了!
请输入你的结果:2
请输入你的结果:3
平局!
请输入你的结果:3
你赢了!
请输入你的结果:3
你赢了!
请输入你的结果:4
输入有误,请重新输入:
你赢了!
请输入你的结果:2
平局!
请输入你的结果:2
你赢了!
请输入你的结果:3
你赢了!
请输入你的结果:123
输入有误,请重新输入:
你赢了!
请输入你的结果:2
平局!
请输入你的结果:3
你赢了!
请输入你的结果:1
你输了!
请输入你的结果:31
输入有误,请重新输入:
你输了!
请输入你的结果:3
请输入你的结果:
错过好多好贴,没占到广告位后悔啊
头像
ttand
帖子: 1745
注册时间: 2005-08-22 14:05
来自: 离开北京

Re: C,总线错误??

#8

帖子 ttand » 2011-10-19 17:54

好好玩 好有趣的game
错过好多好贴,没占到广告位后悔啊
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
联系:

Re: C,总线错误??

#9

帖子 月下叹逍遥 » 2011-10-19 18:00

好吧,拿出去之后正常了。。。

但是有BUG了。。。VC竟然没检查出来 :em06 :em06
浮生七十今三十,从此凄惶未可知
头像
remeber
论坛版主
帖子: 13030
注册时间: 2009-01-06 15:18
来自: 人间

Re: C,总线错误??

#10

帖子 remeber » 2011-10-19 18:01

代码: 全选

输入有误,请重新输入:
你赢了!
没输入也羸了?
“有一种被人抛诸脑后的过去,包含一些不该遗忘的点点滴滴。欢笑之余,我将故旧拾起,才刹见自己的薄情。人世间似乎存在着某种公平,每个人都曾被抛掷在他人的遗忘中;而今你所有哽咽难宣的话语,也正是你曾为人所期盼,却永远听不见的字句。” —赫曼 赫塞
头像
ttand
帖子: 1745
注册时间: 2005-08-22 14:05
来自: 离开北京

Re: C,总线错误??

#11

帖子 ttand » 2011-10-19 18:06

月下叹逍遥 写了:好吧,拿出去之后正常了。。。

但是有BUG了。。。VC竟然没检查出来 :em06 :em06
浮点数是可以除0的好像。除0变成一个超大数转换成 int

另外有时候妹输出结果。有时错误输入反而有结果
错过好多好贴,没占到广告位后悔啊
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
联系:

Re: C,总线错误??

#12

帖子 月下叹逍遥 » 2011-10-19 18:27

能力有限,只能写成这样了。。。很有可能是学的VC6.0落伍了。。。 :em06 :em06
浮生七十今三十,从此凄惶未可知
回复