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