int no;
scanf("%d", &no); // 生徒番号を入力
chechno(no);
:
:
int chechno(int no) // 生徒番号が数字以外入力されていないかチェック
{
:
:
}
生徒番号を入力して、その番号が数字以外が入力されていないか、チェックする関数を作ろうと思ったのですが、noをcheckno関数に渡したものの、そのあとをどうすればいいのか分かりません。
そのnoを配列に入れて、一文字ずつ走査して、isdigit関数を用いてチェックしようと思ったのですが、
noの値をどのようにしたら、配列に入れることができるのですか?
整数値を数字文字に変換
Re:整数値を数字文字に変換
>int no;
>scanf("%d", &no); // 生徒番号を入力
int型で入力したのだから、数字以外は元々、入力されていません。
何を、したいのかもう少し、具体的に示してください。
例えば、生徒番号に規則があるとか、範囲があるとか。
>scanf("%d", &no); // 生徒番号を入力
int型で入力したのだから、数字以外は元々、入力されていません。
何を、したいのかもう少し、具体的に示してください。
例えば、生徒番号に規則があるとか、範囲があるとか。
Re:整数値を数字文字に変換
scanf("%d", &no);
に"123abc"入力したら数字部分の123のみnoに入ります
"abc123"と入力したらnoには何も入らなくscanfが0を返します
scanf( )で%d使った時点で数字のみ入力されています
自分でチェックしたいならfgets( )やscanf("%s", ~)で文字列として読み込んだらいいでしょう
に"123abc"入力したら数字部分の123のみnoに入ります
"abc123"と入力したらnoには何も入らなくscanfが0を返します
scanf( )で%d使った時点で数字のみ入力されています
自分でチェックしたいならfgets( )やscanf("%s", ~)で文字列として読み込んだらいいでしょう