質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

解決済

3回答

2845閲覧

キーボードから整数を入力し、'*'を入力した数だけ表示する

the.world

総合スコア17

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

0グッド

0クリップ

投稿2019/07/05 05:20

###エラー内容
入力した数だけ表示させたいのですが
上手く表示されません
間違っている個所を教えて頂けるとありがたいです

C

1コード 2int main(void) 3{ 4 int n; 5 int i; 6 int j; 7 int data; 8 9 printf("Enter : "); 10 scanf("%d", &data); 11 12 13 n = 3; 14 for (i = 1; i <= n; i++) { 15 for (j = 0; j <= 3; j++) { 16 printf("-"); 17 } 18 printf("+"); 19 for (j = 0; j <= n; j++) { 20 printf("-"); 21 } 22 printf("%d", i); 23 } 24 printf("\n"); 25 // data個の*でグラフ表示 26 for (data = 0; data < 0; data++) { 27 printf("*"); 28 } 29 printf("\n"); 30 31 return 0; 32} 33

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

C

1#include <stdio.h> 2 3int main(void) 4{ 5 int data; 6 printf("Enter : "); 7 scanf("%d", &data); 8 9 int n = (data + 9) / 10; 10 for (int i = 1; i <= n; i++) printf("----+----%d", i % 10); 11 putchar('\n'); 12 13 while (--data >= 0) putchar('*'); 14 putchar('\n'); 15}

投稿2019/07/05 21:54

kazuma-s

総合スコア8224

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

C

for (data = 0; data < 0; data++) {
printf("*");
}

せっかく取得したdataに0を代入してしまっています。
カウンタ変数を別に用意して、data回繰り返すように書き直して下さい。

投稿2019/07/05 05:23

LouiS0616

総合スコア35660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

a.c

c

1#include <stdio.h> 2 3int main(void) 4{ 5 int data; 6 printf("Enter : "); 7 scanf("%d", &data); 8 9 // 目盛りを表示 10 for (int i = 1; i <= 30; i++) { 11 char c = '-'; 12 if (i % 10 == 0) { 13 c = '0' + i / 10; 14 } else if(i % 5 == 0) { 15 c = '+'; 16 } 17 printf("%c", c); 18 } 19 printf("\n"); 20 21 // data個の*でグラフ表示 22 for (; data > 0; data--) { 23 printf("*"); 24 } 25 printf("\n"); 26 return 0; 27}

実行例
イメージ説明

追記

コードは長くなりますが、今後 発展させやすいようにしてみました。

c

1#include <stdio.h> 2#include <string.h> 3 4#define BUF_LEN (256) 5const char RULER_MARK[] = "1234567890"; 6const char ruler10[] = "----+-----"; 7const char MARK[] = "*"; 8 9void ruler(int len) { 10 char buf[BUF_LEN] = ""; 11 const int unit = len / 10; 12 13 for (int i = 0; i <= unit; i++) { 14 strncat(buf, ruler10, BUF_LEN); 15 } 16 for (int i = 0; i <= unit; i++) { 17 buf[i * 10 + 9] = RULER_MARK[i % 10]; 18 } 19 printf("%s\n", buf); 20} 21 22void plot(int data) { 23 char buf[BUF_LEN] = ""; 24 for (int i = 1; i <= data; i++) { 25 strncat(buf, MARK, BUF_LEN); 26 } 27 printf("%s\n", buf); 28} 29 30int main(void) { 31 int data; 32 printf("Enter : "); 33 scanf("%d", &data); 34 35 ruler(data); // 目盛り 36 plot(data); // データ表示 37 plot(data / 2); 38 plot(data); 39 ruler(data); // 目盛り 40}

実行例
イメージ説明

投稿2019/07/05 21:35

編集2019/07/06 00:05
katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問