• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:九九を表示させるプログラム)

九九を表示するプログラム

このQ&Aのポイント
  • 掛け算の九九、和の九九、差の九九を表示するプログラムを組む
  • 変数opの値に応じて、九九の計算と表示を行う
  • プログラムの実行を繰り返すかどうかをユーザーに尋ねる

質問者が選んだベストアンサー

  • ベストアンサー
  • yone_sk
  • ベストアンサー率34% (58/167)
回答No.2

チョー汚い書き方ですがこういうことかな?? ---------------------------------- #include<stdio.h> void main(){  int x,y,z;  int yn,op;  int i,j;  do{   do{    printf("[*(1),+(2),-(3)]");    scanf("%d",&op);   }while( 1 > op || op > 3 );   for (i=-1; i<10; i++) {    if (i==-1) {     printf("%2s|", "");    } else if (i==0) {     printf("%3s", "--");    } else {     printf("%2d|", i);    }    for (j=1; j<10; j++) {     if (i==-1) {      printf("%3d", j);     } else if (i==0) {      printf("%3s", "---");     } else {      if (op==1) printf("%3d", i*j);      if (op==2) printf("%3d", i+j);      if (op==3) printf("%3d", i-j);     }    }    printf("\n");   }   do{    printf("Continue[1/0]?");    scanf("%d",&yn);   }while( 0 > yn || 1 < yn );  }while( yn == 1 ); } ----------------------------------

myteens
質問者

お礼

参考になりました。ありがとうございました。

その他の回答 (1)

回答No.1

和の九九や差の九九がいまいち把握できませんでしたので 処理を分ける方法のみ提案させていただこうと思います。 とりあえず、Switch文を使えば良いかと思います。 かなり大雑把な説明ですが、Switch文とはifを少し便利にしたようなものとお考えください。状況により処理を分岐させることができます。 switch (op){//変数opを判断する case 1;//変数opが1なら //掛け算の九九の処理 break; case 2; //和の九九 break; case 3; //差の九九 break; } また、掛け算を1x1から9x9までを全て羅列するというのなら for文を持ちいれば作成できるかと思います。デバッグしてないので怪しいですが下記のようなものでも動くかなと思います。もっと綺麗にできるとは思いますが。 int a,b; for(a=1;a<10;++a){ for(b=1;b<10;++b){ printf ("%d * %d = %d\n",a,b,a*b); } }

myteens
質問者

お礼

ありがとうございます。参考にプログラムを考えてみます。