C/C++の宿題を片付けます 82代目

このエントリーをはてなブックマークに追加
956デフォルトの名無しさん
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):crypt_sample.c を参考に、入力したキーワードをハッシュ値から
見つけ出すプログラムを作成する。
見つけ出すまでに要した時間も表示すること。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: ([2007年1月14日まで]
#include <stdio.h>
#include <crypt.h>
main()
{
char real_pw[256]; char sent_pw[256];
char salt[3];
int flag;
printf("Enter new keyword :");
scanf("%s",sent_pw); srand(getpid());
salt[0] = 'a' + rand()%('z'-'a' + 1);
salt[1] = 'a' + rand()%('z'-'a' + 1); salt[2] = '\0';
printf("salt = %s\n",salt);
strcpy(real_pw,crypt(sent_pw,salt));
printf(" Cryptic key is %s\n\n",real_pw);
for (flag=1; flag ;) {
printf("Enter keyword to verify:");
scanf("%s",sent_pw);
if ( strcmp(real_pw, crypt(sent_pw,real_pw)) ) {
printf("Mismatch\n"); } else {
printf(" Match !\n"); flag=0; }
printf(" %s\n", real_pw);
printf(" %s\n", crypt(sent_pw,real_pw));
} }