1、 函數(shù)調(diào)用:strcat(strcpy(str1,str2),str3)的功能是________。
公司主營(yíng)業(yè)務(wù):成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶(hù)真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶(hù)帶來(lái)驚喜。創(chuàng)新互聯(lián)推出廣安免費(fèi)做網(wǎng)站回饋大家。
C) 將串str2復(fù)制到串str1中后再將串str3連接到串str1之后
2、 若有以下調(diào)用語(yǔ)句,則正確的fun函數(shù)首部是
main()
{ ∶
∶
int a;float x;
∶
∶
fun(x,a);
∶
∶
}
B) void fun(float a,int x)
3、 有如下程序
int func(int a,int b)
{ return(a+b); }
main()
{ int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf("%d\n",r); }
該程序的輸出結(jié)果是__________。
D) 15
4、 函數(shù)pi的功能是根據(jù)以下近似公式求π值:
(π*π)/6=1+1/(2*2)+1/(3*3)+……+1/(n*n)
請(qǐng)你在下面程序中的劃線(xiàn)部分填入________,完成求π的功能。
#include "math.h"
double pi(long n)
{ double s=0.0; long i;
for(i=1;i=n;i++) s=s+________;
return (sqrt(6*s)); }
A) 1.0/i/i
5、 在調(diào)用函數(shù)時(shí),如果實(shí)參是簡(jiǎn)單變量,它與對(duì)應(yīng)形參之間的數(shù)據(jù)傳遞
方式是________。
B) 單向值傳遞
6、 對(duì)于C語(yǔ)言的函數(shù),下列敘述中正確的是________。
A) 函數(shù)的定義不能嵌套,但函數(shù)調(diào)用可以嵌套 (這答案有待斟酌)
7、 函數(shù)f的功能是:測(cè)定字符串的長(zhǎng)度,空白處應(yīng)填入________。
int f(char s[ ])
{ int i=0;
while(s[i]!='\0') i++;
return (________); }
main( )
{ printf("%d\n",f("goodbye!")); }
B) i
8、 若主調(diào)用函數(shù)類(lèi)型為double,被調(diào)用函數(shù)定義中沒(méi)有進(jìn)行函數(shù)類(lèi)型
說(shuō)明,而return語(yǔ)句中的表達(dá)式類(lèi)型為float型,則被調(diào)函數(shù)返回
值的類(lèi)型是________。
C) double 型
9、 以下敘述中,錯(cuò)誤的是________。
D) 形參可以是常量、變量或表達(dá)式
10、 以下敘述中,不正確的是________。
B) 在main函數(shù)體內(nèi)定義的變量是全局變量
c語(yǔ)言考試題(一)
一、 單項(xiàng)選擇題(每題2分,共20分)
1、以下選項(xiàng)中屬于C語(yǔ)言的數(shù)據(jù)類(lèi)型是( )
A.復(fù)數(shù)型 B.邏輯型 C.集合型 D.雙精度型
2、一個(gè)C程序的執(zhí)行是從( )
A.main()函數(shù)開(kāi)始,直到main()函數(shù)結(jié)束 B.第一個(gè)函數(shù)開(kāi)始,直到最后一個(gè)函數(shù)結(jié)束
C.第一個(gè)語(yǔ)句開(kāi)始,直到最后一個(gè)語(yǔ)句結(jié)束 D.main()函數(shù)開(kāi)始,直到最后一個(gè)函數(shù)結(jié)束
3、設(shè)有語(yǔ)句int a=3;則執(zhí)行語(yǔ)句a+=a-=a*a;后,變量a的值是( )
A.3 B.0C.-12?。模?/p>
4、若有 char c[5]={'c','d','\0','e','\0'};則執(zhí)行語(yǔ)句printf("%s",c);結(jié)果是( )。
A.cd\0e B.'c''d' C.cd D.cd e
5、已知:int a[2][3]={1,2,3,4,5,6}, (*p)[3]=a;則下列表達(dá)式不是4的是 ( )。
A.*(*p+3) B.*p+3 C.*(*(p+0)+3) D.a(chǎn)[0][3]
6、以下有宏替換不正確的敘述( ).
A.宏替換不占用運(yùn)行時(shí)間 B.宏名無(wú)類(lèi)型
C.宏替換只是字符串替換 D.宏名必須用大寫(xiě)字母表示
7、執(zhí)行char str[10]=”Ch\nina”; strlen(str)的值是( )
A.5 B.6 C.7 D.9
8、下面程序的輸出結(jié)果是:( )
#define POWER(x) (x*x)
main()
{int i=4; printf("%d",POWER(i-2)); }
A. -9 B. -7 C. 5 D. -6
9、在定義int a[3][4][2];后,第10個(gè)元素是( )
A.a(chǎn)[2][1][2] B.a(chǎn)[1][0][1] C.a(chǎn)[2][0][1] D.a(chǎn)[2][2][1]
10、下面程序的輸出結(jié)果是:( )
typedef struct
{long x[2];brshort y[4];brchar z[8];br}MYTYPE;
MYTYPE a;
main()
{ printf("%d\n",sizeof(a));}
A. 2 B. 8 C. 14 D. 24
二、 填空題(每空1分,共11分)
1、字符串"A"在內(nèi)存中占用的字節(jié)數(shù)為 。
2、C語(yǔ)言中的標(biāo)識(shí)符只能由字母、下劃線(xiàn)和 組成。
3、若有定義語(yǔ)句“ int a=25,b=14,c=19;",以下語(yǔ)句的執(zhí)行結(jié)果是
if(a++=25b--=2c++) printf("***a=%d,b=%d,c=%d\n",a,b,c);
else printf("###a=%d,b=%d,c=%d\n",a,b,c);
4、有如下定義a[]="B\172\\\'a%%";則執(zhí)行語(yǔ)句printf("%d",strlen(a));的結(jié)果為 。
5、若有定義:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12},*p[4],i; for(i=0;i4;i++) p[i]=a[i*3];則*(*(p+1)+2)的值為 ,*p[2]的值為 。若數(shù)組的首地址為2000,則p[1]指向的地址為 。
6、設(shè)a=2,b=3,x=3.5,y=2.5,則表達(dá)式(float)(a+b)/2+(int)x%(int)y 的結(jié)果是 。
7、設(shè)x、y都是int型變量,初值都為1,則執(zhí)行表達(dá)式:--xy++后,y的值為 。
8、語(yǔ)句for(i=1;i==10;i++)continue;循環(huán)的次數(shù)是 。
9、以下程序輸出 。
main()
{enum em {em1=3,em2=1,em3};
char *aa[]={"AA","BB","CC","DD"}; printf("%s%s%s\n",aa[em1],aa[em2],aa[em3]);
}
三、 寫(xiě)程序結(jié)果(每題5分,共35分)
1、#include
main()
{int x,y,z;brx=1,y=2,z=3; x+=y+=z;brprintf("1:%d\n",z+=xy?x++:y++);brx=0x02ff;y=0xff00;brprintf("2:%d\n",(xy)4|0x005f);brx=y=z=-1; ++x||++y++z;brprintf("3:%d,%d,%d\n",x,y,z);br}
2、#define f(x) x*x
main()
{int a=6,b=2,c;brc=f(a+b)/f(b);brprintf(“%d\n”,c);br}
3、fun(int k)
{ printf("%d",k);
if(k0)
fun(k-1);
}
main( )
{ int w=5; fun(w); printf("\n"); }
4、#include
main()
{int x=1,y=0;brswitch(x)br{ case 1:brswitch(y)br{ case 0:printf(“first\n”);break;brcase 1:printf(“second\n”);break;br}
case 2:printf(“third\n”);
}
}
5、#include
main()
{ int k=4;
func(k); func(k);
}
func(int a)
{ static int m=0;
m+=a;
printf("%d",m);
}
6、struct st
{ int x;
int *y;
}*p;
int s[]={30,20};
struct st a[]={1,s[0],2,s[1]};
main()
{ p=a; printf("%d,",p-x);
printf("%d\n",++(*(++p)-y));
}
7、假定在當(dāng)前盤(pán)目錄下有2個(gè)文本文件,其名稱(chēng)和內(nèi)容如下:
文件名: a1.txt a2.txt
內(nèi)容: ABCDEF# abcdef#
#include "stdio.h"
main()
{FILE *fp;brvoid fc();brif((fp=fopen("a1.txt","r"))==NULL)br{printf("Can not open file!\n"); exit(1);}
else{fc(fp);fclose(fp);}
if((fp=fopen("a2.txt","r"))==NULL)
{printf("Can not open file!\n"); exit(1);}
else{fc(fp);fclose(fp);}
}
void fc(fp1)
FILE *fp1;
{char c;brwhile((c=fgetc(fp1))!='#')putchar(c);br}
四、 程序填空(每空2分,共14分)
1、下面程序求矩陣a的主對(duì)角線(xiàn)元素之和,請(qǐng)?zhí)羁铡?/p>
main()
{ int a[3][3]={2,4,6,8,10,12,14,16,18};
int sum=0,i,j;
for(i=0;i3; ① )
for(j=0; ② ;j++)
if(i= =j) sum=sum+ ③ ;
printf("sum=%d\n",sum);
}
2、下列函數(shù)coy把字符數(shù)組S2中的全部字符復(fù)制到字符數(shù)組S1中, 復(fù)制時(shí)’\0’也要復(fù)制過(guò)去,’\0’后面的字符不用。
coy(char s1[],char s2[])
{ int i;
for(i=0;s2[i]!= ① ;i++)
s1[i]=s2[i];
② ;
}
3、下面程序的功能是將字符串a(chǎn)中的下標(biāo)為奇數(shù)的元素由小到大排序,其他元素不變,請(qǐng)?zhí)羁铡?/p>
main()
{ char a[]="students",t; int i,j;
for(i=1;i7;i+=2)
for(j=i+2;j8; ① )
if( ② )
{t=a[i];a[i]=a[j];a[j]=t;}
puts(a);
}
c語(yǔ)言考試題(二)
一. 填空題(每題2分,共20分)
1. C語(yǔ)言基本數(shù)據(jù)類(lèi)型有:_______________________________;
構(gòu)造類(lèi)型有:_____________________________________。 P.13
2. C語(yǔ)言源程序注注釋符號(hào)是:________________________________,
為表明層次結(jié)構(gòu),C語(yǔ)言源程序通常采用_____________________格式編寫(xiě)。P.4
3. 源程序TEST.C經(jīng)編譯產(chǎn)生的目標(biāo)文件是:________________________;
經(jīng)連接處理后,產(chǎn)生的可執(zhí)行文件是:__________________________。
4. strlen(“1234 \ 0xy)的值為:_____________________________;
sizeof(float)的值為:____________________________
5. 二維數(shù)組a[10] [50]最后一行的首地址為:_________________________;
最后一個(gè)元素的首地址為:____________________________________。
6. C標(biāo)準(zhǔn)庫(kù)函數(shù)中,數(shù)學(xué)函數(shù)的原型在:________________頭文件中,自定義頭文件D :\ MYC \ MY . H應(yīng)如何包含到源程序文件中:_________________________。P.130
7. 已知函數(shù)定義為:int stat(int?。幔琭loat *p)
{……………}
則此函數(shù)的兩個(gè)參數(shù)類(lèi)型分別是_______________ 、 _____________________。
8. 設(shè)int x,y,z=4;
x=y(tǒng)=++z;
x=(yz)?x+2;x++;則x的值是:_________;
設(shè)int a=0,b=0,c=0;c=++a | | b++; ,則a、b、c值分別是:_____________。
9. 與if (x=0) 等價(jià)的寫(xiě)法是if ( ! x );
判斷兩個(gè)(float)變量x,z是否相等一般:if ( fabc(x-z)1e-6 )。
10.已知賦值語(yǔ)句zhang.year=1985;可判斷zhang是_______________類(lèi)型的變量;
定義文件指針的C語(yǔ)句是:_________________________________。
二. 單項(xiàng)選擇題 (每題1分,共10分)
1. 組成C程序的基本單位是____________________________。
A.函數(shù) B.標(biāo)識(shí)符 C.表達(dá)式 D.語(yǔ)句
2. 設(shè)int類(lèi)型的數(shù)據(jù)長(zhǎng)度為2字節(jié),則該類(lèi)型數(shù)據(jù)的取值范圍是__________________。
A.0至65536 B.0至65535
C.-32767至32768 D.-32768至32767
3. 在C語(yǔ)言中,邏輯值“真”是用_____________________表示的。
A.預(yù)定義為真值的宏 B.非零數(shù)
C.正數(shù) D.非零整數(shù)
4. C語(yǔ)言對(duì)于嵌套if語(yǔ)句規(guī)定else總是與_____________________匹配。
A.與最外層的if B.與之前最近的if
C.與之前最近的不帶else的if D.與最近的{ }之前的if
5. 數(shù)組定義char a[10]={`a`,`b`,`c`}:包括了幾個(gè)元素____________________。
A.3 B.9 C.4 D.10
6. 數(shù)組名作為實(shí)參傳給被調(diào)用的函數(shù)時(shí),形參獲得的是_____________________。
A.該數(shù)組第一個(gè)元素的值 B.該數(shù)組所有元素的值
C.該數(shù)組第一個(gè)元素的首地址 D.該數(shù)組所有元素的首地址
7. 為表示關(guān)系x ≥ y ≥z,正確的C語(yǔ)言表達(dá)式為_(kāi)________________________。
A.(x=y=z) B.(x=y)AND(y=z)
C.(x=y)(y=z) D.(xy)(y=z)
8. 根據(jù)定義int a[ ]={1,2,3},i,*p=a; 從語(yǔ)法分析_________________是不正確的。
A. a[p-a] B.*(a) C.p D.*(*(a+i))
9. 若有語(yǔ)句scanf(“%d%d”,a,b);要使變量a,b分別得到12和34;正確的輸入形式為_(kāi)___________________________。
A.12 34 B.12,34 C.1234 D.12:34
10.union uex {int i;float f;char c;}ex;則sizeof(ex)的值是____________________。
A.4 B.5 C.6 D.7
三. 分析程序,寫(xiě)出運(yùn)行結(jié)果。(每題4分,共20分)
1. 源程序如下,運(yùn)行時(shí)假定鍵盤(pán)輸入字符串為``2004``
#include
void main(void)
{
int n=0;
char c;
while( (c=getchar( )) ! =`\n` ) /*字符型數(shù)字*/
{
if (c=`0`c=`9` )
n = n*10 + c- `0` ; /*數(shù)字*/
}
printf(“value=%d|n” ,n);
}
結(jié)果為: value=2004 。
2. 源程序如下:
#include
void main(void)
{
int num[9]={399,398,397,396,395,299,290,311,301};
int score[9]={81,85,59,77,90,66,89,93,73};
int iMax,iPos,i;
iPos=0;
iMax=score[iPos];
for(i=1;i9;i++)
if(scoreiMax)
{
iPos=i;
iMax=score[iPox];
}
printf(“num=%d,score=%d”,num[iPos];score[iPos]);
結(jié)果為: num=311, score=93 。
3. 源程序如下,運(yùn)行時(shí)假定鍵盤(pán)輸入數(shù)據(jù)為:1 2 3 4 5 6 7 8 9 10
#include
void main(void)
{
int i,a[10];
int *p;
p=a;
for(i=0;i10;i++)
scanf(“%d“,p++);
for(p=a;p SPAN;p++)
if (*p%2)printf(“%3d”,*p);
}
結(jié)果為: 1 3 5 7 9 。
4. 源程序如下,兩次運(yùn)行,分別輸入數(shù)據(jù)13和21
#include
#include
void main(void)
{
int n,s;
scant (“%d”,n);
s=panduan( n);
if(s==1)printf(“yes\n”);
else printf(“no\n);
}
int panduan(int n)
{
int k,j;
k=(int)sqrt((double)n);
for(j=2;j=k,j++)
{
if(n%j==0) break;
}
if(jk) retum(1);
else retum(0);
}
結(jié)果為 yes
no
5.源程序如下,運(yùn)行時(shí)假定鍵盤(pán)輸入字符為:AxByCz
#include
#include
void main(void)
{
char str[80];
int i;
gets(str);
for(i=0;str!=`\0`;i++)
if(str=`a`str=`z`) str-=32;
else if (str=`A`str=`Z`) str+=32;
puts(str);
}
結(jié)果為: aXbYcZ 。
四. 下列程序中每個(gè)劃線(xiàn)處有一個(gè)錯(cuò)誤,改正劃線(xiàn) 中的錯(cuò)誤,使其實(shí)現(xiàn)題目要求。(每體4分,共20分)
1. 求 s=1+2+3+、、、、、、、+100
include 改正為_(kāi)________________________。
void sum (void) 改正為_(kāi)________________________。
{
int s,i;
for (s=0,i=1;i=100;i++)
{
s=s+ i ++; 改正為_(kāi)_________________________。
}
printf (“s=%f”,s) 改正為_(kāi)_________________________。
}
2. 源程序?qū)崿F(xiàn)求x
#include
double pow(float . int) 改正為_(kāi)________________________。
void main(void)
{
int i, n;
float x;
scanf (“%f,%d”,x,n);
for (i=1; i9;i++)
printf(“%d,%e\n”, i, pow(i,x);
} 改正為_(kāi)_____________________。
double v v pow(float x, int n)
{
int i;
double p=0; 改正為_(kāi)_____________________。
for (i=1; i i++)改正為_(kāi)______________________。
p*=x;
retum(p);
}
3. 源程序?qū)崿F(xiàn)排升序。
#include
void main(void)
{
int i, j, iMin, a[10]={4,3,5,1,10,12,2,6,7,9}, iTemp;
for (i=0; i9; i++)
{
iMin=0; 改正為_(kāi)______________________。
for (j=i+1; j10;j++)
if(a[iMin] iMin="j;"改正為_(kāi)______________________。
if (iMin==i) 改正為_(kāi)________________________。
{ iTemp=a;
a[iMin]=a; 改正為_(kāi)________________________。
a[iMin]=iTemp;
}
}
for(i=0; i10; i++)
printf(“%4d”, a):
}
4. 源程序?yàn)榍笃骄怠?/p>
#include
void main(void)
{
int i, sum; 改正為_(kāi)___________________。
float avg;
int sc[10], *p=sc;
for (i=0, i10; i++) 改正為_(kāi)___________________。
{
scanf(“%d”, p++);
sum+= *p; 改正為_(kāi)___________________。
}
avg = sum/ 10; 改正為_(kāi)__________________。
printf(“avg=%f”, avg);
}
5. 源程序求 eX=1+x+x2/2!+……+xn/n!前n+1項(xiàng)之和
#include
void main(void
{
float exp , x , t;
int i, n;
scanf(“%f, %d”,x, n);
t=0; 改正為_(kāi)__________________。
exp=1.0;
for(i=1 ; i=n; i++)
{
if(t1e-6) loop; 改正為_(kāi)_________________。
t+=x/i; 改正為_(kāi)__________________。
exp*=t; 改正為_(kāi)__________________。
}
printf(“\n%15.6f”, exp);
}
五. 編程題 (每題6分,共30分)
1. 根據(jù)以下程序框架,編寫(xiě)子函數(shù),實(shí)現(xiàn)交換兩個(gè)整型變量x和y的值。
#include
void swap (int *, int *);
void main (void)
{
int x, y;
scanf(“%d, %d”, x, y);
swap( x, y);
printf(“%d, %d”, x, y);
}
void swap( )
{
}
2. 設(shè)某班人數(shù)36人,參加C語(yǔ)言考試,用一維數(shù)組score[36]存放考試成績(jī),已給出一部分程序,完善以下程序,使其實(shí)現(xiàn)統(tǒng)計(jì)并輸出不及格人數(shù)及百分比。
#include
void main (void)
{ int i;
float scoer[36], precent;
int count=0;
for (i=0; i36; i++)
{
scanf(“%f”, score);
}
3. 完善以下程序使其實(shí)現(xiàn)由鍵盤(pán)任意輸入一串字符,統(tǒng)計(jì)其中大寫(xiě)字母?jìng)€(gè)數(shù)iA、小寫(xiě)字母?jìng)€(gè)數(shù)ia、其他字符個(gè)數(shù)iother。
#include
#include
void main (void)
{
char str [80];
int i, iA=0, ia=0, iother=0;
}
4. 完善以下程序使其實(shí)現(xiàn)求方陣主和輔對(duì)角線(xiàn)元素之和及其轉(zhuǎn)置矩陣,設(shè)方陣用二維數(shù)組a表示,轉(zhuǎn)置矩陣用t表示,sl和s2表示主和輔對(duì)角線(xiàn)元素之和。
#include
void main(void)
{
int a[3] [3]={1,3,5,7,9,11,13,15,11};
int i, j, s1, s2;
int t[3] [3];
printf(“%d, %d,\n”,s1, s2);
for(i=0; i3; i++)
for(j=0; j3; j++)
printf(“%3d”, t [j]);
}
5. 已知字符數(shù)組str[80],編寫(xiě)返回指針的子函數(shù),實(shí)現(xiàn)在其中查找字符ch首次出現(xiàn)的位置。
#include
#include
#include
char *lstrchar(char*, char);
void main(void)
{
char c, *p, str[80];
gets (str);
scanf(“%c”, c);
p=lstrchar(str,c);
if(p==NULL) printf(“char %c not found\n”c);
else printf(“The position is %d”, p-str);
char “l(fā)strchar( )
{ }
歷年全國(guó)計(jì)算機(jī)二級(jí)考試c語(yǔ)言真題及答案
您好,很高興回答您的問(wèn)題。
第一空應(yīng)該是對(duì)Fib函數(shù)進(jìn)行說(shuō)明void Fib(long f[],int n )
第二空為主函數(shù)調(diào)用Fib函數(shù)
Fib(a,20)
第三空為f[i]=f[i-1]+f[i-2]
以上就是我的回答,希望能幫助到您。
新聞標(biāo)題:c語(yǔ)言函數(shù)題目及答案 c語(yǔ)言考試常用函數(shù)
瀏覽地址:http://muchs.cn/article48/dophhhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站收錄、商城網(wǎng)站、響應(yīng)式網(wǎng)站、動(dòng)態(tài)網(wǎng)站、網(wǎng)站營(yíng)銷(xiāo)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)