ID非公開

2022/6/17 16:26

22回答

このプログラムを作りたいのですが分からないです。 具体的には ・数字と文字を同時に入力して計算、判断する方法 ・改行して数値を繋げる方法

C言語関連 | プログラミング53閲覧xmlns="http://www.w3.org/2000/svg">100

ベストアンサー

0

その他の回答(1件)

0

(aetaerharea34さん) #include <stdio.h> int main(void) {     char a[34];     unsigned int b = 0;     int i, flag = 1;     printf("2進数?\n");     i = 0;     while (1) {         scanf(" %c", &a[i]);         if (a[i] == 'b') {             break;         }         i++;     }     for (i = 0; a[i] != 'b'; i++) {         if (a[i] != '1' && a[i] != '0') {             flag = 0;         }     }     if (flag) {         for (i = 0; a[i] != 'b'; i++) {             b *= 2;             b += a[i] == '1' ? 1 : 0;         }         printf("10進数に変換すると %u です\n", b);     } else {         printf("入力エラー\n");     }     return 0; } ー 実行結果 ー 2進数? 10101b 10進数に変換すると 21 です 2進数? 101031b 入力エラー 2進数? 1101 1 b 10進数に変換すると 27 です 2進数? 11111111111111111111111111111111b 10進数に変換すると 4294967295 です