| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 707 人关注过本帖
标题:一个猜单词的游戏~不过就是无法正常运行(再次捞出来大家看一下哦)
只看楼主 加入收藏
工藤♀新一
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2006-5-4
收藏
 问题点数:0 回复次数:6 
一个猜单词的游戏~不过就是无法正常运行(再次捞出来大家看一下哦)

一个猜单词的游戏~每次可以猜一个字母~总共可以猜8次,单词先显示“----”,猜到一个就用那个字母代替‘-’~直到猜中~
现在只存了2个单词~计算机会从2个中任选一个让玩家猜
大家帮我看看吧~~~为什么无法正常运行?

#include "stdio.h"
#include "Malloc.h"
#include "string.h"
char gamestart();
void gamejudge(char str[]);
struct w /*先用结构题存单词(那时没想到用*P[n]的字符串数组)*/
{ char *name;
int number;
};
char answer;
int times=8;
int i;
struct w words[2]={{"book",0},{"car",1}};存了2个单词

main()
{ char *wd;
wd=gamestart();
while(times!=0)
{gamejudge(wd);}
getch();
}
char gamestart()
{
int n,j;
char *word;
i=rand()%2;
n=strlen(words[i].name); 测量单词的长度用来显示多少个‘-’
word=malloc(n); 定义一个动态CHAR数组
for(j=0;j<n;j++) 让数组中个每个元素都为‘-’
word[j]='_';
return(word);
}

void gamejudge(char *str)
{
int j;
printf("The word now looks like %s\n",str);
printf("You have %d guesses left\n",times);
printf("You guess: "); 接收输入的一个字母
scanf("%c",&answer);
times=times-1; 猜的次数减1
for(j=0;j<strlen(str);j++)
if(str[j]==answer) 判断有没有猜中,猜中就替换
{ str[j]=answer;
printf("\nThat is correct\n");
break;
}
else if(j==strlen(str)) 判断没猜中
printf("There is no %c in the word\n",answer);
if(strcmp(words[i].name,str)==0)
{printf("You guess the word %s",str);
printf("You win ");
}
}


[此贴子已经被作者于2006-5-17 18:16:16编辑过]

搜索更多相关主题的帖子: 单词 游戏 运行 
2006-05-06 10:50
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
#include "Malloc.h"

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-05-06 10:51
工藤♀新一
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2006-5-4
收藏
得分:0 
楼上的什么意思?

很高兴能和大家一起学习程序! QQ:114109098
2006-05-06 10:55
soft_wind
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:1430
专家分:0
注 册:2006-4-5
收藏
得分:0 
以下是引用工藤♀新一在2006-5-6 10:50:00的发言:

一个猜单词的游戏~每次可以猜一个字母~总共可以猜8次~直到猜中~
现在只存了2个单词~计算机会从2个中任选一个让玩家猜
大家帮我看看吧~~~为什么无法正常运行?

#include "stdio.h"
#include "Malloc.h"
#include "string.h"
char gamestart();
void gamejudge(char str[]);
struct w
{ char *name;
int number;
};
char answer;
int times;   /*全局变量默认初始为0,所以程序不能运行*/
int i;
struct w words[2]={{"book",0},{"car",1}};

main()
{ char *wd;
wd=gamestart();
while(times!=0)
{gamejudge(wd);}
getch();
}
char gamestart()  /*不是返回指针吗?*/
{
int n,j;
char *word;
i=rand()%2;   /*随机生成的永远是同一个数,应该在前面再加上srand(time(NULL));*/
n=strlen(words[i].name);
word=malloc(n);
for(j=0;j<n;j++) /*不知道你在这里要干吗?*/
word[j]='_';
return(word);
}

void gamejudge(char *str)
{
int j;
printf("The word now looks like %s\n",str);
printf("You have %d guesses left\n",times);
printf("You guess: ");
scanf("%c",&answer);
times=times-1;     /*下面的这些狗屁不通,不好意思,可能语气说重了,但真的不行,你自己改*/
for(j=0;j<strlen(str);j++)
if(str[j]==answer)
{ str[j]=answer;
printf("\nThat is correct\n");
break;
}
if(j==strlen(str))
printf("There is no %c in the word\n",answer);
if(strcmp(words[i].name,str)==0)
{printf("You guess the word %s",str);
printf("You win ");
}
}



对不礼貌的女生收钱......
2006-05-06 11:32
工藤♀新一
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2006-5-4
收藏
得分:0 
哦~~~谢谢了

很高兴能和大家一起学习程序! QQ:114109098
2006-05-06 11:53
工藤♀新一
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2006-5-4
收藏
得分:0 
注释注的不是很顺眼,麻烦大家将就着看吧

很高兴能和大家一起学习程序! QQ:114109098
2006-05-16 20:20
工藤♀新一
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2006-5-4
收藏
得分:0 
等~

很高兴能和大家一起学习程序! QQ:114109098
2006-05-16 20:36
快速回复:一个猜单词的游戏~不过就是无法正常运行(再次捞出来大家看一下哦)
数据加载中...
 
   



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

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