Resistors are generally PTC, but with hiccups. Usually the R(T) curve looks something like a 3rd order rational function, chosen (by chemical composition) so that the slope of that curve happens to be near zero at room temperature (over a local min/max), or stays within bounds over a given range (an inflection point, 2nd order local minima).
I don't think I've seen any R(T) curves actually given. Possibly in the Vishay Film series, but they're extremely high tolerance (20ppm and down) and come with a price to match!
Physics background:
General material properties for metals, semimetals and alloys give a nonzero resistance at very low temperature (the residual resistivity, a result of impurities disrupting current flow independent of temperature), then linearly (or some power law) increasing at higher temperatures. The transition from 0TC to PTC occurs at some temperature where the resistance due to thermal disturbance exceeds the residual resistance (in other words, it acts as an ideal PTC in series with a 0TC). For alloys of high percentages (like nichrome (typically 80% nickel, 20% chromium), the crossover occurs at very high temperatures (near the melting point, above yellow heat!), so the difference in resistance is relatively small over a wide range. You can imagine this as a zeroth order temperature compensation -- dominating the ideal-metal PTC property with built-in constant resistance. Nichrome gives a pretty basic 200ppm/C slope, so this method doesn't work out terrifically well, but it's good for the price.
Certain alloys exhibit neutral or negative tempcos at certain ranges, for reasons I don't know about; in any case, these droops can be positioned around room temperature, and at such a concentration as to just oppose the existing tempco effect.
Metal oxides should be broadly similar (I would expect the oxides in question to be low bandgap semiconductors, so that they look largely metallic at room temperature, and exhibit the same sort of "PTC with exceptions" curve), but perhaps with different curves suggesting the potentially richer chemistry (lots of oxides can be mixed, who knows..).
As for NTCs, they are essentially semiconductors with poorly controlled doping and random paths. You can tell a semiconductor from a metal, because rather than an ideal PTC curve, it has an ideal NTC curve up to the metallic crossover point (where it rises PTC-wise again). In this case, the residual resistivity acts in parallel, due to doping giving more charge carriers than the semiconductor would otherwise have. Those doping elements, in turn, have activation temperatures, they're just too low to notice (the effect of "freezing out" dopants is important in the operation of BJTs, which aren't much good below -50 or -100C or so; the Vbe rises and hFE falls so much as to be useless). So an equivalent circuit might be many semiconductors in parallel, having different cross sectional areas and different activation temperatures. Which is more or less what the Steinhart-Hart equation is modeling: a series of exponentials in 1/T.
No real NTC approaches this equation, because you're missing all the other impurities, which might be quite many, all with different T_0, B and R_0. This is why they give an approximate answer, which depends on the range of the approximation: usually B_85/25 is given, or something like that; meaning, it matches at 85C and 25C, and is a best fit for values inbetween. You're always best off following the R(T) table, however, if one is provided. Note that tolerance applies to all variables, so a 1% NTC has about 1% uncertainty in everything (making it suitable for about 3C absolute accuracy, or around 1C after a two point calibration).
For practical problems, one might make a voltage divider with NTC and 0TC resistors, in which case the V(T)/Vref varies in a still different manner. This can be closely approximated as a sum of inverses, but it's generally cheaper to calculate by using a modest order polynomial instead. (I wrote such a program for AVR, which takes around 200 cycles to complete the conversion from 12 bit ADC into 16 bit temperature. The rational approximation, instead, takes some 400 or 600 cycles to execute, because there is no hardware divide instruction.)
Tim