Show ASCII table: Difference between revisions
Content added Content deleted
(Tidied up task description and added a Go example.) |
(Added C) |
||
Line 5: | Line 5: | ||
Show [https://1drv.ms/u/s!AqDUIunCqVnIg1qxikt4iQQqKMEp ASCII character set] from values 32 to 127 in table format. |
Show [https://1drv.ms/u/s!AqDUIunCqVnIg1qxikt4iQQqKMEp ASCII character set] from values 32 to 127 in table format. |
||
=={{header|C}}== |
|||
{{trans|Go}} |
|||
<lang c>#include <stdio.h> |
|||
int main() { |
|||
int i, j; |
|||
char k[4]; |
|||
for (i = 0; i < 16; ++i) { |
|||
for (j = 32 + i; j < 128; j += 16) { |
|||
switch (j) { |
|||
default: sprintf(k, "%c", j); break; |
|||
case 32: sprintf(k, "Spc"); break; |
|||
case 127: sprintf(k, "Del"); break; |
|||
} |
|||
printf("%3d : %-3s ", j, k); |
|||
} |
|||
printf("\n"); |
|||
} |
|||
return 0; |
|||
}</lang> |
|||
{{out}} |
|||
<pre> |
|||
32 : Spc 48 : 0 64 : @ 80 : P 96 : ` 112 : p |
|||
33 : ! 49 : 1 65 : A 81 : Q 97 : a 113 : q |
|||
34 : " 50 : 2 66 : B 82 : R 98 : b 114 : r |
|||
35 : # 51 : 3 67 : C 83 : S 99 : c 115 : s |
|||
36 : $ 52 : 4 68 : D 84 : T 100 : d 116 : t |
|||
37 : % 53 : 5 69 : E 85 : U 101 : e 117 : u |
|||
38 : & 54 : 6 70 : F 86 : V 102 : f 118 : v |
|||
39 : ' 55 : 7 71 : G 87 : W 103 : g 119 : w |
|||
40 : ( 56 : 8 72 : H 88 : X 104 : h 120 : x |
|||
41 : ) 57 : 9 73 : I 89 : Y 105 : i 121 : y |
|||
42 : * 58 : : 74 : J 90 : Z 106 : j 122 : z |
|||
43 : + 59 : ; 75 : K 91 : [ 107 : k 123 : { |
|||
44 : , 60 : < 76 : L 92 : \ 108 : l 124 : | |
|||
45 : - 61 : = 77 : M 93 : ] 109 : m 125 : } |
|||
46 : . 62 : > 78 : N 94 : ^ 110 : n 126 : ~ |
|||
47 : / 63 : ? 79 : O 95 : _ 111 : o 127 : Del |
|||
</pre> |
|||
=={{header|Go}}== |
=={{header|Go}}== |
Revision as of 11:14, 9 August 2018
Show ASCII table is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.
- Task
Show ASCII character set from values 32 to 127 in table format.
C
<lang c>#include <stdio.h>
int main() {
int i, j; char k[4]; for (i = 0; i < 16; ++i) { for (j = 32 + i; j < 128; j += 16) { switch (j) { default: sprintf(k, "%c", j); break; case 32: sprintf(k, "Spc"); break; case 127: sprintf(k, "Del"); break; } printf("%3d : %-3s ", j, k); } printf("\n"); } return 0;
}</lang>
- Output:
32 : Spc 48 : 0 64 : @ 80 : P 96 : ` 112 : p 33 : ! 49 : 1 65 : A 81 : Q 97 : a 113 : q 34 : " 50 : 2 66 : B 82 : R 98 : b 114 : r 35 : # 51 : 3 67 : C 83 : S 99 : c 115 : s 36 : $ 52 : 4 68 : D 84 : T 100 : d 116 : t 37 : % 53 : 5 69 : E 85 : U 101 : e 117 : u 38 : & 54 : 6 70 : F 86 : V 102 : f 118 : v 39 : ' 55 : 7 71 : G 87 : W 103 : g 119 : w 40 : ( 56 : 8 72 : H 88 : X 104 : h 120 : x 41 : ) 57 : 9 73 : I 89 : Y 105 : i 121 : y 42 : * 58 : : 74 : J 90 : Z 106 : j 122 : z 43 : + 59 : ; 75 : K 91 : [ 107 : k 123 : { 44 : , 60 : < 76 : L 92 : \ 108 : l 124 : | 45 : - 61 : = 77 : M 93 : ] 109 : m 125 : } 46 : . 62 : > 78 : N 94 : ^ 110 : n 126 : ~ 47 : / 63 : ? 79 : O 95 : _ 111 : o 127 : Del
Go
<lang go>package main
import "fmt"
func main() {
for i := 0; i < 16; i++ { for j := 32 + i; j < 128; j += 16 { k := string(j) switch j { case 32: k = "Spc" case 127: k = "Del" } fmt.Printf("%3d : %-3s ", j, k) } fmt.Println() }
} </lang>
- Output:
32 : Spc 48 : 0 64 : @ 80 : P 96 : ` 112 : p 33 : ! 49 : 1 65 : A 81 : Q 97 : a 113 : q 34 : " 50 : 2 66 : B 82 : R 98 : b 114 : r 35 : # 51 : 3 67 : C 83 : S 99 : c 115 : s 36 : $ 52 : 4 68 : D 84 : T 100 : d 116 : t 37 : % 53 : 5 69 : E 85 : U 101 : e 117 : u 38 : & 54 : 6 70 : F 86 : V 102 : f 118 : v 39 : ' 55 : 7 71 : G 87 : W 103 : g 119 : w 40 : ( 56 : 8 72 : H 88 : X 104 : h 120 : x 41 : ) 57 : 9 73 : I 89 : Y 105 : i 121 : y 42 : * 58 : : 74 : J 90 : Z 106 : j 122 : z 43 : + 59 : ; 75 : K 91 : [ 107 : k 123 : { 44 : , 60 : < 76 : L 92 : \ 108 : l 124 : | 45 : - 61 : = 77 : M 93 : ] 109 : m 125 : } 46 : . 62 : > 78 : N 94 : ^ 110 : n 126 : ~ 47 : / 63 : ? 79 : O 95 : _ 111 : o 127 : Del
Ring
<lang ring>
- Project : Show Ascii table
load "guilib.ring" load "stdlib.ring"
decarr = newlist(16,6) ascarr = newlist(16,6)
new qapp
{ win1 = new qwidget() { setwindowtitle("Show Ascii table") setgeometry(100,100,800,600) for n = 1 to 16 for m = 1 to 6 decarr[n][m] = new qpushbutton(win1) { x = 150+m*60 y = 30 + n*30 ind = string((m-1)*16+n+31) setgeometry(x,y,30,30) settext(ind) } next next for n = 1 to 16 for m = 1 to 6 ascarr[n][m] = new qpushbutton(win1) { x = 180+m*60 y = 30 + n*30 ind = (m-1)*16+n+31 setgeometry(x,y,30,30) if ind = 32 settext("Spc") loop ok if ind = 127 settext("Del") loop ok settext(char(ind)) } next next show() } exec() }
</lang> Output: