① c語言筆試或面試一般會問到什麼問題
既然是面試,一定要提前准備,最好准備一套自我介紹,包括對IT行業的看法之類,面試官經常會問這些問題。
由於c語言是程序員工作語種的其中1個,所以對於程序員這個工種,還是有一些具體的注意事項:
第一、基礎很重要,不要生疏了。
不管應聘什麼開發崗位,基礎永遠是最重要的。IT業不停地在炒作新概念,昨天是SOA,今天是雲計算。我們永遠不知道明天流行什麼,但是只要有踏實的基礎,輔以較好的學習能力,要跟上步伐也不會太難。所以絕大多數公司都會特別看重應聘人員的基礎能力,比如編程語言本身的特性、基本的演算法和數據結構、進程間通信等等,畢竟這些具體技術問題有客觀的答案,而且在各具體行業都是相通的。
工作三年以上的人,往往都習慣了「拷貝+修改」式的工作,用不到的基礎知識基本上都忘掉了,一到應聘的時候就難免眼高手低,總是抓不住機會。
而事實上,技術基礎即便是遺忘了,也是可以很快撿起來的。如果求職者確實忘了很多基礎知識,那麼參加面試的前夜,花點時間把大學里的課本再翻出來看看吧。似乎很土的方法,但確實是有效的。
第二、要關注技術前沿。
不管做任何工作,如果只顧著低頭做事,而不曉得抬頭看天。那麼不管做多久,自身的水平總是停留在畢業時的水平;如果基礎又忘記了太多,那還不如畢業生。
關注技術前沿,並不是要求跟進每一個新技術,而只需關注目前主流媒體經常宣傳的一些新技術、新思想。關注這些技術前沿的動向,並能與自己從事的工作聯系起來作一些深入思考,那麼這是向面試官宣揚求職者的學習能力的一種好辦法。
第三、小公司比較看重知識的廣度,大公司更看重知識的深度。
如果求職業想去一些小公司工作,那麼由於他們人少,分工沒那麼細,所以用人單位大多喜歡知識面廣的應聘者——求職者會聽到更多的「怎麼做」。對於應聘這樣的公司,求職者可以著重培養知識的廣度,比如做網站後台開發,最好也能js、css、apache、mysql都懂一些,能獨自搭建一套完整的網站,這樣去很多小公司難度都不太大。但是由於個人的精力總是有限的,所以要注意不要鋪得太開,重點還是在後台開發本身。
而大公司由於分工比較明細,所以往往更喜歡考量重點知識面的深度——求職者會聽到更多的「為什麼」。所以平常解決問題時,不要光搜索一把解決了就完了,還需要仔細研究各種問題的來龍去脈,並能分析總結,將這些收獲系統化、理論化。
當然,廣度和深度的需求不是絕對的,一個優秀的開發人員應該對至少一到兩個專業領域有著深入的了解,並熟悉其他相關領域,也就是所謂的一專多能。
第四、良好的簡歷設計可以為你的應聘加分。
社會應聘的簡歷往往比校園應聘的簡歷寫得隨意,因為有工作經驗的人往往認為面試官會更看重他的工作經驗,而不是簡歷格式。其實不然。
大多數簡歷只會出現在面試官面前10秒到1分鍾不等。這個短短的時間內,如何讓求職者脫穎而出?這個方面有很多的攻略,我只說重點建議,不解釋原因。
一是簡歷要突出優勢,而不是描述經歷。比如出身名校、就職過名企、參與過著名項目、拿過大獎,這些比較客觀的優勢要重點突出。如果求職者沒有UI的功底,那麼簡單地放大加粗也可以達到效果。當然有些公司只接受文本型簡歷,那就設法加一些特殊符號吧。
二是技術簡歷減少模糊化的語句,最好能數字化。例如項目代碼量,維護的數據量,網站的訪問量,請求平均耗時等等。
三是簡歷要能結合應聘崗位做一些匹配的修改。撇開招聘網站通用的簡歷不談,如果求職者明確對一個特定公司的特定崗位投出簡歷,那麼求職者有必要把跟對應崗位無關的內容弱化,並強化跟其業務相關的內容。如果實在行業差別太大,那麼表達幾句對其行業的見解和興趣也是可以的。
第五、要有積極的溝通意識。
優秀的面試官會激勵應聘者講他原先工作的內容,並從而評估出應聘者的能力水平。但隔行如隔山,絕大多數面試官會慢慢將問題引向自己熟悉的領域——這往往又是應聘者不太熟悉的領域。這就要求應聘者能積極分析面試官的興趣點,並將自己相近的特長表現出來。
如果跟面試官有了意見沖突,也盡量不要再同一個問題上糾纏。那也許是故意製造的陷阱——看看求職者的團隊意識。應聘者需要明白的是,在面試場合中不要妄圖「戰勝」面試官,即便是碰上一個期望「戰勝」應聘者的面試官。
第六、要有良好的表達能力。
沒有哪個面試官喜歡啰啰嗦嗦說了半天還是沒說到點子上的應聘者,所以要盡量簡明扼要地回答問題,除非面試官確實表現出對具體細節的興趣。 回答問題時注意麵試官的情緒變化,一旦他表現出任何想打斷的意願,立即一句話結束這個話題。有些比較復雜的問題,可以先思考十到二十秒鍾,因為一旦開口就沒有思考的時間,話多的人不容易收住話題。
跟學校考試不一樣,大多數主觀性問題並不要求應聘者一二三四說得滴水不漏,能說到大部分關鍵點就是可以的了。另外注意,各種技術術語不要搞混了。搞不清楚的理論概念,不如不說。免得面試官聽到個術語就拉出來窮追猛打,把自己問掛。
第七、自信。
大多數做技術的,平時都信心滿滿,一到應聘的時候卻總覺得自己不懂的東西還太多。回答問題時聲音太小,或者畏畏縮縮用很多「可能」「也許」「大概」。這個不一定影響求職者的錄用,但是不自信的表現無疑會影響在跟HR談薪水時候的議價能力。所以,無論如何,應聘的時候表現得輕松鎮定一些,還是很有好處的。
當然,自信和自大之間往往只有一線之差。千萬小心,不要過度地表現自信搞成了自大,因為HR往往對這一點非常敏感。如果求職者只是要謹慎地表現自信的話,只要回答問題時面帶微笑就夠了。
最後需要特別提醒的是,以上種種其實只不過是應聘時的技巧和注意點而已。職業規劃需要有長遠的眼光和堅持不懈的學習。台上一分鍾,台下十年功。真正的實力還是要在平時工作和學習中進行積累。
② C語言筆試那些知識點是必背的!
你是說等級考試么 單說c語言 所有語法必須瞭然的 不過考試也不考你語法規則 而且通過程序考你對語法的瞭然程度 編程是工科 不能像歷史一樣背 想學好編程找我要個指點文件看看吧 名字上有扣扣
③ 全國計算機二級C語言考試的筆試與機試的題型分別是怎樣的
筆試有選擇題和填空題,其中有30分的公共基礎知識,機試有改錯,填空和編程。機試是隨機抽提,運氣好的話題很簡單。買套題好好做做,二級還是很好過的。
④ c語言筆試題來幾份
留郵箱我給你發試卷和答案
一. 單項選擇題
1) C語言中最基本的非空數據類型包括
A.整型、浮點型、無值型 B.整型、字元型、無值型
C. 整型、浮點型、字元型 D. 整型、浮點型、雙精度型、字元型
2) C語言中運算對象必須是整型的運算符是
A.% B./ C.= D.<=
3) 若已定義x和y為int類型,則執行了語句x=1;y=x+3/2;後y的值是
A.1 B.2 C.2.0 D.2.5
4) 若有以下程序 段,int a=1,b=2,c=1.0/b*a;則執行後,c中的值是
A.0 B.0.5 C.1 D.2
5) 能正確表示邏輯關系:「a≥10或a≤0」的C語言表達式是
A.a>=10ora<=0 B.a>=0|a<=10
C.a>=10&&a<=0 D.a>=10||a<=0
6) 下列字元序列中, 不可用作C語言標識符的是
A.xyd233 B.No.1 C._sd D.xyz
7) 在printf()函數中,反斜杠字元『\』表示為
A.\』 B.\0 C.\n D.\\
8) 設先有定義:int a=10;則表達示a+=a*=a的值為
A.10 B.100 C.1000 D.200
9) 設先有定義:int y=3,x=2,z=1;則語句:
printf(「%d %d\n」,(++x,y++),z+2);的輸出結果為
A.3 4 B.4 2 C.4 3 D.3 3
10) 假定x、y、z、m均為int 型變數,有如下程序段
x=2;y=3;z=1;
m=(y<x)?y:x;
m=(z<y)?m:y;
則該程序運行後,m的值是
A.4 B.3 C2 D.1
11) 以下選項中合法的字元常量是
A. 「B」 B.』\010』 C.68 D.D
12) 設x=3,y=4,z=5,則表達式((x+y)>z)&&(y==z)&&x||y+z&&y+z的值為
A.0 B.1 C.2 D.3
13) 結構化程序模塊不具有的特徵是
A.只有一個入口和一個出口
B.要盡量多使用goto語句
C.一般有順序、選擇和循環三種基本結構
D.程序中不能有死循環
14) C語言中,邏輯「真」等價於
A.整數1 B. 整數0 C.非0數 D.TRUE
15) 以下4條語句中,有語法錯誤的是
A.if(a>b) m=n; B.if(a<b) m=b;
C.if((a=b)>=0) m=a; D.if((a=b;)>=0) m=a;
16) 若i,j均為整型變數,則以下循環
for(i=0,j=2;j=1;i++,j--)
printf(「%5d,%d\n」,I,j);
A.循環體只執行一次 B.循環體執行二次
C.是無限循環 D.循環條件不合法
17) 以下程序段,執行結果為
a=1;
do
{
a=a*a;
}while(!a);
A.循環體只執行一次 B.循環體執行二次
C.是無限循環 D.循環條件不合法
18) C語言中while與do-while語句的主要區別是
A.do-while循環體至少無條件執行一次 B.do-while允許從外部跳到循環體內
B.while的循環體至少無條件執行一次 D.while的循環控制條件比do-while的嚴格
19) 語句while(!a);中條件等價於
A.a!=0 B.~a C.a==1 D.a==0
20) 以下程序的運行結果為
#include<stdio.h>
main()
{
int i=1,sum=0;
while(i<=100)
sum+=i;
printf(「1+2+3+…+99+100=%d」,sum);
}
A.5050 B.1 C.0 D.程序陷入死循環
21) 以下程序運行結果為
#include<stdio.h>
main()
{
int sum,pad;
sum=pad=5;
pad=sum++;
pad++;
++pad;
printf(「%d\n」,pad);
}
A.7 B.6 C.5 D.4
22) 以下程序的運行結果為
#include<stdio.h>
main()
{
int a=2,b=10;
printf(「a=%%d,b=%%d\n」,a,b);
}
A.a=%2,b=%10 B.a=2,b=10
C. a=%%d,b=%%d D. a=%d,b=%d
23) 為了避免嵌套的if-else語句的二義性,C語言規定else總是
A.與縮排位置相同的if組成配對關系
B.與在其之前未配對的if組成配對關系
C. 與在其之前未配對的最近的if組成配對關系
D.與同一行上的if組成配對關系
24) 對於for(表達式1;;表達式3)可理解為
A.for(表達式1;表達式3) B. for(表達式1;1;表達式3)
C. for(表達式1;0;表達式3) D. for(表達式1;表達式3;表達式3)
25) 在下列數組定義、初始化或賦值語句中,正確的是
A.int a[8]=100; B.int s[5]={1,2,3,4,5,6};
C.int x[]={1,2,3,4,5,6}; D.int n=8;int score[n];
26) 若已有定義:int i,a[100];則下列語句中,不正確的是
A.for(i=0;i<100;i++) a[i]=i; B. for(i=0;i<100;i++) scanf(「%d」,&a[i]);
C.scanf(「%d」,&a); D.for(i=0;i<100;i++) scanf(「%d」,a+i);
27) 與定義char c[]={「GOOD」};不等價的是
A.char c[]={『G』,』O』,』O』,』D』,』\0』}; B. char c[]=「GOOD」;
C. char c[4]={「GOOD」}; D. char c[5]={『G』,』O』,』O』,』D』,』\0』};
28) 若已有定義char c[]={「GOOD」};則下列語句 中,不正確的是
A.puts(c); B.for(i=0;c[i]!=』\0』;i++) printf(「%c」,c[i]);
C.printf(「%s」,c); D.for(i=0; c[i]!=』\0』;i++) putchar(c);
29) 若定義a[][3]={0,1,2,3,4,5,6,7};則a數組中行的大小是
A.2 B.3 C.4 D.不確定值
30) 以下程序的運行結果是
#include<stdio.h>
void f(int b[])
{
int i=0;
while(b[i]<=10)
{
b[i]+=2;
i++;
}
}
main()
{
int i,a[6]={-1,5,10,9,13,7};
f(a);
for(i=0;i<6;i++)
{
printf(「%2d」,a[i]);
}
}
A.2 7 12 11 13 9 B.1 7 12 11 13 7
C.1 7 12 11 13 9 D.1 7 12 9 13 7
31) 若執行以下程序段,其運行結果是
char c[]={『a』,』b』,』\0』,』c』,』\0』};
printf(「%s\n」,c);
A.ab c B.』a』』b』 C.abc D.ab
32) 數組名作為參數傳遞給函數,作為實際參數的數組名被處理為
A.該數組長度 B.該數組元素個數
C.該函數中各元素的值 D.該數組的首地址
33) 當接受用戶輸入 的含空格的字元串時,應使用函數
A.scanf() B.gets() C.getchar() D.getc()
34) 一個完整的可運行的C源程序中
A.可以有一個或多個主函數
B.必須有且僅有一個主函數
C.可以沒有主函數
D.必須不主函數和其他函數
35) 構成C語言源程序的基本單位是
A.子程序 B.過程 C.文本 D. 函數
36) 某C程序由一個主函數和一個自定義函數組成,則該程序
A.總是從max()函數開始執行
B.寫在前面的函數先開始執行
C.寫在後面的函數先開始執行
D. 總是從main()函數開始執行
37) C語言規定,一個C源程序的主函數名必須為
A.program B.include C.main D.function
38) 下列說法正確的是
A. 在書寫C語言源程序是,每個語句以逗號結束
B. 注釋時,』/』和』*』號間可以有空格
C. 無論注釋內容的多少,在對程序編譯時都被忽略
D. C程序每行只能寫一個語句
39) C語言中函數形參的預設存儲類型是
A.靜態 B.自動 C.寄存器 D.外部
40) 函數調用語句function((exp1,exp2),18)中含有的實參個數為
A.0 B.1 C.2 D.3
二. 填空題
1. 表達式10/3的結果是 ;10%3的結果是
2. 執行語句:int a=12;a+=a-=a*a;後的值是
3. 以下語句的輸出結果是
Short b=65535; printf(「%d」,b);
4. 以下程序的執行結果是
#include<stdio.h>
main()
{
int a,b,x;
x=(a=3,b=a--);
printf(「x=%d,a=%d,b=%d\n」,x,a,b);
}
5. 以下程序的執行結果是
#include<stdio.h>
main()
{
float f1,f2,f3,f4;
int m1,m2;
f1=f2=f3=f4=2;
m1=m2=1;
printf(「%d\n」,(m1=f1>=f2)&&(m2=f3<f4));
}
6. 以下程序的執行結果是
#include<stdio.h>
main()
{
float f=13.8;
int n;
n=(int)f%3;
printf(「n=%d\n」,n);
}
7. 若定義union ex{int i;float f;char a[10]}x;則sizeof(x)的值是
8. 設有int i=-1,如果在printf函數中用%u格式輸出i,則輸出結果是
9. 數組在內存中的首地址由 表示。
10. 「*」稱為 運算符。
三. 閱讀理解題
1. 下面程序的運行結果是
#include<stdio.h>
main()
{
static int a[4][5]={{1,2,3,4,0},{2,2,0,0,0},{3,4,5,0,0},{6,0,0,0,0}};
int j,k;
for(j=0;j<4;j++)
{
for(k=0;k<5;k++)
{
if(a[j][k]==0) break;
printf(「%d」,a[j][k]);
}
}
printf(「\n」);
}
2. 下面程序的運行結果是
#include<stdio.h>
main()
{
int a[]={1,2,3,4},i,j,s=0;
j=1;
for(i=3;i<=0;i--)
{
s=s+a[]*j;
j=j*10;
}
printf(「s=%d\n」,s)
}
3. 下面程序的運行結果是
#include<stdio.h>
int fun(int x)
{
int s;
if(x==0||x==1)
return 3;
s=x-fun(x-3);
return s;
}
main()
{
printf(「%d\n」,fun(3));
}
4. 下面程序的運行結果是
#include<stdio.h>
unsigned int fun(unsigned num)
{
unsigned int k=1;
do
{
k=k*num%10;
num=num/10;
}while(num);
return k;
}
5. 下面程序的運行結果是
#include<stdio.h>
int fun(int x,int y)
{
static int m=0,n=2;
n+=m+1;
m=n+x+y;
return m;
}
四. 編程題
1. 輸入四個整數,要求將它們按由小到大的順序輸出。
2. 編程求s=1-1/2+1/3-1/4+…-1/100。
3. 如果一個數等於其所有真因子(不包括其本身)之和,則該數為完數,例如6的因子有1、2、3,且6=1+2+3,故和為完數,求2~1000中的完數。(選做)
⑤ 計算機c語言考試包括哪幾部分
比如說郵箱發送,你要注意下,還有機考
它涉及的內容很多。筆試的內容基本上都是c語言,試題很多基本上都是選擇題和填空題,你看下課本基本就可以了筆試和機考,還有excel還有c語言編程還有改錯
⑥ c語言筆試題及答案
我就把主程序寫給你啊
main()
{
int x;
long int f;
printf("Please input x: ");
if(x>0)
f=2x-1;
else if(x=0)
f=-7909;
else
f=-5x+27;
printf("F(x)=%ld",f);
}
還有你說的圖一 根本看不到、、
⑦ 關於C語言筆試的幾道題
printf(..... B*2)
而B是什麼?是(A<A+2)-2
那麼也就是(A<A+2)-2*2 而你的2*((A<A+2)-2) 人家又沒有破號,你自己給他加一個上去,這能沒問題嗎?這沒什麼原理,是規定,是邏輯,想不通沒關系,這種樣的宏初級編程用不上,等你到達高級程度了也就自己會理解的了。
展開後是(A<A+2)-2*2 並不是2*((A<A+2)-2)
乘法當然比減法優先了,先乘後減。。。。。。。
第一題
首先定義了宏 A 他的值是10 實際上可以當成int a=10;
然後#define B (A<A+2)-2
實際上也就是#define B (10<10+2)-2
首先算術運算符比關系運演算法優先高就變成了 (10<12)-2,然後10<12條件是真,為1,變成了 1-2 由於printf("%d",B*2); 又變成了 1-2*2 結果1-4=-3;
第二題
這個二維數組分解開來就是 a[0][0]=1,a[0][1]=2,a[1][0]=3,a[1][1]=4,a[2][0]=5,a[2][1]=6, 這個二維數組是三行,二列,行的下標有0,1,2,列的下標有0,1 你的a[1][2]越界了。
第三題並不是單純的用box 的長度去和boss比較,而是acsii表裡的值去減,首先 b和b比,相等,會自動看下一個,o和o比,任然相等,然後x和s比,在acsii里x是120而s是115,所以box大,至於boss最後多出的s就不管了。
⑧ 全國計算機二級考試(c語言)的題型及各題分值是怎樣的(筆試和上機)
全國計算機二級考試(c語言)的題型及各題分值是怎樣的題型分值分布:
1、單項選擇題,40題,40分(含公共基礎知識部分10分)。
2、程序填空題,2~3個空,18分;上機題。
3、程序改錯題,2~3處錯誤,18分;上機題。
4、程序設計題,1題,24分;上機題。
二級公共基礎知識在各科考試選擇題中體現。程序設計部分,主要考查考生對程序設計語言使用和編程調試等基本能力,在選擇題和操作題中加以體現。
(8)c語言編程筆試擴展閱讀:
二級c語言考試要求:
1、熟悉Visual C++2010 Express集成開發環境。
2、掌握結構化程序設計的方法,具有良好的程序設計風格。
3、掌握程序設計中簡單的數據結構和演算法並能閱讀簡單的程序。
4、在Visual C++2010 Express集成環境下,能夠編寫簡單的C程序,並具有基本的糾錯和調試程序的能力。