根据你的情况我提下面几点:
1、学习编程是一个系统化的过程,一个人单干会很累,当然如果你是那种很少见的天才自然就是例外了(我身边有高中就自己开发语音操作系统的神人),一般学习的最好的时机和方法是进入大学学习计算机或者是软件工程专业
2、几乎所有的编程语言都是相通的,所以编程是从0到1特别难,而要从1到100是很简单的事情。如果你打算现在自己学,那么最好集中精力学习一门语言,适合入门的语言有:C,Python,VB;其中我推荐C作为入门语言,一来学习C可以为学习C++、Obj-C和C#做准备,二来学习了C之后Python和VB根本就不算什么;在掌握C之后,哪怕跳过C++直接学Java(java用于安卓app开发)也是可以的
3、学习编程是需要动手操作和领悟的,你说你每天学习到很晚,我觉得这个效果会很差。事实上学习编程最重要的一个部分是在有人指导下进行练习操作,这就是为什么大学里和编程相关的课都会有上机实验。当然你也可以自己在电脑上安装一个IDE,自己找题目做
4、注意好时间分配。一个优秀的程序员不是光会一两门编程语言就可以了。强大的逻辑思维能力以及数学基础是必须的。如果你初中刚刚毕业,很显然你这两方面是不足的(当然如果你是那种16岁就能博士毕业的又是例外了-_-)。高中的数学会少量涉及到算法(虽然不深)但是很基础很重要,所以不要把高中的学业落下了。另外提一点英语也是程序员必备的技能,因为现在世界上最大的软件公司(例如google,facebook,youtube,微软等)都是美国的公司,因此软件产业中最先进的技术必然是用英语发布的,而且新开发的语言的documentation和reference也必然是用英语写的
最后:有自己的想法固然是好事情,但是也要注意方法时机和自身的情况。如果决定要从C下手的话可以参考谭浩强的《C程序设计》,现在很多大学都拿这个当入门教材
首先,你学过C语言,这很不错,但这也很基础,C++是我强力推荐学的,因为很多编程语言都可以追溯到C++。但鉴于你只想进软件公司,所以你还是学学VB,java之类的吧。最后忠告一句,不要先想着什么顺序,要先静下心来学好一门语言,比如C,如果你学到极致,其他语言都可以不用学了……
不得不说,你这是一个阶段,必定经历的一个阶段,像寓言故事小马过河一样。往往打败你的是因为看不到前面的路,是自己给的压力。我的建议是参加系统化的培训,这个在时间安排和结构安排上都要靠谱得多。然后参加一定的权威性考试,确定自己到达了哪个水平。你的疑惑,在你到达一定的层次,有一定的知识储量之后,再回头看就解开了。用不了多久,如果你的自信是用掌握知识的多少来支撑的,那你先咬牙度过这一段最难熬的时间再说。
这个你还是得找地方找培训班,这是一个体系,不是几本书几句话可以说清楚的
不是大学毕业只是有难度,大专甚至中专也不是没可能,但是你这个初中学历实在是太大的硬伤了,而且说个实话你别不愿意听,初中水平的基础知识是没法支持你在这个行业有太大的发展的,这也就是我之前说的“这是一整个体系”,比如数学能力,比如外语能力,要进入这个行业你要补得课不仅仅是专业技能的课了
真想做这行,楼下有位说的找个地方学java算是比较有可行性的建议
搞安卓开发学java就够了,用C、C++的多是底层的开发,大多是偏算法开发的。