- 計算機等級考試二級C語言考試試題帶答案 推薦度:
- 計算機二級考試C語言考試題含答案 推薦度:
- 相關(guān)推薦
2017年計算機二級考試C語言考試試題及答案
C語言是把高級語言的基本結(jié)構(gòu)和語句與低級語言的實用性結(jié)合起來的工作單元。以下是關(guān)于計算機二級考試C語言考試試題及答案,歡迎大家參考!
單選題
1). 若已定義的函數(shù)有返回值,則以下關(guān)于該函數(shù)調(diào)用的敘述中錯誤的是
A.函數(shù)調(diào)用可以作為獨立的語句存在
B.函數(shù)調(diào)用可以作為一個函數(shù)的實參
C.函數(shù)調(diào)用可以出現(xiàn)在表達式中
D.函數(shù)調(diào)用可以作為一個函數(shù)的形參
正確答案:D
2). 下列是用戶自定義標(biāo)識符的是
A._w1
B.3_xy
C.int
D.LINE-3
正確答案:A
3). 以下敘述中不正確的是
A.在不同的函數(shù)中可以使用相同的名字的變量
B.函數(shù)中的形式參數(shù)是局部變量
C.在一個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效
D.在一個函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效
正確答案:D
4). 以下描述錯誤的是
A.C程序中,函數(shù)可以直接或間接的調(diào)用自己
B.函數(shù)調(diào)用時,函數(shù)名必須與所調(diào)用的函數(shù)名字完全一致
C.函數(shù)說明語句中的類型必須與函數(shù)返回值的類型一致
D.實參數(shù)可以與形參個數(shù)不一致
正確答案:D
5). 下列說法中正確的是( )。
A.C程序書寫時,不區(qū)分大小寫字母
B.C程序書寫時,一行只能寫一個語句
C. C程序書寫時,一個語句可分成幾行書寫
D. C程序書寫時每行必須有行號
正確答案:C
答案解析:C語言嚴格區(qū)分大小寫字母,如"A1"和"a1"被認為是兩個不同的標(biāo)識符,C程序的書寫非常靈活,既可以一行多句,又可以一句多行,且每行不加行號。
6). 已知:char a[20]= "abc",b[20]= "defghi";則執(zhí)行下列語句后的輸出結(jié)果為printf("%d",strlen(strcpy(a,b)));
A.11
B.6
C.5
D.以上答案都不正確
正確答案:B
二操作題
1: 第1題請編寫函數(shù)fun,其功能是:將兩個兩位數(shù)的正整數(shù)a b合并形成一個整數(shù)放在c中。合并的方式是:將a數(shù)的十位和個位數(shù)依次放在c的十位和千位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的個位和百位上。
答案:
void fun(int a, int b, long *c)
{
*c=(a%10)*1000+(b%10)*100+(a/10)*10+b/10;
}
2: 第2題請編寫函數(shù)fun,它的功能是計算:s=(ln(1)+ln(2)+ln(3)+…+ln(m))(0.5),s作為函數(shù)值返回。
答案:
double fun(int m)
{
int I;
double s=0.0, log(double x);
for(i=1;i<=m;i++)
s=s+log(i);
s=sqrt(s);
return s;
}
3: 第3題請編寫函數(shù)fun,它的功能是計算下列級數(shù)和,和值由函數(shù)值返回。
S=1+x+x(2)/2!+x(3)/3!+…x(n)/n!
答案:
double fun(double x, int n)
{
double s=1.0, p=1.0;
int I,j,t;
for(i=1;i<=n;i++)
{
t=1;
for(j=1;j<=i;j++)
t=t*j;
p=p*x;
s=s+p/t;
}
return s;
}
4: 第4題規(guī)定輸入字符串中只包含字母和*號。請編寫函數(shù)fun,它的功能是:將函數(shù)字符串中的前導(dǎo)*號全部刪除,中間和尾部的*號不刪除。
答案:
void fun(char *a)
{
int i=0;
char *p=a;
while(*p&&*p==‘*’)
p++;
while(*p)
{
a[i]=*p;
i++;
p++;
}
a[i]=‘\0’;
}
5: 第5題假定輸入的字符串中只包含字母和*號。請編寫函數(shù)fun,它的功能是:使字符串的前導(dǎo)*號不得多于n個;若多于n個,則刪除多于的*號;若少于或等于n個,則什么也不做。字符串中間和尾部的*號不刪除。
答案:
void fun(char *a, int n)
{
int i=0,k=0;
char *t=a;
while(*t==‘*’)
{
k++;
t++;
}
t=a;
if(k>n)
t=a+k-n;
while( *t)
{
a[i]=*t;
i++;
t++;
}
a[i]=‘\0’;
}
【計算機二級考試C語言考試試題及答案】相關(guān)文章:
計算機二級考試C語言試題與答案09-16
計算機二級考試C語言試題及答案11-04
計算機二級C語言考試上機沖刺試題及答案07-11
計算機二級考試C++試題及答案09-20
計算機二級考試C++試題及答案08-14
2016年計算機二級C語言考試試題及答案08-01
2016年計算機二級C語言考試題及答案05-12
2017計算機c語言二級考試題庫及答案10-14