| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1816 人关注过本帖
标题:流程图 流程图化简
取消只看楼主 加入收藏
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
 问题点数:0 回复次数:11 
流程图 流程图化简
最近开始想到编程要画流程图了
但是第一个作业就给我难堪!自己画出的流程图却给不出一个对应的程序阿!非得用goto才能弄出来,可我又不想用goto。所以想请问一下,有没有高手指点一下画流程的技巧或是画了出来后化简的办法
搜索更多相关主题的帖子: 流程图 
2005-08-30 09:23
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 

多谢斑竹关心!!!!!!!!!题下: 做个程序,要求:2. 写一个程序统计在一个C 语言源程序文件中各ANSI C 关键字出现的次数。 我的做法: #include <stdio.h> #include <iostream.h> #include <string.h> void main() { FILE *fp; char word[10]; char* keyword[2]={"int","char"}; int count[2]={0,0}; if((fp=fopen("source.dat","r"))==NULL) { cout<<"cannot open file"<<endl; return; }////给出同目录下的source.dat(只是原来的source.cpp改名而来,为了防止出错debug下也放一个) char ch; ch=fgetc(fp); while(ch!=EOF) { int i=0; while(ch!=' ') { word[i]=ch; ch=fgetc(fp); i++; }///以空格为标志取单词 word[i]='\0';////以上为从文件中取出单词word for(int j=0;j<2;j++) { if(strlen(word)==strlen(keyword[j])&&strcmp(word,keyword[i])==0) count[i]++; }////给出某个单词出现的次数 } for(int j=0;j<2;j++) { cout<<keyword[j]<<" occured "<<count[j]<<" times"<<endl; }////输出单词出现的次数 fclose(fp); }

提示access violation 另外,debug 提示 c 的打开目录找不到 文件 这是我的另一种做法,大致是从源文件中一个一个的读入字符,然后以空格,活()为间隔 存入 字符数组 word 。那他与 keyword比较。得出结果


http://kongfuziandlife. http://codeanddesign.
2005-08-31 14:03
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
斑竹,也可以不管我的想法,但是帮我找到解决问题的源代码。至少让我看看别人是怎么想的阿

http://kongfuziandlife. http://codeanddesign.
2005-09-01 18:35
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
彻底底解决了,斑竹就是强阿!!!!!
以后要多靠你了

http://kongfuziandlife. http://codeanddesign.
2005-09-02 18:49
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
提个,额外的要求,看看我的程序,能告诉我问题在那里吗?

http://kongfuziandlife. http://codeanddesign.
2005-09-02 19:49
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
是阿,呵呵。昨天回去就分析你的程序了 ,思想是和我一开始的想法一样,但我不能和斑竹比阿,斑竹的程序写的真是太漂亮了。用到了一些我查资料才知道的知识。看来斑竹是个滋生的程序员阿!!!我的程序条理性太差了阿! 不过我也要指出斑竹的程序的漏洞阿 ,斑竹给出的程序不能完成题目的要求,至少在某种情况下不能。正如斑竹最后指出的 如果关键字出现在一个单词中,它也被统计一次,不知符合你的要求不?有时是不符合的 比如 ifstream 如果统计 if 。。。还有比如我创建一个叫 intchar的变量 彻底的解决这个问题还有很多要考虑的,比如要去处程序的注释等 还有斑竹的程序效率不是很高,每比较一个关键字就要把文件全部读一编。如果文件很长,关键字很多呢?

http://kongfuziandlife. http://codeanddesign.
2005-09-03 08:41
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
我现在的想法是这样的,将文件读出来,然后将其中的单词按照“空格开始空格结速”“空格开始(结束”“空格开始;结束”等等原则提取出来,放入容器。然后再和关键字比较。这样也许能完全解决问题!
不过还是请斑竹帮助找出其bug,另外最关键的提取字符窜我没有思路阿,希望指教!!!

http://kongfuziandlife. http://codeanddesign.
2005-09-03 08:48
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
呵呵星期天休息,偷懒了一下,马上拿去分析看看,这回可要。。。。。
先谢谢热情的斑竹了 !!!

http://kongfuziandlife. http://codeanddesign.
2005-09-05 13:43
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
似乎 无可挑剔了,但是毕竟我还很嫩,等到我多学了东西之后,我还是能呵呵。。。。
这个程序对于一个正确的书写的cpp的源文件可以完成统计了,
我们的讨论告一段落了

http://kongfuziandlife. http://codeanddesign.
2005-09-06 08:41
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
不负你的期望,呵呵。我又仔细的分析了你的程序。指出如下的bug 斑竹的keyword::include()设计的不完善。可以在测试的源程序中加入 *intchar 测关键字 int试试看。虽然有点吹毛求辟,但是程序是要完美的!!我声名一个叫 intchar 的指针是合法的,然而测试 int 的时候,int 被计入了。不对,我不知道include()函数还有什么其他的缺陷,反正慢慢就会发现的。 其实这个问题我是想到了解决的办法的就是else if(pos != -1) { if( isalnum(word.at(pos-1)) == false &&isalnum(word.at(pos+keyWord.length()))==false) count++; } 但是当我加入这一行后出现以下的情况 重新编译后 第一次可以运行,输出正确的结果,再次执行后程序 不正常中断(abnormal 什么的)。 问题还是要斑竹解决。 另外由于我是初学者有几行代码还是没能理解(很不想承认阿!) ; char ch[2] = {92, 34}; bool found = false; do { found = false; locStringBegin = line.find(ch[0]); if(locStringBegin != string::npos) { if(line.at(locStringBegin+1) ==ch[1]) { line.at(locStringBegin) = ' '; line.at(locStringBegin+1) = ' '; found = true; } } }while(found) 什么作用阿?

http://kongfuziandlife. http://codeanddesign.
2005-09-07 13:35
快速回复:流程图 流程图化简
数据加载中...
 
   



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

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