Fuzzy clustering is an interesting data mining process where every item belongs to multiple clusters with different membership values in [0, 1]. As a consequence clusters are not crips but fuzzy (guess what? this is a typical situation in fuzzy logic). Fuzzy c-means clustering is the most famous fuzzy clustering algorithm and can be seen as a variant of the well-known k-means.
Here you have the C++ for Fuzzy Clustering (it uses Boost::uBlas for matrix operations)