| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 737 人关注过本帖
标题:[原创]一个密码文件合并程序
只看楼主 加入收藏
thao888
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-24
收藏
 问题点数:0 回复次数:10 
[原创]一个密码文件合并程序

/*******************************************************************************/
/* 密码文件合并程序 */
/* 主函数第一个参数为密码文件1,第二个参数为密码文件2,第三个参数为合并生成的*/
/*新密码文件,第四个参数为合并方式:-c表示把两个文件进行连接,-u表示把两个文件 */
/*进行合并(即:把第一个文件中的密码和第二个文件中的密码进行组合,生成新的密码)。*/
/*密码文件中每个密码占一行,并以回车换行。 */
/*******************************************************************************/
#include <stdio.h>
#include <string.h>

int main(int argc,char *argv[])
{

char str[50],str1[50];
FILE *f1,*f2,*f3;
int count=0;

/*参数判断*/
if(argc!=5||(strcmp(argv[4],"-c")&&strcmp(argv[4],"-u")))
{
printf("paramiter error!");
exit(1);
}

/*判断文件打开是否出错*/
if((f1=fopen(argv[1],"r"))==NULL)
{
printf("file1 can't open!");
exit(1);
}
if((f2=fopen(argv[2],"r"))==NULL)
{
printf("file2 can't open!");
exit(1);
}
if((f3=fopen(argv[3],"w"))==NULL)
{
printf("file3 can't open!");
exit(1);
}

/*文件连接*/
if(!strcmp(argv[4],"-c"))
{
while(!feof(f1))
{
strcpy(str,"");
fscanf(f1,"%s",str);
if(strlen(str))
{
fprintf(f3,"%s%c",str,'\n');
count++;
}
}
while(!feof(f2))
{
strcpy(str,"");
fscanf(f2,"%s",str);
if(strlen(str))
{
fprintf(f3,"%s%c",str,'\n');
count++;
}
}
}

/*密码组合*/
else
{
while(!feof(f1))
{
strcpy(str,"");
fscanf(f1,"%s",str);
if(strlen(str))
{
rewind(f2);
while(!feof(f2))
{
strcpy(str1,"");
fscanf(f2,"%s",str1);
if(strlen(str1))
{
fprintf(f3,"%s%s%c",str,str1,'\n');
count++;
}
}
}
}
}
printf("一共生成%d个密码!\n",count);
printf("作者:飞扬");
fclose(f1);
fclose(f2);
fclose(f3);
return 0;
}


[此贴子已经被作者于2006-4-29 16:39:54编辑过]

搜索更多相关主题的帖子: 密码文件 参数 函数 
2006-04-29 16:03
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
改进的地方还很多,结构有些混乱

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-04-29 16:16
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
不需要在命令行输入,还是在运行程序是用提示的方式输入比较好,你自己知道在命令行怎么输入,别人用你的程序就不知道了

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-04-29 16:17
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
fprintf(f3,"%s%s%c",str,str1,'\n');


fprintf(f3,"%s%s%c\n",str,str1,);

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-04-29 16:18
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
if((f1=fopen(argv[1],"r"))==NULL)
{
printf("file1 can't open!");
return 0;
}


用exit(1);

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-04-29 16:19
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
[IMG]http://www.bc-cn.net/bbs/UploadFace/55019.gif[/IMG]

一气说完呀

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-04-29 16:20
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
return 1;


用 0

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-04-29 16:21
thao888
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-24
收藏
得分:0 
太感谢了
2006-04-29 16:31
thao888
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-24
收藏
得分:0 

exit(1)和exit(0)
return 0和return 1
有什么区别?请高手赐教,我有点糊涂!

2006-04-29 16:42
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
以下是引用thao888在2006-4-29 16:42:00的发言:

exit(1)和exit(0)
return 0和return 1
有什么区别?请高手赐教,我有点糊涂!

1用代表成功退出,0代表失败退出(exit时候)
1代表个操作系统返回失败值,0 success

也都能用,反正你看不到问题,系统能看到


日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-04-29 16:46
快速回复:[原创]一个密码文件合并程序
数据加载中...
 
   



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

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