c語(yǔ)言練習(xí)試題
在學(xué)習(xí)、工作生活中,我們最不陌生的就是練習(xí)題了,做習(xí)題有助于提高我們分析問題和解決問題的能力。相信很多朋友都需要一份能切實(shí)有效地幫助到自己的習(xí)題吧?以下是小編為大家收集的c語(yǔ)言練習(xí)試題,歡迎大家借鑒與參考,希望對(duì)大家有所幫助。
c語(yǔ)言練習(xí)試題 篇1
一、程序設(shè)計(jì)基本概念
1、以下敘述正確的是:____。
A)C語(yǔ)言的源程序不必通過(guò)編譯就可以直接運(yùn)行。
B)C語(yǔ)言中的每條可執(zhí)行語(yǔ)句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令。
C)C語(yǔ)言源程序經(jīng)編譯形成的二進(jìn)制代碼可以直接運(yùn)行。
D)C語(yǔ)言中的函數(shù)不可以單獨(dú)進(jìn)行編譯。
2、一個(gè)算法應(yīng)該具有“確定性”等5個(gè)特性,下面對(duì)另外4個(gè)特性的描述中錯(cuò)誤的是_B_。
A)有0個(gè)或多個(gè)輸入。
B)有0個(gè)或多個(gè)輸出。
C)有窮性。
D)可行性。
3、以下敘述中正確的是____。
A)C語(yǔ)言比其它語(yǔ)言高級(jí)。
B)C語(yǔ)言可以不用編譯就能被計(jì)算機(jī)識(shí)別執(zhí)行。
C)C語(yǔ)言以接近英語(yǔ)國(guó)家的自然語(yǔ)言和數(shù)學(xué)語(yǔ)言作為語(yǔ)言的表達(dá)形式。
D)C語(yǔ)言出現(xiàn)的,具有其它語(yǔ)言的一切優(yōu)點(diǎn)。
4、C語(yǔ)言中用于結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)是___。
A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
B)if、switch、break
C)for、while、do-while
D)if、for、continue
5、為解決某一特定問題而設(shè)計(jì)的指令序列稱為____。
A)文檔 B)語(yǔ)言 C)程序 D)系統(tǒng)
6、用高級(jí)程序設(shè)計(jì)語(yǔ)言編寫的程序稱為___。
A)目標(biāo)程序 B)可執(zhí)行程序 C)源程序 D)偽代碼
7、能將高級(jí)語(yǔ)言編寫的源程序轉(zhuǎn)換成目標(biāo)程序的是____。
A)編輯程序 B)編譯程序 C)驅(qū)動(dòng)程序 D)鏈接程序
8、下列敘述中,正確一條是____。
A)計(jì)算機(jī)語(yǔ)言中,只有機(jī)器語(yǔ)言屬于低級(jí)語(yǔ)言。
B)高級(jí)語(yǔ)言源程序可以被計(jì)算機(jī)直接執(zhí)行。
C)C語(yǔ)言屬于高級(jí)語(yǔ)言。
D)機(jī)器語(yǔ)言是所用機(jī)器無(wú)關(guān)的。
二、C程序設(shè)計(jì)初步
1、以下4個(gè)用戶定義標(biāo)識(shí)符中,全部合法的一組是____。
A)_main enclude sin B)if –max turbo C)txt REAL 3COM D)int k_2 _001
2、以下不能定義為用戶標(biāo)識(shí)符的是___。
A)scanf B)Void C)_3com D)int
3、以下符合C語(yǔ)言語(yǔ)法的實(shí)型常量是___。
A)1.2E0.5 B)3.14159E C).5E-3 D)E15
4、若以下選項(xiàng)中的變量已正確定義,則正確的賦值語(yǔ)句是___。
A)x1=26.8%3; B)1+2=x2; C)x3=0x12; D)x4=1+2=3;
5、設(shè)有定義:floata=2,b=4,h=3;以下C語(yǔ)言表達(dá)式中與代數(shù)式
計(jì)算結(jié)果不相符的是___。
A)(a+b)*h/2 B)(1/2)*(a+b)*h C)(a+b)*h*1/2 D)h/2*(a+b)
6、下面敘述正確的是_____。
A)C程序中注釋部分可以出現(xiàn)在程序中任何合適的地方。
B)花括號(hào)“{”和“}”只能作為函數(shù)體的定界符。
C)構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名。
D)分號(hào)是C語(yǔ)句之間的分隔符,不是語(yǔ)句的一部分。
7、下列選項(xiàng)中可以作為C語(yǔ)言中合法整數(shù)的是____。
A)10110B B)0386 C)0Xffa D)x2a2
8、下列選項(xiàng)中非法的表達(dá)式是_____。
A)0<=x<100 B)i=j==0 C)(char)(65+3) D)x+1=x+1
9、有以下程序:
main(){int a; char c=10; float f=100.0;double x;
a=f/=c*=(x=6.5);
printf(“ %d %d %3.1f %3.1f ”,a,c,f,x);}
程序運(yùn)行后的輸出結(jié)果是___。
A)1 65 1 6.5 B)1 65 1.5 6.5 C)1 65 1.0 6.5 D)2 65 1.5 6.5
10、設(shè)有以下定義:
inta=0; double b=1.25; char c=’A’;
#define d 2
則下面語(yǔ)句中,錯(cuò)誤是____。
A)a++; B)b++; C)c++; D)d++;
11、設(shè)有如下程序段:
intx=2002,y=2003;
printf(“%d ”,(x,y));
則以下敘述正確的是____。
A)輸出語(yǔ)句中格式說(shuō)明的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),不能正確輸出。
B)運(yùn)行時(shí)產(chǎn)生出錯(cuò)信息。
C)輸出值為2002。
D)輸出值為2003。
12、設(shè)變量x為float型且已經(jīng)賦值,則以下語(yǔ)句中能夠?qū)中的數(shù)值保留到小數(shù)點(diǎn)后面2位,并將第3位四舍五入的是____。
A)x=x*100+0.5/100.0 B)x=(x*100+0.5)/100.0
C)x=(int)(x*100+0.5)/100.0 D)x=(x/100+0.5)*100.0
13、要求以下程序功能是計(jì)算:
main(){int n; float s;s=1.0;
for(n=10;n>1;n--) s=s+1/n;
printf(“%6.4f ”,s);}
程序運(yùn)行后輸出結(jié)果錯(cuò)誤,導(dǎo)致錯(cuò)誤結(jié)果的程序行是____。
A)s=1.0; B)for(n=10;n>1;n--) C)s=s+1/n; D)printf(“%6.4f ”,s);
14、在一個(gè)C程序中____。
A)main函數(shù)必須出現(xiàn)在所有函數(shù)之前。
B)main函數(shù)可以在任何地方出現(xiàn)。
C)main函數(shù)必須出現(xiàn)在所有函數(shù)之后。
D)main函數(shù)必須出現(xiàn)在固定位置。
15、下列敘述中,正確的是____。
A)C語(yǔ)言中既有邏輯類型也有集合類型。
B)C語(yǔ)言中沒有邏輯類型但有集合類型。
C)C語(yǔ)言中有邏輯類型但沒有集合類型。
D)C語(yǔ)言中既沒有邏輯類型也沒有集合類型。
16、下列關(guān)于C語(yǔ)言用戶標(biāo)識(shí)符的敘述中正確的是____。
A)用戶標(biāo)識(shí)中可以出現(xiàn)下劃線和中劃線(減號(hào))。
B)用戶標(biāo)識(shí)符中不可以出現(xiàn)中劃線,但可以出現(xiàn)下劃線。
C)用戶標(biāo)識(shí)符中可以出現(xiàn)下劃線,但不可以放在用戶標(biāo)識(shí)符的開頭。
D)用戶標(biāo)識(shí)符中可以出現(xiàn)下劃線和數(shù)字,它們都可以放在用戶標(biāo)識(shí)符的'開頭。
17、下列關(guān)于單目運(yùn)算符++、--的敘述中正確的是____。
A)它們的運(yùn)算對(duì)象可以是任何變量和常量。
B)它們的運(yùn)算對(duì)象可以是char型變量和int型變量,但不能是float型變量。
C)它們的運(yùn)算對(duì)象可以是int型變量,但不能是double型變量和float型變量。
D)它們的運(yùn)算對(duì)象可以是char型變量、int型變量和float型變量。
18、有以下程序:
main(){ int i=10,j=1; printf(“%d,%d ”,i--,++j);}
執(zhí)行后輸出結(jié)果是___。
A)9,2 B)10,2 C)9,1 D)10,1
填空題
1、以下sum函數(shù)的功能是計(jì)算下列級(jí)數(shù)之和。
,請(qǐng)給函數(shù)中的各變量正確賦初值。
double sum(double x,int n)
{ int i; double a,b,s;
。撸撸撸撸撸撸撸撸遱=1.0;a=1;b=1;
for(i=1;i<=n;i++)
{a=a*x;b=b*i;s=s+a/b;}
return s;}
2、若有語(yǔ)句:
int i=-19,j=i%4;printf(“%d ”,j);
則輸出結(jié)果是__-3___。(注:%運(yùn)算結(jié)果的符號(hào)與%前面數(shù)據(jù)的符號(hào)相同)
c語(yǔ)言練習(xí)試題 篇2
C語(yǔ)言是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,它既具有高級(jí)語(yǔ)言的特點(diǎn),又具有匯編語(yǔ)言的特點(diǎn)。以下是小編為大家搜索整理的C語(yǔ)言考點(diǎn)試題,歡迎大家閱讀!更多精彩內(nèi)容請(qǐng)及時(shí)關(guān)注我們考試網(wǎng)!
9: 請(qǐng)編寫一個(gè)函數(shù)fun,它的功能是:將ss所指字符串中所有下標(biāo)為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(若該位置上不是字母,則不轉(zhuǎn)換)。
答案:
void fun(char *ss)
{
int I,n;
n=strlen(ss);
for(i=1;i
if(ss[i]>=‘a(chǎn)’&& ss[i]<=‘z’)
ss[i]=ss[i]-32;
}
10: 請(qǐng)編寫一個(gè)函數(shù)fun,它的功能是:求除一個(gè)2×m整型二維數(shù)組中最大元素的值,并將此值返回調(diào)用函數(shù)。
答案:
int fun(int a[][M])
{
int I,j,max;
max=a[0][0];
for(i=0;i<2;i++)
for(j=0;j
if(a[i][j]>max)
max=a[i][j];
return max;
}
c語(yǔ)言練習(xí)試題 篇3
1. 以下程序執(zhí)行后sum 的值是
main()
{ int i , sum;
for(i=1;i<6;i++) sum+=i;
printf("%d ",sum);
}
A)15
B)14
C) 不確定
D)0
你所選擇的答案是:C,正確答案是:C √
2. 當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)數(shù)組名,則向函數(shù)傳送的是
A) 數(shù)組的長(zhǎng)度
B) 數(shù)組的首地址
C) 數(shù)組每一個(gè)元素的地址
D) 數(shù)組每個(gè)元素中的值
你所選擇的答案是:B,正確答案是:B √
3. 以下只有在使用時(shí)才為該類型變量分配√
4. 以下程序的輸出結(jié)果是
main()
{ int i, x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++) printf("%d,",x[i][2-i]);
}
A) 1,5,9
B) 1,4,7
C) 3,5,7
D)3,6,9
你所選擇的答 案是:C,正確答案是:C √
5. 以下程序的輸出結(jié)果是
#define SQR(X) X*X
main()
{ int a=16, k=2, m=1;
a/=SQR(k+m)/SQR(k+m);
printf("d ",a);
}
A) 16
B) 2
C) 9
c語(yǔ)言練習(xí)試題 篇4
1: 第1題請(qǐng)編寫函數(shù)fun,其功能使:將兩個(gè)兩位正整數(shù)a b合并形成一個(gè)整數(shù)放在c中。合并的方式使:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的百位和個(gè)位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上。
答案:
void fun(int a,int b,long *c)
{*c=(b/10)*1000+(a/10)*100+(b%10)*10+a%10;}
2: 第2題請(qǐng)編寫一個(gè)函數(shù)fun,它的功能使:計(jì)算n門課程的平均分,計(jì)算結(jié)果作為函數(shù)值返回。
答案:
float fun(float *a,int n)
{float ave=0.0;
int i;
for(i=0;i
ave+=a;
ave/=n;
return ave;}
3: 第3題假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫函數(shù)fun,它的功能使:將字符串尾部的*號(hào)全部刪除,前面和中間的*號(hào)不刪除。
答案:
void fun(char *a)
{int i=0;
char *p,*q;
p=q=a;
while(*p)
p++;
p--;
while(*p==‘*’)
p--;
while(q<=p)
{a=*q;
i++;
q++;}
a=‘’;}
4: 第4題請(qǐng)編寫函數(shù)fun,其功能是:將兩個(gè)兩位數(shù)的正整數(shù)a b合并形成一個(gè)整數(shù)放在c中,合并的方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c的個(gè)位和百位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上。
答案:
void fun(int a,int b,long *c)
{c=(b/10)*1000+(a%10)*100+(b%10)*10+a/10;}
5: 第5題 n名學(xué)生的成績(jī)已在主函數(shù)中放入一個(gè)帶頭節(jié)點(diǎn)的鏈表結(jié)構(gòu)中,h指向鏈表的頭節(jié)點(diǎn)。請(qǐng)編寫函數(shù)fun,它的功能是:求出平均分,由函數(shù)值返回。
答案:
double fun(strec *h)
{double aver=0.0;
while(h!=null)
{aver+=h->s;
hy=h->next;}
aver/=n;
return aver;}
6: 第6題請(qǐng)編寫函數(shù)fun,計(jì)算并輸出給定10個(gè)數(shù)的方差。
答案:
double fun(double x[10])
{int i,j;
double s=0.0,s1=0.0;
for(i=0;i<10;i++)
s1+=x;
s1/=10;
for(j=0;j<10;j++)
s+=(x[j]-s1)*(x[j]-s1);
s/=10;
s=pow(s,0.5);
return s;}
7: 第7題請(qǐng)編寫函數(shù)fun,其功能是:將兩個(gè)兩位數(shù)的正整數(shù)a b合并形成一個(gè)整數(shù)放在c 中。合并的方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的個(gè)位和百位上。
答案:
void fun(int a,int b,long *c)
{*c=(a/10)*1000+(a%10)*10+(b%10)*100+b/10;}
【c語(yǔ)言練習(xí)試題】相關(guān)文章:
c語(yǔ)言練習(xí)試題庫(kù)06-11
c語(yǔ)言試題及答案03-17
C語(yǔ)言面試筆試題07-28
c語(yǔ)言面試題及答案06-11
C語(yǔ)言程序設(shè)計(jì)的試題及答案03-12
計(jì)算機(jī)二級(jí)c語(yǔ)言試題02-22