To make a matrix containing character table entries, one can use ValuesOfClassFunction which returns the list of values of the class function $\psi$, the $i$-th entry being the value on the $i$-th conjugacy class of the underlying character table (see ?UnderlyingCharacterTable).
For example, let's take the group from the question and compute its character table "on fly" (one could also use CharacterTable("D20") to fetch the precomputed table from The GAP Character Table Library which is a GAP package redistributed together with the system). So, we have
gap> G:=DihedralGroup(IsPermGroup,20);
Group([ (1,2,3,4,5,6,7,8,9,10), (2,10)(3,9)(4,8)(5,7) ])
gap> t:=CharacterTable(G);;
gap> Display(t);
CT2
2 2 2 2 1 1 1 1 2
5 1 . . 1 1 1 1 1
1a 2a 2b 10a 5a 10b 5b 2c
2P 1a 1a 1a 5a 5b 5b 5a 1a
3P 1a 2a 2b 10b 5b 10a 5a 2c
5P 1a 2a 2b 2c 1a 2c 1a 2c
7P 1a 2a 2b 10b 5b 10a 5a 2c
X.1 1 1 1 1 1 1 1 1
X.2 1 -1 -1 1 1 1 1 1
X.3 1 -1 1 -1 1 -1 1 -1
X.4 1 1 -1 -1 1 -1 1 -1
X.5 2 . . A -*A *A -A -2
X.6 2 . . *A -A A -*A -2
X.7 2 . . -*A -A -A -*A 2
X.8 2 . . -A -*A -*A -A 2
A = -E(5)-E(5)^4
= (1-Sqrt(5))/2 = -b5
Now the matrix may be "extracted" in the following way:
gap> m:=List(Irr(t),ValuesOfClassFunction);;
gap> Display(m);
[ [ 1, 1, 1, 1, 1, 1, 1, 1 ],
[ 1, -1, -1, 1, 1, 1, 1, 1 ],
[ 1, -1, 1, -1, 1, -1, 1, -1 ],
[ 1, 1, -1, -1, 1, -1, 1, -1 ],
[ 2, 0, 0, -E(5)-E(5)^4, E(5)^2+E(5)^3, -E(5)^2-E(5)^3, E(5)+E(5)^4, -2 ],
[ 2, 0, 0, -E(5)^2-E(5)^3, E(5)+E(5)^4, -E(5)-E(5)^4, E(5)^2+E(5)^3, -2 ],
[ 2, 0, 0, E(5)^2+E(5)^3, E(5)+E(5)^4, E(5)+E(5)^4, E(5)^2+E(5)^3, 2 ],
[ 2, 0, 0, E(5)+E(5)^4, E(5)^2+E(5)^3, E(5)^2+E(5)^3, E(5)+E(5)^4, 2 ] ]
For a character table with known underlying group $G$ (like in this case), the ConjugacyClasses attribute stores a list of conjugacy classes of $G$:
gap> ConjugacyClasses(t);
[ ()^G, (2,10)(3,9)(4,8)(5,7)^G, (1,2)(3,10)(4,9)(5,8)(6,7)^G,
(1,2,3,4,5,6,7,8,9,10)^G, (1,3,5,7,9)(2,4,6,8,10)^G,
(1,4,7,10,3,6,9,2,5,8)^G, (1,5,9,3,7)(2,6,10,4,8)^G,
(1,6)(2,7)(3,8)(4,9)(5,10)^G ]
Therefore, it's easy to figure out that e.g. the column corresponding to the conjugacy class of $(1,9,7,5,3)(2,10,8,6,4)$ is the 5th column:
gap> PositionProperty( ConjugacyClasses(t), x -> (1,9,7,5,3)(2,10,8,6,4) in x );
5
The rest is straightforward. Please note that rows correspond to irreducible characters and not to conjugacy classes.
?CharacterTableWithStoredGroup(G,tbl)which tries to identify the classes ofGwith the columns oftbl. – Olexandr Konovalov Sep 11 '13 at 19:28