質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

Q&A

1回答

1338閲覧

プログラムが正常に動作するにはどうしたらよいですか?

shiroooooo

総合スコア10

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

0グッド

1クリップ

投稿2015/04/30 06:31

以下のプログラムが正常に動作するように,関数get_binを作成しなさい.ただ
し,get_binは引数としてdataを渡し,その値を30ビット2の補数表現の2進数に変
換した文字列を配列変数bincとして戻すものとする.なお,引数dataには変化可能な
変数が渡されるものと仮定し,範囲外の値が渡された場合の事は考慮しなくて良い.

#include<stdio.h>
#include<math.h>

int get_bin(int data,char binc[31]);

int main()
{
int data;
char binc[31];
printf(“input data:”);
scanf(“%d”,&data);
get_bin(data,binc);
printf(“%dの2進数は%sです.¥n”,data,binc);
retur0;
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ozwk

2015/04/30 06:55

どこまで解ってどこから解らないのか、又は「課題が出たけど答え見て楽したい」程度の質問なのかを具体的に書いてください。
lib

2015/04/30 12:35

ひょっとして・・・何かの試験問題のにおいがするのでしょうか?どこかの記事とか?
guest

回答1

0

dataを下位ビットから順番にビットマスクを取って、ビットが0か1なのかを判定してbitc配列に表現形式に合うように文字'0'または'1'を代入するような関数を作ればいいのかと思います。
(学校の宿題っぽいのであえてコードは載せないでおきます)

30ビット2進数文字列の表現形式
表現可能な範囲 = -2^29~2^29-1 ==> -536870912~536870911
bitc[0] = 符号ビット
bitc[1-29] = 数値ビット[1(上位ビット), 29(下位ビット)]
bitc[30] = 文字列の終端[\0]
例:
1 ==> "000000000000000000000000000001"
7 ==> "000000000000000000000000000111"
-7 ==> "111111111111111111111111111001"
-536870912 ==> "100000000000000000000000000000"
536870911 ==> "011111111111111111111111111111"

投稿2015/04/30 17:58

TaroToyotomi

総合スコア1430

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問