標準入力から mを読み取る場合のプログラムを下記のように作成しましたが、コマンドラインから入力できるようにするには何処をどう修正すれば良いのか教えて頂きたいです。
またコマンドラインに引数が1個与えられてない場合にargc!=2と出力するにはどう追記すれば良いかも併せて教えてください。
C
1#include <stdio.h> 2int main(int argc, char *argv[]){ 3 int n, m, l, i, r; 4 int B= 2, D= 10; 5 6 scanf("%d",&n); 7 int b[n], d[n/3+1]; 8 for(i= 0; i!=n; i++) b[i]= 1; 9 for(l=0, m= n; m!=0;){ 10 for(r=0,i=m;i!=0;i--){ 11 r=r*B+b[i-1]; 12 b[i-1]=r/D;r=r%D; 13 14 } 15 16 17 for(; m!=0 && b[m-1]==0; m--); 18 d[l++]= r; 19 } 20 for(i= l; i!=0; i--) 21 printf("%d",d[i-1]); 22 printf("\n"); 23 return 0; 24}
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/11/16 05:21