• 締切済み

C言語の問題についてご教授お願いします【至急】

プログラミング、C言語の問題についてご教授お願いします【至急】 一行目1~10、二行目11~20、三行目・・・最終的に十行目91~100(各数字の間と行の間は一文字分空けること)とコンパイル時に表示されるようなプログラミングを組み立てたいのですがどうにもうまくいきません。 printf("1 2 3 4 5 6 7 8 9 10¥n");のように1~10を出力し、¥nで改行しそれを繰り返すような単純な方法では担当の先生に納得してもらえませんでした(笑) ですのでこの他の組み立て方を教えていただけないでしょうか? ちなみに先生曰く、if文やfor文、elseといったC言語を習う序盤の技法で解けとのこと・・・どうぞよろしくお願いします(`・ω・´)

みんなの回答

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.4

if文使わなくても書けますね。 二重ループにするとか、まぁいろいろありますけど。 >printf("1 2 3 4 5 6 7 8 9 10¥n");のように1~10を出力し、¥nで改行しそれを繰り返すような単純な方法では担当の先生に納得してもらえませんでした(笑) 自助努力もせずに丸投げするようならば、そういう回答が付く場合もありますけどね。 # もちろん、課題としてOKが出ないことを承知の上でそういう回答をつけるのですが。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

「各数字の間と行の間は一文字分空けること」ってどういうことなんだろう. 特に「行の間は一文字分空ける」がわからん. あと, こんなの if なんか使わんよね.

回答No.2

どうもうまくいかない ご自分で書いたプログラムを 見せてもらえれば、 良いヒントがもらえるかもしれません。 プログラムなんてのは いろいろ試行錯誤して、 身につけるものかなと思います。 とりあえず、ヒント for を使って 1から100 まで横一列に表示ってできますか? これができれば、あとは if/else で場合分けして、改行をいれる。 こんなところで、充分かな?

mordio000
質問者

お礼

試行錯誤ですか(ー_ー)!! いろいろ試してみたいと思います。 ヒントを頼りにがんばります

  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.1

どうして物理学カテゴリー(C/C++カテゴリーでなく)に投稿されたのか 気になるところではありますが、まあそれはさておき、 >コンパイル時に表示されるようなプログラミングを組み立てたい コンパイル時にお望みの表示をすることはできない、と思います。 実行時ならば、できます。 >if文やfor文、else このあたりについて、どこまで理解されていますか?

mordio000
質問者

お礼

C/C++カテゴリが見つからなかったもので・・・(>_<) if文などの意味は理解しているのですが、いざ組み立てに入るとどうもうまくいかないのです。やはり積み重ねなのですかね?

関連するQ&A

  • C言語についてです。(困っております)

    プログラミング初心者で右も左もわからないので力になってください。 ニコニコ動画で、【第05回】ミクと学ぶC言語【if文】という動画を見ています。 その中で出てきたソースコードで、コンパイルまではうまくいくのですが コマンドプロンプトの画面で、文字を入力すると、動作を停止しました。 という通知が出てきます。 うまくできなくて困っているのでどうかわかりやすくアドバイスの程 よろしくお願いします。 ソースコードです。 ↓ /* BMI.c */ #include<stdio.h> int main(void){ double height,weight,BMI; printf("身長[ m]:"); scanf("%if",&height); printf("体重[kg]:"); scanf("%if",&weight); BMI=weight/height/height; printf("BMIは%fです。\n",BMI); if(BMI>=25){ printf("肥満です!\n"); }else if(BMI<18.5){ printf("低体重です!\n"); }else{ printf("標準です!\n"); } return 0;

  • C言語

    今、C言語のプログラミングについて勉強してます。 それで、printf文の中にアスキーアートを入れようとしたのですがエラーが出てしまいます。 おそらくAAの中に:や()が使われているからだと思います

  • C言語習いはじめです

    大学の講義でC言語を習い始めたのですが、if文でコンパイルするとどうしても解決できないエラーが起こってしまいます。 文の意味は 「4で割り切れる年は”閏年”また、400でも割り切れる年も”閏年”と表示する。100で割り切れる年は”平年”と表示する」 というものです。値は2100で指定しています。 #include <stdio.h> main() { int y; printf(" y=2100; "); { if(y%400:0) { printf("a leap year \n"); {/* 閏年 */} } else if(y%100:0) { printf("a common year \n"); {/* 平年 */} } else if(y%40:0) { printf("a leap year \n"); {/* 閏年 */} } else { printf("a common year \n"); {/* 平年 */} } } return 0; } これをコンパイルすると、どうしても 「エラー E2377 ”ファイル名” 5: If文に ) がない(関数 main)」 と出てきてしまいます。 残るこのエラーだけが解決できません。どなたか、間違っている点がわかる方はいませんでしょうか。お願いします。

  • C言語について

    最近C言語でプログラミングを試みようとしてるのですが、コンパイルの時点でよく分かりません。 どのようなソフトでどのようにインストール・設定し、どのようにコンパイルするかなど、C言語でのプログラムのコンパイルから実行までを詳しく教えてください。

  • C言語の問題がわからないです。

    C言語のプログラムで、列数を自分で決めて、 (例)3列         ●(この行を最後として)   □● ●□● 上記のプログラムを作りたいのですが、 上手くいきません。途中まで作ったのですが、なかなか思うようにいかないです。どうすれば上記のようになりますでしょうか? #include <stdio.h> void disp(int x, int y); main() { int i,n; printf("表示する列:"); scanf("%d",&n); disp(3,3); for(i=1;i<=n;i++){ if(i%2==0){ disp(n-i,4); disp(i,2); } else{ disp(n-i,4); disp(i,1); } disp(1,3); } } void disp(int x, int y) { int i; for(i=0;i<x;i++){ if(y==1){ printf("●"); } else if(y==2){ printf("□"); } else if(y==3){ printf("\n"); } else{ printf("\0"); } } }

  • C言語でのプログラミングの問題が分かりません。

    C言語でのプログラミングの問題が分かりません。 課題で出た問題なのですがわからないのでおしえてください。 問題は 値を入力します(nとします) nが1でない間、以下の処理を繰り返します。  (1)nが偶数のとき、nを2で割り、その答えを新しいnとします。  (2)nが奇数のとき、nを3倍してから1を加え、その答えを新しいnとします。 というものです。 if文を使い計算はできたのですが、「繰り返し」と「新しいnとする」部分が分かりませんでした。作成したプログラムを載せるので手直しお願いいたします。 int n,x,y; printf("整数を入力"); scanf("%d",&n); while (n>1) if (n%2) printf("%d",x=n*3+1); else printf("%d",y=n/2); putchar('\n'); return(0); です。このままだと無限ループしてしまうので繰り返しの条件が悪いみたいです。 それと、答えをnに入れたいのにx、yを使ってしまっています。 回答お願いします。

  • c言語でできること

    c言語は具体的には何ができるのでしょうか ものすごくがんばれば市販のゲームソフトなども作れるようになるのでしょうか というのは 今、僕はc言語のプログラミングを勉強しています コンパイルするとms-dosの黒い画面が表示されますよね。オセロなどのゲームはとても見にくいです。 あのようなゲームではなく、ちゃんと絵があるようなゲームは作れるのでしょうか?? また3Dのゲームはつくれるのでしょうか? 「c言語のゲーム」とググってもありません c言語だけではできなくてdirectxなどがいることは知っています。 プログラミングを学ぶ上でなにか目標ができたら それに向けてがんばれると思うので情報よろしくお願いします。 わかりにくい文章ですいません^^;

  • C言語

    C言語のプログラミングでコンパイルしたら 2-1.c:28:9: 警告: unknown escape sequence: '\211' 2-1.c:28:9: 警告: unknown escape sequence: '\211' とでました。 どういうことですか?

  • マシン言語をC言語に変換することってできるんでしょうか??

    プログラミング系はまったくもって初心者です。 単純に興味からなのですが C言語→コンパイル→マシン言語 これは理解できたのですが この逆についてはできるのでしょうか?? もしできるのならやり方など教えていただければなと思います。 よろしくお願いします。

  • C言語の問題

    以下はC言語の問題です。お教えください。 1000以下の素数を求めるプログラム prog.c を作成せよ。各素数を整数4桁で出力し、15個の素数を出力した時点で改行処理 を行うこと。作成したプログラムを提出せよ。 です。 僕の考えでは、 #include <stdio.h> #include <math.h> main(){ int i; int j; int ix; int k; printf("正の整数を入力して下さい: "); scanf("%d",&i); ix=(int)(sqrt((double)i)); k=0; for(j=2;j<=ix;j++) { if(i%j==0) { k=1; } } if(k==0) { printf("%d は素数です\n",i); } else { printf("%d は素数ではありません\n",i); } となると思うのですが。どうやら違うようです。全然わからないので、正しい答えを教えてください。