-1

16 進数を要求し、同等の 8 進数を出力する ac プログラムが必要です。コードを使用して、printf() 関数を使用して int を 8 進数に変換します。

#include<stdio.h>
Void main(){
  int i;
  printf("Enter the Hax number: ");
  scanf("%x",&i);
  printf("Octal equivalent of number is %o",i);
}
4

2 に答える 2

1

16進数と8進数は、同じ基になる数値形式の単なる異なる表現です。つまり、バイナリです。したがって、あなたの例では実際には変換は行われていません。同じ番号を2つの異なる方法で解釈/印刷しているだけです。そしてprintf、あなたの例では確かに良い仕事をしています

Enter the Hax number: FF
Octal equivalent of number is 377

私が見ることができる他の唯一の問題のあるものはVoidメインです:)

于 2012-04-12T14:31:44.970 に答える
1

構文エラー以外は、これは機能しているようですが、コピーしただけです。変化する

Void main()

int main() 

また

//Since you are not using command line arguments this isn't necessary but valid
int main(int argc, char **argv)

を追加します

return 0; //not necessary but good practice

メソッドの最後に

編集:

また

void main() 

多くのCコンパイラでコンパイルされますが、無効なCです(現在および以前の標準による制裁はありません)。int代わりに使用してください。

于 2012-04-12T14:32:29.193 に答える