主题:简单""体""
小鬼当家
[专家分:150] 发布于 2007-11-23 17:28:00
键盘输入一个长度不超过100个字符的字符串,
这个字符串由A、B、C、D、E、F、G七种大写字母组成,每种字母在串中出现的总数目不超过20。
编程统计该字符串中每种字符的数目,并在屏幕上显示直方图。
例如:输入A$="ABACBFGGDEBDDFD" 则屏幕输出如下:
2 3 1 4 1 2 2
***
*** ***
*** *** *** *** ***
*** *** *** *** *** *** ***
A B C D E F G
回复列表 (共4个回复)
沙发
hqm1 [专家分:570] 发布于 2007-11-23 17:29:00
CLS
INPUT N$
FOR I = 1 TO 7: A$ = CHR$(64 + I)
FOR J = 1 TO LEN(N$)
IF A$ = MID$(N$, J, 1) THEN B(I) = B(I) + 1
NEXT J, I
FOR I = 1 TO 7: PRINT " "; B(I);
IF B(I) >= MAX THEN MAX = B(I)
NEXT I: PRINT
FOR I = MAX TO 1 STEP -1: FOR J = 1 TO 7
IF B(J) >= I THEN PRINT " ***"; ELSE PRINT " ";
NEXT J: PRINT
NEXT I: PRINT " ";
FOR I = 1 TO 7
PRINT USING "\ \"; CHR$(64 + I);
NEXT I
END
板凳
hqm1 [专家分:570] 发布于 2007-11-23 17:30:00
CLS
INPUT N$
FOR I = 1 TO 7: A$ = CHR$(64 + I)
FOR J = 1 TO LEN(N$)
IF A$ = MID$(N$, J, 1) THEN B(I) = B(I) + 1
NEXT J, I
FOR I = 1 TO 7: PRINT " "; B(I);
IF B(I) >= MAX THEN MAX = B(I)
NEXT I: PRINT
FOR I = MAX TO 1 STEP -1: FOR J = 1 TO 7
IF B(J) >= I THEN PRINT " ***"; ELSE PRINT " ";
NEXT J: PRINT
NEXT I: PRINT " ";
FOR I = 1 TO 7
PRINT USING "\ \"; CHR$(64 + I);
NEXT I
END
3 楼
天尝地酒 [专家分:870] 发布于 2007-11-23 17:49:00
CLS
INPUT n$
FOR i = 1 TO LEN(n$)
a$ = MID$(n$, i, 1)
FOR j = 1 TO 7
IF a$ = CHR$(64 + j) THEN a(j) = a(j) + 1
NEXT j
NEXT i
FOR i = 1 TO 7
IF max < a(i) THEN max = a(i)
PRINT a(i); " ";
NEXT i: PRINT
FOR i = 1 TO max
FOR j = 1 TO 7
IF i <= a(j) THEN PRINT "*** "; ELSE PRINT " ";
NEXT j: PRINT
NEXT i: PRINT " ";
FOR i = 1 TO 7: PRINT CHR$(64 + i); " "; : NEXT i
END
4 楼
傲视人间 [专家分:60] 发布于 2007-11-25 11:33:00
CLS
INPUT N$
FOR I = 1 TO 7: A$ = CHR$(64 + I)
FOR J = 1 TO LEN(N$)
IF A$ = MID$(N$, J, 1) THEN B(I) = B(I) + 1
NEXT J, I
FOR I = 1 TO 7: PRINT " "; B(I);
IF B(I) >= MAX THEN MAX = B(I)
NEXT I: PRINT
FOR I = MAX TO 1 STEP -1: FOR J = 1 TO 7
IF B(J) >= I THEN PRINT " ***"; ELSE PRINT " ";
NEXT J: PRINT
NEXT I: PRINT " ";
FOR I = 1 TO 7
PRINT USING "\ \"; CHR$(64 + I);
NEXT I
END
我来回复