A. 在没考研的情况下程序员每个月基本上工资多少
在5000-6000元左右。
尤其是程序员,很多人都比较恐惧。在他们眼中程序员就是一直加班、一直写代码,虽然说是高薪行业,但也是伴随着高风险的。
所以很多人宁愿选择一份收入相对比较稳定的工作,而不是选择做程序员。当然了,每个人都有自己的想法,怎么做还要看你自己了,找一份自己喜欢的工作才是最重要的事情。
起步阶段,程序员的工资高于大学老师。之后正常发展的情况下,程序员和大学老师的差距也会进一步增大。
程序员是按照等级来确定工资的,到了比较高的级别,月薪30万以上非常正常。而在二本院校当老师,本来拿课题就很难,所以一般来说,即便是教授级别的,月薪也就在10K左右,所以单纯拿收入比较,二者没有什么可比性。
职场上有哪些注意事项:
不要太过自我
不要太过自我,或者不要表现出太过自我。你当然是以你为中心,你自己在你心里是最重要的。但是你不能让别人看出来。比如说跟领导汇报时不要你觉得怎么样怎么样,让领导觉得你不把公司当回事,而要站在公司的角度,让领导觉得你很不错,把公司放在第一位了,值得好好培养。
要学会主动解决问题
在和别人合作的过程中,新入职人员要主动查找问题,并针对相应的问题寻找解决方式,不要指望前辈帮你解决。你和别人的合作,其实也是对你工作能力的考察,遇到问题不解决,等待别人解决,是无能的表现。
B. c++程序员工资一般多少 累吗
做程序员纯粹的脑力活儿,
而且你只会C++这个语言,并不一定能代表你的能力。
想做程序员,要学的东西很多,从底层的硬件要了解一些,到上层的抽象
还有通信,网络,所以思想是很重要的,而且要一直学习新的东西。
语言只是工具,重要的是编程思想。你的编程思想好,哪个语言其实都很行。
干程序员这行,如果你是偏向软件开发的,经常加班是肯定的啦。
重要的是你喜不喜欢编程,你喜欢这行,就算累点,也是开心的。
工资什么的,程序员很在意的就是经验,你写的代码多了,
开发的经验有了,时间长了,工资是一个质的飞跃。
一般干入行都不高,3000左右吧,3年左右大概会上在万元左右,再长些,年薪按几十万算了。
PS:慎重选择,兴趣很重要,否则你会后悔,工资什么的,现在你就考虑,你的动力也不会很大
C. java程序员工资如何
java程序员待遇挺高的,根据IDC的统计数字,在所有软件开发类人才的需求中,对Java程序员的需求达到全部需求量的60%~70%。同时,Java程序员薪水相对较高。Java程序员一般月薪范围在4000-10000元,远远超过了应届毕业生月薪2500元的平均水平。通常来说,有一年工作经验的Java高级程序员的薪酬大致在年薪10—13万左右。
……………………………………………………………………
看你问的问题,应该是对java很感兴趣,其实你可以自学java。关于如何学习java,我刚才看到一篇很不错的文章,是一个农民工介绍自己如何自学java,并找到Java的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。
我是一名地地道道的农民工,生活在经济落后的农村,有一个哥哥和一个弟弟,父母都是地道的农民,日出而作,日落而息,我从小到大学习一直很好,从小学到高一都,成绩在全级一直名列前茅,这样我也顺利了考上省的重点高中,然而,每个学期开学是家里最为难的时候,每次交学费都让父母发愁许久,家里为了给我筹钱读书,都借了不少钱,才让我读上高中。我知道我读到高中家里已经欠了好多债,为了减轻家里的负担,我选择了退学。
2009年我高一退学,为了给家里还债,干过建筑工地的小工,搞过塑料制品加工,送水工等等。很工资都很低,一个月也就1000多,加上加班费一个月能拿2000多一点,我每个月都向家里寄回800-1000元,到了2011年末,一次偶然的机会我接触了Java,听说Java的前景挺不错,工资相对于我一个农民工来说简直是天文数字,于是我在新华书店买了几本Java的书,尽管白天辛苦工作,晚上回来还是坚持看书,但有于基础太差很多都很不明白,但还是坚持看,一有看1-2个小时Java的书,看着看着许多基础都慢慢的学会了,但那些比较难的还是看不懂,后来还买高笑了有些关于框架的书,还是看不懂,这样断断续续的持续了半年多,觉得自己Java的基础都差不多懂了,但框架还是看不懂,还有最缺的项目经验,看了很多招聘Java程序员的简介都要项目经验,相对我一个农民工来连框架都弄不明白,想找一份Java工作对我来说简直是奢侈。我只想学Java,并不敢想以后能从事Java的工作。
有一次,在网络上看到一篇让我很鼓舞的文章,是一个Java高手介绍在没有基础的朋友怎么自学入门Java,文章写的很好,包含了如何学习,该怎么学习,他提到一个方法就是看视频,因为看书实在太枯燥和费解的,不少是我们也看不懂,这点我真的很认同,我自己看书都看了很久才学会基础。曾经有想过参加培训,但是上万元的培训费让我望而却步,我工资这么低,每个月还有向家里汇钱,加上城市消费比较高,虽然每个月只有几百剩下,戚帆含但是相对于上万万学费和四个月的吃住费用逼我连想不敢想。 于是我决定看视频,我就去搜索Java的视频,虽然我零星的找到一些Java的视频,但是都不系统。最重要连项目都没有。后来我找到一份很好的视频,是IT学习联盟这个网站一套视频叫<<零基础Java就业班>>(喜欢《零基础Java就业班》的可以复制 t.cn/8sx5z6L 粘贴浏览器地址栏按回车键即打开)的教程还不错,很完轿毕整。还赠送11个顶级企业项目。价格很合理,于是我买下来。
于是开始了我的自学Java的路,收到光盘后,我就开始学习,刚开始学习还不错,是从零基础教起,老师幽默风趣而又轻松的课堂教课,使我发现原来学习JAVA并不是一件很难的事情。因为我本来基础还不错,前面的基础看一篇我就过去了,到了框架,我觉不又不是很难,可能老师太牛了,他能把复杂的问题讲的比较通俗易懂,有些难点的地方我还是连续看了五六次,把他弄懂。每天下午6点下班后,吃了饭,马上跑回家。看视频,买了几本笔记本。当时,为了编程还花几百元了台二手的台式电脑,配置一般,但编程是足够的。一边看视频,一边记笔记,把重点都记下来,还一边跟着老师敲代码,为了能尽早学会Java。每天都坚持学5-6个小时。经常学到晚上一点多才睡觉。星期六,日不用上班,每天7点多起床,学到晚上11,12点。那段时间特别辛苦,特别累。在学习Java的三个多月里,除了吃饭睡觉工作,剩余的时间都在学习,因为我知道自己的计算机基础不是很好,也没有学过什么计算机,只是学了些Java基础,相对于那些科班的人来说我要比他们付出更多的努力。我只能咬紧牙关,坚持下去,我不能放弃,我要完成我的梦想,我要让我的家人过上好日子。终于三个多月后我把Java教程里的内容和项目都学完了,在学项目的过程中我发现项目特别重要,他能把你学过的知识全部联系起来,能更好的理解你所学的知识。还有学习过程中,动手很重要,要经常跟着老师动手敲,动手吧,跟着做,一行一行的跟着敲,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。 如果遇到暂时对于一些思路不能理解的,动手写,先写代码,慢慢你就会懂了。这套视频还赠送了11个顶级企业项目,对于我没有任何经验的人来说,这个太重要了,还有在学习项目是提升能力最快的方法。项目能把所有的知识点全都连到一起了,不再是分散的,而是形成一个整体了。那种感觉是仅仅深入钻研知识点而不写真实项目的人所不能体会的。一个项目就是一根绳子可以把大片的知识串到一起。 就这样,我用了两个月也把项目给学完了。其实学完教程差不错就达到就业水平,但是我可能觉得自己学历低还是把那11个顶级企业项目才去找工作。
接着我就到51job疯狂的投简历,因为我的学历问题,初中毕业,说真的,大公司没有人会要我。所以我头的都是民营的小公司,我希望自己的努力有所回报。没有想过几天后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比价严格,需要有一年的项目经验,所以我没有被选中。 后来陆续面试了几加公司,终于功夫不负有心人,我终于面试上了一家民营的企业。公司规模比较小,我的职务是Java程序员。我想我比较幸运,经理看中我的努力,就决定吕勇我,开的工资是3500一个月,虽然我知道在北京3500只能过温饱的生化,但是我想我足够了,比起以前的工资好了些,以后可以多寄些钱回家。我想只要我继续努力。我工资一定会翻倍的。 把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有自卑,我们不比别人笨,只有我们肯努力,我们一样会成功。
…………………………………………………………
想成为出色的java程序员就努力学习java吧。
D. c++程序员工资
据调查,初中级C/C++软件开发工程师的年薪为5万-15万元,高级软件工程师则高达15万-30万元。市场最紧缺的C/C++技术总监或项目总监年薪更高。C/C++软件工程师的年薪与JAVA软件工程师和.NET软件工程师的年薪相比一般平均要高于2-3万。 据专家预测,C/C++软件工程师是未来几年最热门和最受欢迎的职业之一。
………………………………
看你问的问题,应该是对c++很感兴趣,其实你可以自学c++。关于如何学习c++,我刚才看到一篇很不错的文章,是一个专科生介绍自己如何自学c++,并找到c++的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。
先做个自我介绍,我07年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了。09年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学了。
退学后我也迷茫,大专都没有毕业,我真的不知道我能干什么,我在纠结着我能做什么。所以辍学后我一段时间,我想去找工作,因为我比较沉默寡言,不是很会说话,我不适合去应聘做业务。我想应聘做技术的,可是处处碰壁。
一次偶然的机会,我才听到c++这个行业。那天我去新华书店,在计算机铅大山分类那边想找本书学习。后来有个女孩子走过来,问我是不是读计算机的,有没有兴趣学习c++,然后给我介绍了一下c++现在的火热情况,告诉我学c++多么的有前景,给我了一份传单,c++培训的广告。听了她的介绍,我心里痒痒的,确实我很想去学会一门自己的技术,靠自己的双手吃饭。
回家后,我就上网查了下c++,确实是当今比较热门的行业,也是比较好找工作的,工资也是相对比较高。我就下决心想学c++了。于是我去找c++培训的相关信息,说真的,我也很迷茫,我不知道培训是否真的能像他们宣传的那样好,所以我就想了解一段时间再做打算。
后来,我在网络知道看到一篇让我很鼓舞的文章是一个c++高手介绍没有基础的朋友怎么自学入门学c++,文章写的很好,包含了如何学习,该怎么学习。他提到一个方法就是看视频,因为看书实在太枯燥和费解的,很多我们也看不懂。这点我真的很认同,我自己看书往往看不了几页。
我在想,为什么别人都能自学成才,我也可以的!我要相信自己,所以我就想自学,如果实在学不会我再去培训。
主意一定,我就去搜索c++的槐中视频,虽然零星找到一些c++的视频,但是都不系统,我是想找一个能够告诉我该怎么学的视频,一套从入门到精通的视频,一个比较完整的资料,最好能有老师教,不懂可以请教的。
后来我又找到一份很好的视频,是在IT学习联盟推出的一份视频《零基础c++就业班》(喜欢《零基础c++就业班》的可以复制 sina.lt/ceFM 粘贴浏览器地址栏按回车键即打开)。里面的教程还不错,很完整。
下面介绍下我的学习流程,希仿伍望对和我一样完全没有基础的朋友有所帮助。
收到他们寄过来的光盘后,我就开始学习了,由于我没有什么基础,我就从最简单的C语言视频教程学起,话说简单,其实我还是很多不懂的,只要重复多看几遍,就能看懂。C语言我差不多学了一个礼拜,接下来我就学了c++和数据结构算法,差不多也就三个礼拜。我每天都在不停的写一些简单的代码,这样一月后我基本掌握了c++的全部基础。
接下来开始学习c++高级课程,老师幽默风趣而又轻松的课堂教课,使我发现原来学习c++并不是一件很难的事情。之前我把c++基础学得还不错,到了到了c++高级部分,我觉不又不是很难,可能老师太牛了,他能把复杂的问题讲的比较通俗易懂,有些难点的地方我还是连续看了五六次,把他弄懂。每天下午6点下班后,吃了饭,马上跑回家。看视频,买了几本笔记本。当时,为了编程还花几百元了台二手的台式电脑,配置一般,但编程是足够的。一边看视频,一边记笔记,把重点都记下来,还一边跟着老师敲代码,为了能尽早学会c++。每天都坚持学5-6个小时。经常学到晚上一点多才睡觉。星期六,日不用上班,每天7点多起床,学到晚上11,12点。那段时间特别辛苦,特别累。在学习c++的三个多月里,除了吃饭睡觉工作,剩余的时间都在学习,因为我知道自己的计算机基础不是很好,也没有学过什么计算机,相对于那些科班的人来说我要比他们付出更多的努力。我只能咬紧牙关,坚持下去,我不能放弃,我要完成我的梦想,我要让我的家人过上好日子。终于三个多月后我把c++教程里的内容和项目都学完了,在学项目的过程中我发现项目特别重要,他能把你学过的知识全部联系起来,能更好的理解你所学的知识。还有学习过程中,动手很重要,要经常跟着老师动手敲,动手吧,跟着做,一行一行的跟着敲,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。 如果遇到暂时对于一些思路不能理解的,动手写,先写代码,慢慢你就会懂了。
于是我就到51job疯狂的投简历,因为我学历的问题,专科没有毕业,说真的,大公司没有人会要我,所以我投的都是民营的小公司,我希望自己的努力有所回报。没有想过几天过后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比较严格,需要有一年的项目经验,所以我没有被选中。
后来陆续面试了几家公司,终于功夫不负有心人。我终于面试上的,是在闵行的一家民营的企业,公司规模比较小,我的职务是c++开发程序员,但我也比较满足,开的工资是3500一个月,虽然我知道在上海3500只能过温饱的生活,但是我想我足够了。我至少不用每天都要靠父母养,我自己也能养活自己的。我想只要我继续努力,我工资一定会翻倍的。
把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有必要自卑,我们不比别人笨,只要我们肯努力,我们一样会成功。
……………………………………
E. 一般程序员的工资是多少
一般的程序员的工资在一万元左右的,这是一般员工的平均工资待遇。
F. 程序员一个月工资大概多少
程序员一个月的收入7k-2w。
程序员(英文Programmer)是从事程序开发、程序维护的基层工作人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚。
对于职业程序员,另外一个重要的方面就是,程序员需要不断提升自己的业务技术,他的技术必须一直保持在一个较高的水平,并且要不断发展,程序员也要寻找贸易的机会,要参加研讨会,在周刊上发表文章和接受职业教育,这些使程序员在自己的领域中分级或者不断并排前进。
日常工作
确认通过审查方案的目标,输入数据,分析师,监事,和客户的输出要求的项目要求。
安排项目要求在编程序列分析要求:准备工作流程图和使用计算机知识的能力,题材,编程语言和逻辑图。
编码工作流程的信息转换成计算机语言的项目要求。
通过输入编码信息的计算机程序。
确认程序操作进行测试,修改程序序列和/或代码。
准备写操作指令供用户参考。
G. 数据库中每人工资加100元怎么写代码
update 表名 set 工资字段=工资字段+100 where 1;
H. 系统程序员怎样把代码写得又快又好
很多初学者包括一些有经验的程序员,在敲完代码的最后一个字符后,马上开始编译和运行,迫不急待的想看到自己的工作成果。快速反馈有助于满足自己的成就感,但是同时也会带来一些问题:
让编译器帮你检查语法错误可以省些时间,但程序员往往太专注这些错误了,以为改完这些错误就万事大吉了。其实不然,很多错误编译器是发现不了的,像内存错误和线程死锁等等,这些错误可能逃过简单的测试而遗留在代码中,直到集成测试或者软件发布之后才暴露出来,那时就要花更大代价去修改它们了。
修改完编译错误之后就是运行程序了,运行起来有错误,就轮到调试器上场了。花了不少时间去调试,发现无非是些低级错误,或许你会自责自己粗心大意,但是下次可能还是犯同样的错误。更严重的是这种debug&fix的方法,往往是头痛医头脚痛医脚,导致低质量的软件。
让编译器帮你检查语法错误,让调试器帮你查BUG,这是天经地义的事猛灶,但这确实是又慢又烂的方法。就像你要到神知行离家东边1000米的地方开会,结果你往西边走,又是坐车又是搭飞机,花了一周时间,也绕着地球转了一周,终于到了会议室,你还大发感慨说,现代的交通工具真是发达啊。其实你往东走,走路也只要十多分钟就到了。不管你的调试技巧有多高,都不如一次性写好更高效。
下面是我在阅读自己代码时的一些方法:
检查常见错误
第一遍阅读时主要关注语法错误、代码排版和命名规则等等问题,只要看不顺眼就修改它们。读完之后,你的代码很少有低级错误,看起来也比较干净清爽。第二遍重点关注常见编程错误,比如内存泄露和可能的越界访问,变量没有初始化,函数忘记返回值等等,在后面的章节中,我会介绍这些常见错误,避免这些错误可以为你省大量的时间。如果有时间,在测试完成之后,还可以考虑是否有更好的实现方法,甚至尝试重新去实现它们。说了读者可能不相信,在学习编程的前几年,我经常重写整个模块,只我觉得能做得更好,能验证我的一些想法,或提高我的编程能力,即使连续几天加班到晚上十一点,我也要重写它们。
模拟计算机执行
常见错误是比较死的东西,按照检查列表一条一条的做就行了。有些逻辑通常不是这么直观的,这时可以自己模拟计算机去执行,假想你自己是计算机,读入这些代码时你会怎么处理。北大青鸟http://www.kmbdqn.cn/认为这种方法能有效的完善我们的思路,考虑不同的输入数据,各游哗种边界值,这能帮助我们想到一些没有处理的情况,让程序的逻辑更严谨。
I. 电脑程序员是干什么工作工资是多少
程序员是指从事程序开发、程序维护的专业人员。程序员就是把解决问题的方法以计算机可理解的方式告诉计算机并让之执行以解决问题的工程师。开发程序员主要分为设计和编码:前端开发,后端开发,全栈开发,设计师、架构师、测试工程师等。
对于世界上的IT程序员来说,年平均年薪大概在61000美元,高端程序员接近99,000美元,IT业的薪资待遇主要受其经验和技术水平的影响,其次是所在的城市和公司。根据采访数据,84%的计算机程序员为男性,大多人也享受完善的保险,有比较高的工作满意度。
2018美国各IT职业软件开发平均薪水:
软件开发 - $ 92,240
入门软件开发员 $ 65,204
高级软件工程师 $ 115,593
Java开发 $ 102,985
C ++开发 $ 115,430
C#开发 $ 94,567
NET开发 $ 88,919
JavaScript开发 $ 110,514
PHP开发 $ 86,335
J. 职工工资信息管理系统怎么弄(至少包括:姓名,职务,职称,工资)
c语言编的学生信息管理系统小程序 参考吧
<stdio.h>
#include <stdlib.h>
#include <string.h>
struct st
{
char name[20];
int english;
int math;
int chinese;
int average;
st *next;
};
struct st *pend=NULL;//初始链表的尾指针段胡尘
struct st *pendorder=NULL;//顺序链表的尾指针
struct st *pheadorder=NULL;//顺序链表的头指针
struct st *makeorder(struct st *phead);//按分数从大到小排做茄序 生产链表
struct st *addtolist(struct st *add);// 将平均分最大的添到另一个链表
struct st *createlist();//输入学生信息时生成的初始链表
struct st * deletestu(char *name,st *phead);//删除一个学员的信息
struct st *addstu(st *name,st *phead);//向顺序链表添加一个元素,插入的地方按平均成绩
void printinfo(st *phead);//按平均成绩打印出每个学握禅员的名字
int main()
{
int select;
char deletename[20];
struct st *addstud=NULL;
struct st *phead=NULL;
phead=createlist();//输入时创建链表
pheadorder=makeorder(phead);//将链表排序
printf("input operation:1----deletestudent,2-----addstudent,3----output all student\n");
scanf("%d",&select);
while(select>0)//选择操作1为删除2为添加3为打印,其他的输入会跳出循环
{
switch(select)
{
case 1:
printf("please input the of the student to be deleted:\n");
scanf("%s",deletename);
pheadorder=deletestu(deletename,pheadorder);
printf("input operation:1----deletestudent,2-----addstudent,3----output all student\n");
scanf("%d",&select);
break;
case 2:
printf("please input the information of the student to be added:\n");
addstud=new st;
scanf("%s%d%d%d",addstud->name,&(addstud->english),&(addstud->math),&(addstud->chinese));
addstud->average=((addstud->english)+(addstud->math)+(addstud->chinese))/3;
while((addstud->english)<=0)
{
delete addstud;
printf("please input the information of the student to be added:\n");
addstud=new st;
scanf("%s%d%d%d",addstud->name,&(addstud->english),&(addstud->math),&(addstud->chinese));
addstud->average=((addstud->english)+(addstud->math)+(addstud->chinese))/3;
}
pheadorder=addstu(addstud,pheadorder);
printf("input operation:1----deletestudent,2-----addstudent,3----output all student\n");
scanf("%d",&select);
break;
case 3:
printinfo(pheadorder);
printf("input operation:1----deletestudent,2-----addstudent,3----output all student\n");
scanf("%d",&select);
break;
default:
goto laber;
}
}
laber:system("pause");
return 1;
}
struct st *createlist()//输入时创建初始链表
{
struct st *pfirst=NULL;
struct st *plast=NULL;
struct st *p=new st;
printf("please input the information of the students:\n");
scanf("%s%d%d%d",p->name,&(p->english),&(p->math),&(p->chinese));
p->average=((p->english)+(p->math)+(p->chinese))/3;
while((p->english)>0)
{
if(pfirst==NULL)
pfirst=plast=p;
else
plast->next=p;
plast=p;
printf("please input again:\n");
p=new st;
scanf("%s%d%d%d",p->name,&(p->english),&(p->math),&(p->chinese));
p->average=((p->english)+(p->math)+(p->chinese))/3;
}
plast->next=NULL;
printf("list create successful\n");
delete p;
return pfirst;
}
struct st *deletestu(char *name,st *phead)//删除一个学员
{
int flag=0;
st *p=NULL;
if(strcmp(phead->name,name)==0)
{
phead=phead->next;
flag=1;
}
else
for(p=phead;p;p=p->next)
{
if(strcmp(p->next->name,name)==0)
{
p->next=p->next->next;
flag=1;
break;
}
}
if(!flag)
printf("the student you delete is not in the list\n");
else printf("delete successful\n");
return phead;
}
struct st *addstu(st *name,st *phead)//按平均分增加一个学员
{
name->next=NULL;
struct st *p=NULL;
if((name->average)>(phead->average))
{
name->next=phead;
phead=name;
return phead;
}
else
{
for(p=phead;p->next;p=p->next)
{
if((name->average)>(p->next->average))
{
name->next=p->next;
p->next=name;
return phead;
}
}
}
p=p->next;
p->next=name;
return phead;
}
void printinfo(st *phead)//打印信息
{
st *p;
for(p=phead;p;p=p->next)
printf("%s\n",p->name);
}
struct st *addtolist(struct st *phead,struct st *add)//生成顺序链表时每回都添加一个平均成绩最高的学员信息
{
add->next=NULL;
if(phead==NULL)
pendorder=phead=add;
else
pendorder->next=add;
pendorder=add;
return phead;
}
struct st *makeorder(struct st *phead)//将初始链表变成顺序链表
{
if(phead!=NULL)
{
int max;
struct st *p=NULL;
struct st *index=NULL;
while(phead)
{
max=0;
for(p=phead;p;p=p->next)
{
if(p->average>max)
{
max=p->average;
index=p;
}
}
phead=deletestu(index->name,phead);
pheadorder=addtolist(pheadorder,index);
}
return pheadorder;
}
else printf("there is no list members to be ordered\n");
return pheadorder;
}
————小型公司工资管理系统
一〉题目要求
(1)公司主要有4类人员:经理、技术员、销售员、销售经理。要求存储这些人的职工号、姓名、月工资、岗位、年龄、性别等信息。
(2)工资的计算方法:
A.经理:固定月薪为8000;
B.技术员:工作时间*小时工资(100元每小时);
C.销售员:销售额*4%提成;
D.销售经理:底薪(5000)+所辖部门销售额总额*0.5%;
(3)输入数据要求每类人员不能少于4人,并按以下格式输出:
职工号 姓名 性别 年龄 岗位 工资 排名
及某部门经理所辖部门各售货员的业绩及自己的工资表:
(4)菜单要求:要有一个菜单,用于选择各项功能,其中
1) 数据录入:输入各种数据;
2) 数据统计:各销售经理的工资计算及最终按工资进行的冒泡排序;
3) 数据打印:打印上述表格;
4)数据备份:把相关数据写入文件;
5)退出:推出本系统;
二〉程序最终版:
1,程序员代码
#include<iostream.h>
#include<stdlib.h>
#include<fstream.h>
#include<iomanip.h>
#include<string.h>
class employee
{
public:
float salary;
employee()
{
salary=0;
}
void pay(){}
void print(){}
void input()
{
cout<<"的编号:";
cin>>no;
cout<<" 其姓名:";
cin>>name;
cout<<" 性别(m/w):";
cin>>sex;
cout<<" 年龄:";
cin>>age;
}
protected:
int no;
char name[8];
char sex;
int age;
};
class manager:virtual public employee
{
protected:
float monthlypay,sale;
public:
manager(){monthlypay=8000;}
void input(){cout<<"经理";employee::input();}
void save()
{
fstream outfile;
outfile.open("F:shuju.txt",ios::app);
if(!outfile)
{
cout<<"F can't open.\n";
abort();
}
outfile<<"经理"<<endl;
outfile<<"号码"<<no<<"名字"<<name<<"性别"<<sex<<"年龄"<<age<<"工资"<<salary<<endl;
}
void pay(){salary=monthlypay;}
void print()
{
cout<<"├—————┼—————┼—————┼—————┼—————┤"<<endl;
cout<<"│"<<setw(10)<<no<<"│"<<setw(10)<<name<<"│"<<setw(10)<<sex\
<<"│"<<setw(10)<<age<<"│"<<setw(10)<<salary<<"│"<<endl;
}
};
class technician:virtual public employee
{
private:
float hourlyrate;
int workhours;
public:
technician(){hourlyrate=100;}
void pay()
{
cout<<name<<"本月工作时数:";
cin>>workhours;
salary=hourlyrate*workhours;
}
void input(){cout<<"技术工"<<endl;employee::input();}
void save()
{
fstream outfile;
outfile.open("F:shuju.txt",ios::app);
if(!outfile)
{
cout<<"F can't open.\n";
abort();
}
outfile<<"技术工"<<endl;
outfile<<"号码"<<no<<"名字"<<name<<"性别"<<sex<<"年龄"<<age<<"工资"<<salary<<endl;
}
void print()
{
cout<<"├—————┼—————┼—————┼—————┼—————┤"<<endl;
cout<<"│"<<setw(10)<<no<<"│"<<setw(10)<<name<< "│"<<setw(10)<<sex\
<<"│"<<setw(10)<<age<<"│"<<setw(10)<<salary<<"│"<<endl;
}
};
class salesman:virtual public employee
{
protected:
float commrate;
float sales;
public:
salesman(){commrate=0.04;}
void input(){cout<<"销售员";employee::input();}
void save()
{
fstream outfile;
outfile.open("F:shuju.txt",ios::app);
if(!outfile)
{
cout<<"f can't open.\n";
abort();
}
outfile<<"技术工"<<endl;
outfile<<"号码"<<no<<"名字"<<name<<"性别"<<sex<<"年龄"<<age<<"工资"<<salary<<endl;
}
void pay()
{
cout<<name<<"本月销售额:";
cin>>sales;
salary=sales*commrate;
}
void print()
{
cout<<"├—————┼—————┼—————┼—————┼—————┤"<<endl;
cout<<"│"<<setw(10)<<no<<"│"<<setw(10)<<name<<"│"<<setw(10)\
<<sex<<"│"<<setw(10)<<age<<"│"<<setw(10)<<salary<<"│"<<endl;
}
};
class salesmanager:virtual public manager,virtual public salesman
{
private:
float total;int no1,no2,no3,no4;char name1[8],name2[8],name3[8],name4[8];
float sale1,sale2,sale3,sale4;
public:
int flag;
void salemanager()
{
monthlypay=5000;
commrate=0.005;
}
void input(){cout<<"销售经理";employee::input();}
void save()
{
fstream outfile;
outfile.open("F:shuju.txt",ios::app);
if(!outfile)
{
cout<<"f can't open.\n";
abort();
}
outfile<<"销售经理"<<endl;
outfile<<"号码"<<no<<"名字"<<name<<"性别"<<sex<<"年龄"<<age<<"工资"<<salary<<endl;
}
void savesale()
{
fstream outfile;
outfile.open("F:shuju.txt",ios::app);
if(!outfile)
{
cout<<"F can't open.\n";
abort();
}
outfile<<"销售经理所辖售员业绩及自己的工资"<<endl;
outfile<<"编号"<<no1<<"名字"<<name1<<"工资"<<sale1<<endl;
outfile<<"编号"<<no2<<"名字"<<name2<<"工资"<<sale2<<endl;
outfile<<"编号"<<no3<<"名字"<<name3<<"工资"<<sale3<<endl;
outfile<<"编号"<<no4<<"名字"<<name4<<"工资"<<sale4<<endl;
}
int min(float salary1,float salary2)
{
if(salary1<salary2)
return 1;
else return 2;
}
void pay()
{
salemanager();
salary=monthlypay+commrate*totalsale();
}
float totalsale()
{total=sale1+sale2+sale3+sale4;return total;}
void printtotal()
{
cout<<"├—————┴——┬——┴—————┤"<<endl;
cout<<"│销售额合计 │ "<<setw(10)<<total<<" │"<<endl;
cout<<"└————————┴————————┘"<<endl;
}
void sort(salesmanager &p)
{
int tmp,i,j;
for(j=0;j<2;j++)
for(i=0;i<2;i++)
if(total<p.salary)
{
tmp=salary;
total=p.salary;
p.salary=tmp;
tmp=no;
no=p.no;
p.no=tmp;
}
}
void saler()
{
cout<<name<<"所管部门月销售量:";
cout<<"职工编号:";
cin>>no1;
cout<<" 职工姓名:";
cin>>name1;
cout<<" 销售额:";
cin>>sale1;
cout<<"职工编号:";
cin>>no2;
cout<<" 职工姓名:";
cin>>name2;
cout<<" 销售额:";
cin>>sale2;
cout<<"职工编号:";
cin>>no3;
cout<<" 职工姓名:";
cin>>name3;
cout<<" 销售额:";
cin>>sale3;
cout<<"职工编号:";
cin>>no4;
cout<<" 职工姓名:";
cin>>name4;
cout<<" 销售额:";
cin>>sale4;
}
void saleprint()
{
cout<<"│"<<setw(10)<<no1<<"│"<<setw(10)<<name1<<"│"<<setw(10)<<sale1<<"│"<<endl;
cout<<"├—————┼—————┼—————┤"<<endl;
cout<<"│"<<setw(10)<<no2<<"│"<<setw(10)<<name2<<"│"<<setw(10)<<sale2<<"│"<<endl;
cout<<"├—————┼—————┼—————┤"<<endl;
cout<<"│"<<setw(10)<<no3<<"│"<<setw(10)<<name3<<"│"<<setw(10)<<sale3<<"│"<<endl;
cout<<"├—————┼—————┼—————┤"<<endl;
cout<<"│"<<setw(10)<<no4<<"│"<<setw(10)<<name4<<"│"<<setw(10)<<sale4<<"│"<<endl;
}
void print()
{
cout<<"├—————┼—————┼—————┼—————┼—————┤"<<endl;
cout<<"│"<<setw(10)<<no<<"│"<<setw(10)<<name<<"│"<<setw(10)<<sex<<"│"
<<setw(10)<<age<<"│"<<setw(10)<<salary<<"│"<<endl;
}
};
void main()
{
manager m[4];
technician t[4];
salesman s[4];
salesmanager sm[4];
t[1].save();
int flag=1,operate,minnum=0;
do{
cout<<" ★★小型公司工资管理系统★★\n";
cout<<" ┌—————————————┐\n";
cout<<" │ 请选择您所需的操作 │\n";
cout<<" │ 数据输入:1,并按回车键 │\n";
cout<<" │ 数据统计:2,并按回车键 │\n";
cout<<" │ 数据打印:3,并按回车键 │\n";
cout<<" │ 数据备份:4,并按回车键 │\n";
cout<<" │ 退出系统:5,并按回车键 │\n";
cout<<" └—————————————┘\n";
cout<<" 请选择一个操作: ";
cin>>operate;
switch(operate)
{
case 1:
cout<<"please waiting........"<<endl;
{
for(int i=0;i<4;i++)
{m[i].input();}
for(int j=0;j<4;j++)
{t[j].input();}
for(int k=0;k<4;k++)
{s[k].input();}
for(int l=0;l<4;l++)
{sm[l].input();}
}
{
for(int i=0;i<4;i++)
{m[i].pay();}
for(int j=0;j<4;j++)
{t[j].pay();}
for(int k=0;k<4;k++)
{s[k].pay();}
for(int l=0;l<4;l++)
{sm[l].saler();sm[l].pay();}
};break;
case 2:
cout<<"please waiting......."<<endl;
{
{
for(int l=0;l<4;l++)
sm[l].totalsale();
};
cout<<" 第一位经理的销售员"<<endl;
cout<<"┌—————┬—————┬——————┐"<<endl;
cout<<"│ 职工号 │ 姓名 │ 销售额 │"<<endl;
sm[0].saleprint();
sm[0].printtotal();
cout<<" 排序已经完成"<<endl;
cout<<"各销售经理的排名"<<endl;
cout<<"┌—————┬—————┬—————┬—————┬———————┐"<<endl;
cout<<"│ 职工号 │ 姓名 │ 性别 │ 年龄 │ 工资 │"<<endl;
for(int i=0;i<4;i++)
{
minnum=0;
for(int ddd=0;ddd<4;ddd++)
{
if(sm[minnum].salary>sm[ddd].salary&&sm[ddd].flag!=1)
{
minnum=ddd;
}
}
sm[minnum].flag=1;
sm[minnum].print();
}
cout<<"└—————┴—————┴—————┴—————┴———————┘"<<endl;
};break;
case 3:
cout<<"please waiting........"<<endl;
{
cout<<"*********************************************************************"<<endl;
cout<<" 经理工资一览表如下:"<<endl;
cout<<"┌—————┬—————┬—————┬—————┬——————┐"<<endl;
cout<<"│ 职工号 │ 姓名 │ 性别 │ 年龄 │ 工资 │"<<endl;
for(int i=0;i<4;i++)
{m[i].print();}
cout<<"└—————┴—————┴—————┴—————┴——————┘"<<endl;
cout<<"*********************************************************************"<<endl;
cout<<" 技术员的月工资一览表:"<<endl;
cout<<"┌—————┬—————┬—————┬—————┬——————┐"<<endl;
cout<<"│ 职工号 │ 姓名 │ 性别 │ 年龄 │ 工资 │"<<endl;
for(int j=0;j<4;j++)
{t[j].print();}
cout<<"└—————┴—————┴—————┴—————┴——————┘"<<endl;
cout<<"********************************************************************"<<endl;
cout<<" 销售员工资一览表"<<endl;
cout<<"┌—————┬—————┬—————┬—————┬———————┐"<<endl;
cout<<"│ 职工号 │ 姓名 │ 性别 │ 年龄 │ 工资 │"<<endl;
for(int k=0;k<4;k++)
{s[k].print();}
cout<<"└—————┴—————┴—————┴—————┴———————┘"<<endl;
cout<<"********************************************************************"<<endl;
cout<<" 销售经理工资一览表"<<endl;
cout<<"┌—————┬—————┬—————┬—————┬———————┐"<<endl;
cout<<"│ 职工号 │ 姓名 │ 性别 │ 年龄 │ 工资 │"<<endl;
for(int l=0;l<4;l++)
{sm[l].print();}
cout<<"└—————┴—————┴—————┴—————┴———————┘"<<endl;
};break;
case 4:
cout<<"please waiting........"<<endl;
{
for(int i=0;i<4;i++)
{m[i].save();}
for(int j=0;j<4;j++)
{t[j].save();}
for(int k=0;k<4;k++)
{s[k].save();}
for(int l=0;l<4;l++)
{sm[l].save();}
};
cout<<"information have been saved!"<<endl;
break;
case 5:exit(0);break;
default:cout<<"输入错误,请重新1-5间的输入"<<endl;
}
}while(flag=1);
}
备注:1本程序已经修订过,是网络流传的版本的终结版,解决了原始版本不可进行销售经理工资排序的缺点。
2。本程序为本周刚结束的课程设计的自我修正版本。
3 由于图片不可上传,要观看完美界面截图及报告完整内容请登陆我q-zone。。