语言学习用老谭的《C程序设计》,但第三版中的所有救命程序都有问题,因为main()函数主能是整型,不能是void。这是C99中规定的,而竞赛使用的DJGPP和DEV-C++也遵循这一标准。所以最好选择第二版,不过现在未必能找到了。
数据结构学习用清华出的蔚淑敏编的《数据结构》,里面用类C写的,适合不同语言。
算法基础学习用清华出的吕国英编的《算法设计与分析》,也是类C的,不过总比用Pascal的好看多了。
以上只是一些建议,仅供参考。
市面上关于OI的书大多数都是Pascal的,学一下基本的Pascal,看看那些写得比较好的,对OI有用的书还是必要的。毕竟算法在各种语言中都通用,学多点也无妨。