掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.24439

桁数
投稿者---yuki(2005/12/01 00:36:57)


課題で整数を引数として受け付けて,その桁数を求める関数を作成せよ。負の数に対しても,正しく計算が出来るように気をつけること。

という問題が出たんで、下記のプログラム作ったんですけど、
関数に文字列を使って、やるのはいけないと思いますか?
問題文の"整数を引数として受け付ける"という部分が少々気になっております。
課題は先生に質問を原則としてしないことになっているので、
皆さんの意見を聞いてみたいので、よろしくお願いします。

下記のプログラムはマイナスを入力されたときはマイナス記号も
桁数としてカウントされています。
この事は先生が、マイナス記号をカウントするか、しないかを
レポートに書けばいいと言ってくれたので、私のはカウントするようになっています。



#include<stdio.h>
#include<string.h>

int ketasuu(char a[256]){

    int lenth;

     lenth = strlen(a);

     return(lenth);
}

int main(void){
    char keta[256];

    scanf("%s",keta);

    printf("桁数は%dです。",ketasuu(keta));

    return(0);
}






この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:桁数 24440 RiSK 2005/12/01 00:47:37
<子記事> Re:桁数 24445 shu 2005/12/01 11:35:48


No.24440

Re:桁数
投稿者---RiSK(2005/12/01 00:47:37)


>課題で整数を引数として受け付けて,その桁数を求める関数を作成せよ。
>(snip)
>関数に文字列を使って、やるのはいけないと思いますか?
>問題文の"整数を引数として受け付ける"という部分が少々気になっております。

整数型で受け取り,桁数を求める関数側で文字列にするなら
問題ないような。
int ketasuu(int n);


この投稿にコメントする

削除パスワード

No.24442

Re:桁数
投稿者---yuki(2005/12/01 01:00:14)


つまり、それは整数型で受け取ってから文字列に入れて
長さを出力するってことですよね??


この投稿にコメントする

削除パスワード

No.24444

Re:桁数
投稿者---とろり(2005/12/01 09:07:03)


>つまり、それは整数型で受け取ってから文字列に入れて
>長さを出力するってことですよね??

「文字列に入れて」が「文字列に変換して」であれば、Yesだと思います。

あと、こんな(↓)やり方とか
for (cnt = 0; n > 0; cnt++) num /= 10;


この投稿にコメントする

削除パスワード

No.24445

Re:桁数
投稿者---shu(2005/12/01 11:35:48)


>皆さんの意見を聞いてみたいので、よろしくお願いします。

yukiさんのプログラムは、まどろっこしいstrlen()にしかなってないです。


この投稿にコメントする

削除パスワード

No.24463

Re:桁数
投稿者---RAPT(2005/12/02 02:03:33)


# てっきり、数学的に対数計算の話かと思っていました。


この投稿にコメントする

削除パスワード

No.24524

Re:桁数
投稿者---yuki(2005/12/04 21:37:18)


皆様の意見を聞いてみて、文字列を使うのをやめて
10で割っていく方法で桁数を求めることにしました。
ありがとうございました。


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧