| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5809 人关注过本帖
标题:大神路过就帮帮忙吧。写作业,写完上传后发现被系统认定出了错,如下;但是 ...
取消只看楼主 加入收藏
唯光阿九
Rank: 2
等 级:论坛游民
帖 子:21
专家分:59
注 册:2016-6-10
结帖率:100%
收藏
已结贴  问题点数:25 回复次数:5 
大神路过就帮帮忙吧。写作业,写完上传后发现被系统认定出了错,如下;但是我真的找不到哪里出了问题,调试也没用......
系统判断是这样的
图片附件: 游客没有浏览图片的权限,请 登录注册

它要求运行出来是这样的
图片附件: 游客没有浏览图片的权限,请 登录注册

文件打开方式是这样的
图片附件: 游客没有浏览图片的权限,请 登录注册

我写的程序是这个,求各位大神帮帮忙
程序代码:
#include <stdio.h>
#include <string.h>

typedef struct weizhang
{
    char chehao[20]; 
    char riqi[30];
    char leixing[30];
} WEIZHANG;

int main(void)
{
    FILE *fp;
    WEIZHANG wenjian[20];
    int i = 0, count = 0, flag = 0;
    char shuru[30];

    fp = fopen("jtwz.txt", "r");
    if (fp == NULL)
    {
        printf("文件打开失败,请检查文件名及路径是否正确、文件是否存在!");
        return 0;
    }
    printf("请输入要查找的违章类型:");
    gets(shuru);
    printf("\n查找结果为:\n");
    while (!feof(fp))
    {
        fscanf(fp, "%s %s %s", 
                wenjian[i].chehao, wenjian[i].riqi, wenjian[i].leixing);
        if (strcmp(wenjian[i].leixing, shuru) == 0)
        {
            flag = 1;
            count++;
            printf("%d %-8s, %-10s, %-8s\n", 
                    count, wenjian[i].chehao, wenjian[i].riqi, wenjian[i].leixing);
        }
        i++;
    }
    if (flag == 0)
    {
        printf("文件中没有找到“%s”的记录\n", shuru);
    }
    fclose(fp);
    return 0;
}
运行下来也没问题啊,调试我看到也合格的。。。
搜索更多相关主题的帖子: color 
2016-06-13 17:06
唯光阿九
Rank: 2
等 级:论坛游民
帖 子:21
专家分:59
注 册:2016-6-10
收藏
得分:0 
那个我截了图。。前辈你们看帖子里文件打开后那个,就是文件本身打开的样子。格式也是那个样子。记录数,我后来打开文件数过,只有12条记录。这些我都确定没有错啊,运行出来效果和程序要求那个样子一样。运行没有问题,但始终它就提示那个样子,如果不是我写的那个程序出了一个不易察觉的溢出,就是它系统抽风了。我这把文本文件一起传上来。
jtwz.zip (697 Bytes)
前辈你们再看看吧。
2016-06-14 00:25
唯光阿九
Rank: 2
等 级:论坛游民
帖 子:21
专家分:59
注 册:2016-6-10
收藏
得分:0 
题目是:“编写一程序P340.C实现以下功能
  有一存储很多交通违章记录的文本文件,每条记录包括车牌号(1个汉字+6个字符)、发生日期、违章类型(最多4个汉字)。从键盘输入违章类型的名称,要求在文件中查找并显示相应的记录(可能有多条记录或没有)。
  单击此处下载程序运行时测试用的违章记录文件jtwz.txt并保存到程序P340.C所在的文件夹且文件名保持不变。编程可用素材:printf("请输入要查找的违章类型:")、printf("文件打开失败,请检查文件名及路径是否正确、文件是否存在!")、printf("\n查找结果为:\n")、printf("文件中没有找到“…”的记录\…。
  程序的运行效果应严格地如图1、图2(就是第一个的第二张图)所示,图中的红色部分是从键盘输入的内容。”题目运行要求是我第一个发的那样,上传后它回应的是第一张图。事实上我看到出了问题调试1个多小时发现没有问题。然后我看见我同学做的,他没用结构体,循环一次重新赋值一次,除此之外和我差异最大的是fscanf(fp, "%s %s %s", wenjian[i].chehao, wenjian[i].riqi, wenjian[i].leixing)这条语句,他写成fscanf(fp, "%s %d.%d.%d %s", arr1, a, b, c, arr2);这样类似,但是他能得分,我都不晓得为啥子。。系统要求也没说不能用结构体吧。而且我用法也应该没错吧、对这学校系统醉了。。。
我查了一下,学校系统是“但在本系统设置(可能是系统默认值或以前设置过)却是TC”,我用的是VC6.0,TC有什么比较特别的要求吗?这两个有什么不一样或者有差异的地方吗?
2016-06-14 10:52
唯光阿九
Rank: 2
等 级:论坛游民
帖 子:21
专家分:59
注 册:2016-6-10
收藏
得分:0 
我刚刚把程序改成了这个样子,就没问题了。我同样不理解为啥子。。。好神奇。
程序代码:
#include <stdio.h>
#include <string.h>

typedef struct weizhang
{
    char chehao[20]; 
    int year;
    int month;
    int day;
    char leixing[30];
} WEIZHANG;

int main(void)
{
    FILE *fp;
    WEIZHANG wenjian[30];
    int i = 0, count = 1, flag = 0;
    char shuru[30];

    fp = fopen("jtwz.txt", "r");
    if (fp == NULL)
    {
        printf("文件打开失败,请检查文件名及路径是否正确、文件是否存在!");
        return 0;
    }
    printf("请输入要查找的违章类型:");
    gets(shuru);
    printf("\n查找结果为:\n");
    while (!feof(fp))
    {
        fscanf(fp, "%s %d.%d.%d %s", 
                wenjian[i].chehao, &wenjian[i].year,
                &wenjian[i].month, &wenjian[i].day, wenjian[i].leixing);
        if (strcmp(wenjian[i].leixing, shuru) == 0)
        {
            flag = 1;
            printf("%d %-8s, %d.%02d.%02d, %-8s\n", 
                    count, wenjian[i].chehao, wenjian[i].year,
                    wenjian[i].month, wenjian[i].day, wenjian[i].leixing);
            count++;
        }
        i++;
    }
    if (flag == 0)
    {
        printf("文件中没有找到“%s”的记录\n", shuru);
    }
    fclose(fp);
    return 0;
}

我觉得没有什么大的不同啊,运行出来结果也一样啊。。。神奇。。。
2016-06-14 11:58
唯光阿九
Rank: 2
等 级:论坛游民
帖 子:21
专家分:59
注 册:2016-6-10
收藏
得分:0 
回复 11楼 rjsp
文件里面记录我打开确认过只有12条,我为了有容错空间,把它设定为20的、、后面又以为是小了,改成30个。最后发现没什么卵用。。。学校系统的原因吧。。
2016-06-14 12:00
唯光阿九
Rank: 2
等 级:论坛游民
帖 子:21
专家分:59
注 册:2016-6-10
收藏
得分:0 
谢谢各位前辈帮忙,可用分不多,就当心意到了吧。。。
2016-06-14 12:39
快速回复:大神路过就帮帮忙吧。写作业,写完上传后发现被系统认定出了错,如下; ...
数据加载中...
 
   



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

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