Ⅰ 學c++,c語言將來能找那些工作啊
所以,假如你學的是C++,同時也不在乎業內莫名其名的崗位歧視鏈的話,找一個客戶端開發的工作也是非常不錯的。只不過相較於後端開發,你可能需要重新審視客戶端這個角色。
Ⅱ 想從事c語言開發,銀行方向的,招聘要求上寫了要求懂得oracle方面的資料庫
Oracle是比較難搞的,要學好的前提
你對資料庫查詢語言(SQL)有一定的認識
你對LInux或Unix能熟練掌握
你要有花大量的時間去學習Oracle的耐心
學好Oralce,建議到淘寶上買一些Oracle入門課程先看,然後再學習LInux,例如雲學習RHEL的課程。再去學習Oracle的OCP課程。一個周期下來,估計一年左右吧。
Ⅲ 您好,請問下一下宏杉科技怎麼樣我打算去哪兒工作呢
是一家致力於打造一流伺服器以及存儲的自主研發、生產、銷售和服務的中國企業,位於深圳市南山區科技園。
Ⅳ 精通C語言和C++能找到哪方面工作
C/C++語言應用是非常廣泛的,那麼學習C/C++能用來干什麼呢?
1. 實驗室開發
不敢說C++是世界上最好的語言,但C++基本是工科生中的大語言。
都說C++兼具面向過程以及面向對象的特性,既擁有比較優秀的運行速度,又有良好的大型項目開發能力,那簡直可以制霸高校實驗室了。
2. 後端開發
主流的後端開發語言就那麼幾種,以Java、C++領銜,Python和Go緊跟其後。
3. 游戲開發
掌握了C++基本語法之後,開發游戲也依然是一個不錯的選擇,目前工業級別的3D游戲引擎仍然是用C或C++編寫的。
雖然以個人能力無法去完成一個龐大的網路游戲,但是從簡單開始,編寫一些小游戲,然後逐漸深入,循序漸進並最終加入大型游戲開發團隊還是非常好的一個選擇。與之相應的就業崗位主要有游戲開發工程師、游戲引擎架構工程師等。
4. 客戶端開發
畢竟C++已經是一個很成熟的語言了,所以除了後端開發其實它還有很多其它的開發崗位可以選擇。自然而然的,就是客戶端開發了。
相信大多數學C++的同學都用過C++寫桌面軟體吧。那時候估計還是用MFC,照著代碼書上敲一遍就能寫一個比較簡單的界面了。所以如果不想做後端,完全可以靠C++找一份客戶端開發的工作。做客戶端同樣也需要扎實的編程基礎和計算機理論基礎,同時可能還要熟悉Windows/C++編譯鏈接機制、QT客戶端開發技術體系、Windows消息機制等技術。
所以,假如你學的是C++,同時也不在乎業內莫名其名的崗位歧視鏈的話,找一個客戶端開發的工作也是非常不錯的。只不過相較於後端開發,你可能需要重新審視客戶端這個角色。
5. 多媒體開發
目前多媒體技術同樣滲入到人們的日常生活中,音視頻已經成為人們獲取信息的一個非常重要的手段。音視頻在傳輸過程中都是經過壓縮並且按照一定規則打包過的。視頻的編碼技術從最開始的H.261到如今的H.265,經歷了30多年的發展,而且實現代碼全部是由C或C++實現。
最新的HEVC編碼標准就是由C++代碼實現,對此感興趣的話在學完C++語法後,可以去ITU(國際電信聯盟)官網去下載源碼查看。與之相應的就業崗位有圖像演算法工程師、視頻編碼研發工程師、音視頻轉碼工程師等。
6. 嵌入式開發
上面幾種崗位選擇都是偏軟體方方向的,而C/C++還有一類非常大的就業方向,就是去做嵌入式。嵌入式本身可能是偏硬體一點,但是現在做個什麼事,都是軟硬不分家的。
嵌入式的開發同樣也會涉及到網路編程、並發編程等方面。通俗點解釋可能就是,嵌入式代碼是運行在別的小系統上,而不是傳統意義的計算機上。這個方向除了需要編程能力,還需要基本的電路理論素養。
一般招聘嵌入式開發崗的公司大多是以硬體產品為主的互聯網+公司,比如小米、華為等。進去公司很多都是在做物聯網相關的工作,畢竟這是熱點。當然也會有其它的業務方向,例如晶元、機器人等。
7. 人工智慧
人工智慧、機器學習等方向也少不了C或C++語言的身影。
需要強調的是雖然C++語言可以從事的方向非常廣泛,但是僅僅掌握C++語法是遠遠不夠的,上述的應用領域C++語言是基礎,進入這些領域還需要進一步深入系統學習相關領域的知識以及去接觸真實企業項目的內容。
Ⅳ 現在還有沒有單純招聘C語言程序員的,如果有具體都是
目前招聘純C的程序員也有,但是比較少,主要集中在嵌入式系統開發領域。這一類的程序員除了要求對C非常熟練外,一般還要求對具體的嵌入式開發平台有經驗。這個領域的程序員有不少是非計算機專業的,有不少是有半導體、電子、自動化專業背景的。
另外在游戲和金融領域,也有少量招C語言開發的,一般要求會C/C++,但實際開發往往以C++為主。這個領域的程序員一般都是計算機專業出身。
Ⅵ 只會C語言能找什麼工作煩啊!!!
C語言主要還是應用於硬體的控制,目前就比較大的公司如微軟,還在使用這種語言,其他的公司基本沒人要了,因為這門語言不是面向對象的語言,比較具有結構化。他一般作用主要還是應用於一些游戲程序的編寫,游戲公司可能需求比別的地方多,但是目前也有不少公司在用JAVA編寫游戲,當然了c語言和c++屬於同一類,如果你真的想在.net平台更上一步的話,我建議你還是去學習c++和vb,這些東西還實用些。
Ⅶ C語言程序設計 《招聘信息管理系統》
#include<stdio.h>
#include<stdlib.h>
/*對於學歷和工作要求都是用數字來替代*/
typedef struct worker
{
int num; //編號
char id[20]; //身份證號,過長,所以所以用字元串
char name[15]; //姓名
int degree; //學歷
int job; //需要的工作
worker *next;
worker *pre;
}worker,*Lworker;
/*需求記錄*/
typedef struct want
{
int n; //單位的編號
int job; //需求的崗位
int num; //需求的人數
want *next;
want *pre;
}want,*Lwant;
/*輸出說明信息的函數*/
void info()
{
printf("輸入說明如下:\n");
printf("學歷說明:\n1:高中畢業 2:大學畢業 3:研究生 4:更高學歷\n");
printf("職位說明如下:\n1:程序員 2:管理人員 3:會計 4:獸醫\n");
printf("當輸入求職者信息的時候,求職者編號為-1時,輸入結束\n");
printf("當輸入供職單位信息的時候,當供職的數量為-1的時候,輸入結束\n");
}
/*輸入人才信息*/
void input_worker(Lworker head)
{
int i=1;
Lworker x=head;
x->pre=NULL;
while(1)
{
printf("輸入第%d個求職者的信息,順序為編號,姓名,身份證號,需要的工作,學歷\n",i);
scanf("%d",&x->num);
if(x->num==-1)
break;
getchar();//回車會被讀入到gets()函數中,所以必須有一個getchar()把回車收回
gets(x->name);
gets(x->id);
scanf("%d",&x->job);
scanf("%d",&x->degree);
Lworker y=(worker *)malloc(sizeof(worker));
x->next=y;
y->pre=x;
x=y;
i++;
}
x->pre->next=NULL;
free(x);
}
/*輸入求職信息*/
void input_want(Lwant head)
{
Lwant x=head;
int i=1;
x->pre=NULL;
while(1)
{
printf("第%d個供職單位的信息,順序為編號,工作,數量\n",i);
scanf("%d",&x->n);
scanf("%d",&x->job);
scanf("%d",&x->num);
if(x->num==-1)
break;
i++;
Lwant y=(want*)malloc(sizeof(want));
x->next=y;
y->pre=x;
x=y;
}
x->pre->next=NULL;
free(x);
}
/*查詢人才信息函數*/
//參數num就是員工的編號,查詢是是什麼工作
int find_worker(Lworker head,int num)
{
Lworker x=head;
for(;;x=x->next)
{
if(x->num==num)
{
return(x->job);
}
}
return(-1); //表示沒有這個人
}
/*查詢工作信息函數*/
//num就是編號
int find_want(Lwant head,int num)
{
Lwant x=head;
for(;;x=x->next)
{
if(x->n==num)
return(x->job);
}
return(-1); //表示沒有這個單位的信息
}
/*修改求職者的信息*/
//參數num就是員工的編號
void change_worker(Lworker head,int num)
{
int m=0;
Lworker x=head;
for(;;x=x->next)
{
if(x->num==num)
{
break;
}
}
printf("輸入要修改的內容:\n1:工作 2:學歷 3:身份證號 4:姓名\n");
scanf("&d",&m);
switch(m)
{
case 1:
printf("輸入更正後的工作\n");
scanf("%d",&x->job);
break;
case 2:
printf("輸入更正後的學歷\n");
scanf("%d",&x->degree);
break;
case 3:
printf("輸入更正後的身份證號\n");
gets(x->id);
break;
case 4:
printf("輸入更正後的姓名\n");
gets(x->name);
break;
}
}
/*更改用人單位信息*/
//num就是編號
void change_want(Lwant head,int num)
{
int n;
Lwant x=head;
for(;;x=x->next)
{
if(x->n==num)
break;
}
printf("輸入要修改的內容\n1:工作 2:人數");
scanf("%d",&n);
switch(n)
{
case 1:
printf("輸入新的工作\n");
scanf("%d",&x->job);
break;
case 2:
printf("輸入新的人數\n");
scanf("%d",&x->num);
break;
}
}
/*刪除求職者信息*/
Lworker del_worker(Lworker head,int num)
{
Lworker x=head;
if(head->num==num)
{
x=head->next;
x->pre=NULL;
free(head);
return(x);
}
else
{
for(;;x=x->next)
{
if(x->num==num)
{
break;
}
}
Lworker y=x->pre;
Lworker z=x->next;
if(z==NULL)
{
y->next=NULL;
free(x);
}
else
{
y->next=z;
z->pre=y;
free(x);
}
return(head);
}
}
/*刪除用人單位信息*/
Lwant del_want(Lwant head,int num)
{
Lwant x=head;
if(head->n==num)
{
x=x->next;
x->pre=NULL;
free(head);
return(x);
}
else
{
for(;;x=x->next)
{
if(x->n==num)
{
break;
}
}
Lwant y=x->pre;
Lwant z=x->next;
if(z==NULL)
{
y->next=NULL;
free(x);
return(head);
}
else
{
y->next=z;
z->pre=y;
free(x);
return(head);
}
}
}
/*統計需求量最大的工作*/
void tongji_need(Lworker head,int *n)
{
int i,m=0;
for(i=1;i<5;i++)
n[i]=0;
Lworker x=head;
for(;x!=NULL;x=x->next)
{
switch(x->job)
{
case 1:
n[1]++;
break;
case 2:
n[2]++;
break;
case 3:
n[3]++;
break;
case 4:
n[4]++;
break;
}
}
}
/*統計供給量最大的工作*/
void tongji_serve(Lwant head,int *m)
{
int i;
for(i=1;i<5;i++)
m[i]=0;
Lwant x=head;
for(;x!=NULL;x=x->next)
{
switch(x->job)
{
case 1:
m[1]=m[1]+x->num;
break;
case 2:
m[2]=m[2]+x->num;
break;
case 3:
m[3]=m[3]+x->num;
break;
case 4:
m[4]=m[4]+x->num;
break;
}
}
}
void main()
{
int i;
int x,num;
info();
int n[5],m[5];
Lworker head1=(worker *)malloc(sizeof(worker));
Lwant head2=(want *)malloc(sizeof(want));
while(1)
{
printf("輸入要進行的操作\n");
printf("1:輸入求值人員信息 2:輸入用人單位信息 3:刪除求值人員信息 4:刪除用人單位信息 5:修改求職人員信息 6:修改用人單位信息\n");
printf("7:查詢某個求職人員信息 8:查詢某個用人單位信息 9:統計需求的工作信息 10:統計提供工作的信息 0:退出\n");
printf("注意:1和2如果重復執行的話,會覆蓋以前的而結果,所以不可以重復選擇,只可以做一次\n");
scanf("%d",&x);
if(x==0)
break;
switch(x)
{
case 1:
input_worker(head1);
break;
case 2:
input_want(head2);
break;
case 3:
printf("輸入要刪除的人員的編號\n");
scanf("%d",&num);
head1=del_worker(head1,num);
break;
case 4:
printf("輸入要刪除的單位的編號\n");
scanf("%d",&num);
head2=del_want(head2,num);
break;
case 5:
printf("輸入要修改的人員的編號\n");
scanf("%d",&num);
change_worker(head1,num);
break;
case 6:
printf("輸入要修改的單位的編號\n");
scanf("%d",&num);
change_want(head2,num);
break;
case 7:
printf("輸入要查詢的人員的編號\n");
scanf("%d",&num);
find_worker(head1,num);
break;
case 8:
printf("輸入要查詢的單位的編號\n");
scanf("%d",&num);
find_want(head2,num);
break;
case 9:
tongji_need(head1,n);
for(i=1;i<5;i++)
{
printf("第%d種工作的需求量是%d\n",i,n[i]);
}
break;
case 10:
tongji_serve(head2,m);
for(i=1;i<5;i++)
{
printf("第%d種工作的提供量是%d\n",i,m[i]);
}
break;
}
}
}
Ⅷ 華為招聘C語言的程序員嗎
必須的
Ⅸ 軟體c語言,有哪些崗位可以選擇
嵌入式軟體開發:例如單片機,dsp,arm等;基於嵌入式操作系統的應用軟體,驅動程序;基於大型服務的底層任務,如相應的協議棧。
ios手機app的開發,安卓app的開發都用c了
一般企業崗位為嵌入式軟體工程師,驅動工程師,軟體工程師等相關職位
你所學的就已經是偏向嵌入式開發了,不過從你專業來看,建議向嵌入式軟體開發.因為硬體開發需要專業知識太高.
嵌入式軟體開發重點中的重點就是學好C語言.C的靈活,和全面的內存管理使得C語言永遠脫離不了底層控制的開發.數據結構和演算法適當看下,現在你如果直接找底層驅動類開發的工作,基本上是很困難.現在嵌入式方向用到的高深演算法基本沒有(由於在大部分嵌入式開發中,CPU和內存很難達到目前計算機的程度,所以高深演算法用不到太多).
剩下的就多看看操作系統,了解操作系統對今後的工作很有幫助.建議學習下LINUX,多了解目前開發主要應用的一些OS系統(有的需要多任務實時操作系統,有的是單任務操作系統,種類很多),再有就是多熟悉各操作系統下的編譯環境.
再有,要學習得非常透徹的就是:要了解計算機的內存分配,要細化的來學習.在嵌入式系統中,內存是很金貴的,在有限內存中,做到不浪費,不增加內存是個難題.所以,這個是很重要的.
做到以上你就可以放心大膽的去找嵌入式軟體開發的相關工作了.
另外補充下:不是說學習了C++和JAVA就能從事軟體開發工作,軟體開發工作多方向,學了這2個,也就是能做應用軟體.控制類的是做不來的.何去何從,自己考慮吧.
PS:看到"貊氏遊魂"仁兄的說法真好笑,既然知道自己是初學者就別對他人說:如果想用C找工作,一般是在說笑.我覺得你在說笑.就目前軟體開發行業信息,全世界軟體開發的60%大多是嵌入式開發,做嵌入式開發不用C你用JAVA試下.
學會你那3種多說做做應用.你說的高手是做什麼的?如果真對你說出這樣的話,那麼他肯定不是高手.另外說下,軟體開發做應用只是很小的一方面.別把軟體開發視作想當然.應用軟體並不代表整個軟體開發.
Ⅹ 嵌入式C語言編程,約占所有招聘編程工程師的比例是多少
一般來說佔比30%左右,因為嵌入式編程,主要在於各種需要獨自計算機所帶的,因此相對其它的軟體開發或者各種開發來說,佔比較少。