國二c語言筆試真題
筆試是一種與面試對(duì)應(yīng)的測試,是用以考核應(yīng)聘者特定的知識(shí)、專業(yè)技術(shù)水平和文字運(yùn)用能力的一種書面考試形式。這種方法可以有效的測量應(yīng)聘人的基本知識(shí)、專業(yè)知識(shí)、管理知識(shí)、綜合分析能力和文字表達(dá)能力等素質(zhì)及能力的差異。筆試在員工招聘中有相當(dāng)大的作用,尤其是在大規(guī)模的員工招聘中,它可以一下子把員工的基本活動(dòng)了解清楚,然后可以劃分出一個(gè)基本符合需要的界限。
計(jì)算機(jī)二級(jí)C語言筆試歷年真題及答案
一、選擇題(每小題2分,共70分)
下列各題A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的。請(qǐng)將正確選項(xiàng)填涂在答題卡相應(yīng)位置上,答在試卷上不得分。
(1)下列敘述中正確的是
A)線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間是相同的
B)線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要多于順序存儲(chǔ)結(jié)構(gòu)
C)線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)
D)上述三種說法都不對(duì)
(2)下列敘述中正確的是
A)在棧中,棧中元素隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
B)在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動(dòng)態(tài)變化
C)在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動(dòng)態(tài)變化
D)上述三種說法都不對(duì)
(3)軟件測試的目的是
A)評(píng)估軟件可靠性
B)發(fā)現(xiàn)并改正程序中的錯(cuò)誤
C)改正程序中的錯(cuò)誤
D)發(fā)現(xiàn)程序中的錯(cuò)誤
(4)下面描述中,不屬于軟件危機(jī)表現(xiàn)的是
A)軟件過程不規(guī)范
B)軟件開發(fā)生產(chǎn)率低
C)軟件質(zhì)量難以控制
D)軟件成本不斷提高
(5)軟件生命周期是指
A)軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程
B)軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測試完成的過程
C)軟件的開發(fā)過程
D)軟件的運(yùn)行維護(hù)過程
(6)面向?qū)ο蠓椒ㄖ校^承是指
A)一組對(duì)象所具有的相似性質(zhì)
2010年3月二級(jí)C語言筆試真題
2010年3月二級(jí)C語言筆試真題
(考試時(shí)間:120分鐘,滿分100分)
(1)下列敘述中正確的是
A)對(duì)長度為n的有序鏈表進(jìn)行查找,最壞清況下需要的比較次數(shù)為n
B)對(duì)長度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(n/2) C)對(duì)長度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(log2n) D)對(duì)長度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(nlog2n) (2)算法的時(shí)間復(fù)雜度是指 A)算法的執(zhí)行時(shí)間 B)算法所處理的數(shù)據(jù)量 C)算法程序中的語句或指令條數(shù) D)算法在執(zhí)行過程中所需要的基本運(yùn)算次數(shù) (3)軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。
A)編輯軟件 B)操作系統(tǒng) C)教務(wù)管理系統(tǒng) D)瀏覽器 則由關(guān)系K得到關(guān)系T的操作是 (4)軟件(程序)調(diào)試的任務(wù)是 A)選擇 A)診斷和改正程序中的錯(cuò)誤 B)投影 B)盡可能多地發(fā)現(xiàn)程序中的錯(cuò)誤 C)交 C)發(fā)現(xiàn)并改正程序中的所有錯(cuò)誤 D)并 D)確定程序中錯(cuò)誤的性質(zhì)
(11)以下敘述正確的是 (5)數(shù)據(jù)流程圖(DFD圖)是 A)C語言程序是由過程和函數(shù)組成的 A)軟件概要設(shè)計(jì)的工具 B)C語言函數(shù)可以嵌套調(diào)用,例如:fun(fun(x)) B)軟件詳細(xì)設(shè)計(jì)的工具 C)C語言函數(shù)不可以單獨(dú)編譯 C)結(jié)構(gòu)化方法的需求分析工具 D)C語言中除了main函數(shù),其他函數(shù)不可作為單獨(dú)文件形式存在 D)面向?qū)ο蠓椒ǖ男枨蠓治龉ぞ?(12)以下關(guān)于C語言的敘述中正確的是 6)軟件生命周期可分為定義階段,開發(fā)階段和維護(hù)階段。詳細(xì)設(shè)計(jì)屬于 A)C語言中的注釋不可以夾在變量名或關(guān)鍵字的中間 A)定義階段 B)C語言中的變量可以在使用之前的任何位置進(jìn)行定義 B)開發(fā)階段 C)在C語言算術(shù)表達(dá)式的書寫中,運(yùn)算符兩側(cè)的運(yùn)算數(shù)類型必須一致 C)維護(hù)階段 D)C語言的數(shù)值常量中夾帶空格不影響常量值的正確表示 D)上述三個(gè)階段
C語言筆試真題參考 試題分享
C語言筆試題目參考:
一、判斷題
1、int(*ptr)(),則ptr是一維數(shù)組的.名字。()
2、有數(shù)組定義inta[2][2]={{1},{2,3}};則a[0][1]的值為0。()
3、指針在任何情況下都可進(jìn)行>,<,>=,<=,==運(yùn)算。()
4、switch(c)語句中c可以是int,long,char,float,unsignedint類型。()
5、#defineprint(x)printf("theno,"#x",is")
二、填空題
1、voidsetmemory(char**p,intnum)
{*p=(char*)malloc(num);}voidtest(void){char*str=NULL;getmemory(&str,100);strcpy(str,"hello");printf(str);}
運(yùn)行test函數(shù)有什么結(jié)果?()
2、在windows下,寫出運(yùn)行結(jié)果,每空2分,共10分。
charstr[]="Hello";char*p=str;intn=10;sizeof(str)=()sizeof(p)=()sizeof(n)=()voidfunc(charstr[100]){}sizeof(str)=()
二級(jí)c語言筆試真題
下面由我們YJBYS求職網(wǎng)專家為您分享關(guān)于二級(jí)c語言筆試真題,請(qǐng)您參考:
函數(shù)fun 的功能是:計(jì)算正整數(shù)n 的所有因子(1 和n 除外)之和作為
函數(shù)值返回。 例如:n=120 時(shí),函數(shù)值為239。
#include < conio.h >
#include < stdio.h >
int fun(int n)
{ int _1__,s=0;
/*能整除n 的自然數(shù)即稱為因子*/
for (i=2;i< n;i++)
if (n%i==0) s=___2__;
return (s);
}
main() /*主函數(shù)*/
{ printf("%d\n",fun(120));
}
(2011年2月)
解析: 本題的考核點(diǎn)是計(jì)算n 所有因子的算法。
解題思路:判斷因子的方法是:能被n整除的數(shù)。由于題意中指明需將1和n
除外,所以循環(huán)的范圍應(yīng)從2至n-1。
答案:1: i 2: s+i
答案:【1】i 【2】s+i
【真題2】 已知一個(gè)數(shù)列的前三項(xiàng)分別為0,0,1, 以后的各項(xiàng)都是其相鄰的前三
項(xiàng)之和。給定程序modi.c 中函數(shù) fun 的功能是:計(jì)算并輸出該數(shù)列前n項(xiàng)的平方
根之和sum。n 的值通過形參傳入。 例如,當(dāng)n=10 時(shí),程序的輸出結(jié)果應(yīng)為:
23.197745。 請(qǐng)改正函數(shù)fun 中的錯(cuò)誤,使程序能輸出正確的結(jié)果。 注意:不要
改動(dòng)main 函數(shù),
#include < conio.h >
#include < stdio.h >
#include < math.h >
/************found************/
fun(int n)
{ double sum, s0, s1, s2, s; int k;
sum = 1.0;
if (n < = 2) sum = 0.0;
s0 = 0.0; s1 = 0.0; s2 = 1.0;
for (k = 4; k < = n; k++)
{ s = s0 + s1 + s2;
sum += sqrt(s);
s0 = s1; s1 = s2; s2 = s;
}
/************found************/
return sum
}
main ( )
{ int n;
clrscr( );
printf("Input N=");
scanf("%d", &n);
printf("%f\n", fun(n) );
}
(2011年2月)
解析: 本題的考核點(diǎn)是C語言中的函數(shù)的入口參數(shù)和類型轉(zhuǎn)換。
C 語言規(guī)定,凡不加類型說明的函數(shù),一律自動(dòng)按整型處理。如果函數(shù)有返回
值,這個(gè)值當(dāng)然應(yīng)屬于某一個(gè)確定的類型,應(yīng)當(dāng)在定義函數(shù)時(shí)指定函數(shù)值的類
型。根據(jù)題意,函數(shù)返回值為實(shí)型,所以第一處錯(cuò)誤"fun(int n)"應(yīng)改為"float
fun (int n)"或具有相同作用的句子。
函數(shù)的返回值是通過函數(shù)中的return語句獲得的。return 語句后面的括弧可以
不要,但分號(hào)不能少,必須加分號(hào)。所以,第二處錯(cuò)誤應(yīng)改為"return sum;"或
相同作用的句子。
如果函數(shù)值的類型和return語句中表達(dá)式的 值不一致,則以函數(shù)類型為準(zhǔn)。對(duì)
數(shù)值型數(shù)據(jù),可以自動(dòng)進(jìn)行類型轉(zhuǎn)換。即函數(shù)類型決定返回值的類型。
本評(píng)析僅作參考。
【真題3】 請(qǐng)編寫函數(shù)fun(),它的功能是求Fibonacci數(shù)列中小于t的'最大的一個(gè)
數(shù),結(jié)果由函數(shù)返回。其中Fibonacci 數(shù)列F(n)的定義為 F(0)=0,F(xiàn)(1)=1,
F(n)=F(n-1)+F(n-2) 例如:t=1000 時(shí) ,函數(shù)值為987。 注意:部分源程序給
出如下。 請(qǐng)勿改動(dòng)主函數(shù)main 和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)
中填入所編寫的若干語句。 試題程序:
#include < conio.h >
#include < math.h >
#include < stdio.h >
int fun(int t)
{…… }
main()
{int n;
clrscr();
n=1000;
printf("n=%d, f=%d\n",n, fun(n)); }
(2011年2月)
解析:
int fun(int t)
{int a=1,b=1,c=0,i; /*a 代表第n-2 項(xiàng),b 代表第n-1 項(xiàng),c 代表
第n 項(xiàng)*/
/*如果求得的數(shù)c 比指定比較的數(shù)小,則
計(jì)算下一個(gè)Fibonacci 數(shù),對(duì)a,b 重新置數(shù)*/
do {
c=a+b;
a=b;
b=c;
}
while (c< t); /*如果求得的數(shù)c 比指定比較的數(shù)大時(shí),退出
循環(huán)*/
c=a; /*此時(shí)數(shù)c 的前一個(gè)Fibonacci 數(shù)為小于指
定比較的數(shù)的最大的數(shù)*/
return c;}
四川省計(jì)算機(jī)二級(jí)C語言筆試真題及答案
在計(jì)算機(jī)C語言考試之際,yjbys小編為大家提供的是最新的上機(jī)考試題,希望對(duì)大家的復(fù)習(xí)有所幫助!
甲乙丙丁四人同時(shí)開始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次, 丙 每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函數(shù)fun的功能是根據(jù)形參 提供的值,求出總共聽到多少次鞭炮聲作為函數(shù)值返回。注意,當(dāng)幾個(gè)鞭炮同時(shí) 炸響,只算一次響聲,第一次響聲是在第0秒。
例如,若t1=7,t2=5,t3=6,t4=4,n=10,則總共可聽到28次鞭炮聲。
請(qǐng)?jiān)诔绦虻南聞澗處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。
注意:源程序存放在考生文件夾下的BLANK1.C中。
不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
給定源程序:
#include
#define OK(i, t, n) ((___1___%t==0) && (i/t
int fun(int t1, int t2, int t3, int t4, int n)
{ int count, t , maxt=t1;
if (maxt < t2) maxt = t2;
if (maxt < t3) maxt = t3;
if (maxt < t4) maxt = t4;
count=1; /* 給count賦初值 */
for(t=1; t< maxt*(n-1); ___2___)