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}
実行例

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。