C/C++の宿題を片付けます 76代目
■ このスレッドは過去ログ倉庫に格納されています
0089デフォルトの名無しさん
2006/11/07(火) 20:31:37以下の様なプログラムを作りなさい。
・メイン関数の引数を用いてユーザ名とパスワードの前半部分を入力する。
・scanfを用いてパスワードの後半部分の入力を要求する。
・前半部分と後半部分を連結して1つのパスワードにする。
・前もって決めたパスワードと一致するか調べ、一致する場合には「OK, ユーザ名」のメッセージを
表示し、一致しない場合はパスワードの文字数を表示する。
以下、自分で考えてみたプログラムです。
#include<stdio.h>
#include<string.h>
#define MAX 20
int main(int argc, char *argv[]) /* ユーザ名をargv[1]としてパスワードの前半をargv[2]とします。*/
{char x[MAX], y[MAX], password[MAX]=abcd;
int i, k, flag=1;
scanf("%s", x);
y[MAX] = *strcat(argv[2], x);
k = strlen(strcat(argv[2], x));
for(i=0;i<=3;i++){
flag *= (y[i] == password[i]);}
if(flag == 1)
printf("OK, %s\n", argv[1]);
else
printf("パスワードの長さ:%d", k);}
ユーザ名はVVVでパスワードの前半はabで実行しパスワードの後半はcdを入力してみたのですが、
ちゃんとなりませんでした。どこをどのように訂正すれば良いのでしょうか?
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: C
[4] 期限: 2006年11月8日18:00まで
[5] その他の制限: C言語を始めて4ヶ月程度なのであまり上級な知識は避けて頂けると助かります。
■ このスレッドは過去ログ倉庫に格納されています