- 締切済み
c言語の初心者です
c言語の初心者です 2進数を入力して10進数を表示するプログラムを作りたいのですが まったくできません それなので2進数の入力のヒントだけでも教えてもらえないでしょうか?
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- magicalpass
- ベストアンサー率58% (378/648)
回答No.2
#include <stdio.h> int main(void) { char buf[1024]; int i; int num = 0; printf("2進数を入力してね => "); scanf("%s", buf); for (i = 0; buf[i] != '\0'; i++) { switch (buf[i]) { case '0': num <<= 1; break; case '1': num <<= 1; num |= 1; break; default: printf("変な文字「%c」があったよ\n", buf[i]); return(-1); } } printf("16進数は「%x」だよ\n", num); getchar(); return(0); } あっ、間違えて16進数を表示するプログラムを作ってしまいました。 10進数は難しいので頑張ってください。
- titokani
- ベストアンサー率19% (341/1726)
回答No.1
>それなので2進数の入力のヒントだけでも教えてもらえないでしょうか? 文字列で入力するのがいいと思います。