首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

小弟我只想说求解释这段代码,可以编译但是没有结果

2013-07-08 
我只想说求解释这段代码,可以编译但是没有结果#include stdio.h#include ctype.h#include stdlib.hi

我只想说求解释这段代码,可以编译但是没有结果
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
int
hash(char *s)
{
int i, h;
 
h = 1;
for(i=0; s[i] && isalpha(s[i]); i++)
h = ((s[i]-'A'+1)*h) % 47;
return h;
}
 
void
main(void)
{
FILE *in, *out;
char comet[100], group[100];  /* bigger than necessary, room for newline */
 
in = fopen("ride.in", "r");
out = fopen("ride.out", "w");
 
fgets(comet, sizeof comet, in);
fgets(group, sizeof group, in);
 
if(hash(comet) == hash(group))
fprintf(out, "GO\n");
else
fprintf(out, "STAY\n");
exit (0);
}
小弟我只想说求解释这段代码,可以编译但是没有结果
这是编译出来的结果
[解决办法]
应该是文件没有正确打开.遇到错误,直接退出的结果.
[解决办法]
你把文件,改成你要的名字,比如你上面fopen 里面的名字,然后加到相应的工程文件夹下面就可以了.

[解决办法]

in = fopen("ride.in", "r");
改为
in = fopen("ride.in", "r");if (NULL==in) {printf("Can not open file ride.in!\n");exit(1);}

[解决办法]
如果你说的“没有结果”是指没有屏幕输出的话……

这段程序本来就没有屏幕输出,它从文件ride.in读入两行文本,然后求它们的哈希Key,比较两个hash_key,根据相等与否向文件ride.out输出不同内容。
[解决办法]
两行文件,文件名为ride.in,放在你程序的运行目录

热点排行
Bad Request.