I didn't take into account the fact that the same number cannot be used more than once, so that would make the calculation 100 * 99 * 98 * 97, but even that is still 94,109,400. Where does 3,921,225 come from?
I was curious too, so I played with a Python script to work it out...
def factorial(x):
if x < 2: return 1
return x * factorial(x - 1)
def p(n, k): return factorial(n) / factorial(n - k)
def c(n, k): return p(n, k) / factorial(k)
max = 100 # how many different numbers there are
pick = 4 # how many numbers we get to pick
all = p(max, pick)
for matched in range(pick+1): # how many of our numbers are matched
unmatched = pick - matched # how many of our numbers aren't matched
bad = max - pick # bad numbers for us
# (which of our numbers are going to match) * (which positions they're in) * (what the non-matching numbers will be)
ways = c(pick, matched) * p(pick, matched) * p(bad, unmatched)
print "match %d : %8d / %8d = %8.5f%% or 1 in %f" % (matched, ways, all, ways*100.0/all, float(all)/ways)
match 0 : 79727040 / 94109400 = 84.71740% or 1 in 1.180395
match 1 : 13716480 / 94109400 = 14.57504% or 1 in 6.861046
match 2 : 656640 / 94109400 = 0.69774% or 1 in 143.319627
match 3 : 9216 / 94109400 = 0.00979% or 1 in 10211.523438
match 4 : 24 / 94109400 = 0.00003% or 1 in 3921225.000000
$
Edit: think about how many different orders there are that you could write down your 4 numbers once you've picked them. There are 4 ways of picking which of the 4 to put first. For each of those 4 selections there are 3 choices for what to put 2nd. So there are 4*3 = 12 ways of selecting the first two numbers. And for each of those there are 2 ways of ordering the last 2 numbers, giving a total of 4*3*2*1 = 24 ways of listing your 4 numbers.
There are 100*99*98*97 different possible draws, if we treat different orders as different draws. It's like you have 24 different tickets in a game where order matters.
So your probability of winning the jackpot is (4*3*2*1) / (100*99*98*97).
Now, how many ways of matching 3 numbers are there? Well, there are 4 (A) different ways to pick which 3 numbers are going to match (because there are 4 ways of picking which number isn't going to match). For each of these 4 sets of 3 matching numbers, there are 4 (B) ways of choosing which position isn't going to match, and 3*2*1 = 6 (C) ways of ordering the 3 numbers in the other 3 positions. Finally there are 96 (D) choices for what the non-matching number is going to be. In total that makes A*B*C*D = 4*4*6*96 = 9216 ways to match 3 numbers.
So the probability of matching 3 numbers is 9216 / (100*99*98*97).
Etc.