當前位置:首頁 » 編程語言 » c語言考試題庫下載
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言考試題庫下載

發布時間: 2023-06-16 14:41:22

c語言期末考試試題(譚浩強版)

C語言期末考試試題
2008年04月12日 星期六 00:22

一 選擇題(24分,每小題2分)
1.已知函數fread的調用形式為fread(buffer,size,count,fp),其中buffer代表的是()。

A 存放讀入數據項的存儲
B 存放讀入數據的地址或指向此地址的指針
C 一個指向所讀文件的文件指針
D 一個整形變數,代表要讀入的數據項總數

2.以下程序的輸出結果為( )。
main( )
{
int i=010,j=10;
printf("%d,%d\n",i++,j--);
}

A 11,9
B 9,10
C 8,10
D 9,9

3.設a為int型變數,執行下列賦值語句後,a的取值分別是( )。
a=125.534;
a=20.0/3;
a=(int)125.521%4;
a=5<<2;

A 125,6,31,1
B 125,6,1,20
C 125,6.666666,31,20
D 125.534,6.666666,2,20

4.設i和k都是int類型,則for循環語句( )。
for(i=0,k=-1;k=1;i++,k++)
printf("****\n");

A 循環結束的條件不合法
B 循環體一次也不執行
C 循環體只執行一次
D 是無限循環

5.以下程序的輸出結果為( )。
main( )
{
char c;
int i;

for(i=65;i<68;i++)
{
c=i+32;
switch(c)
{
case 'a':
case 'b':
case 'c':printf("%c,",c);break;
default:printf("end");
}
}
}

A a,b,c,end
B a,a,a,end
C a,a,a,
D a,b,c,

6.函數調用語句:fseek(fp,-10L,2);的含義是( )。
A 將文件位置指針從文件末尾處向文件頭的方向移動10個位元組
B 將文件位置指針從當前位置向文件頭的方向移動10個位元組
C 將文件位置指針從當前位置向文件末尾方向移動10個位元組
D 將文件位置指針移到距離文件頭10個位元組處

7.以下程序的輸出結果為( )。
main( )
{
int i=0,j=0;
while(s1[i]!='\0')
i++;
while(s2[j]!='\0')
s1[i++]=s2[j++];
s1[i]=0;

printf("%s\n",s1);
}

A side
B country
C sidetry
D countryside

8.下列說法不正確的是( )。

A 主函數main中定義的變數在整個文件或程序中有效
B 不同函數中,可以使用相同名字的變數
C 形式參數是局部變數
D 在一個函數內部,可以在復合語句中定義變數,這些變數只在本復合語句中有效

9.在下列程序段中,枚舉變數 c1的值是( )。
enum color { red,yellow,blue=4,green,white}c1;
c1=yellow;
c1=white;

A 1
B 3
C 5
D 6

10.設有說明 int (*ptr)();其中標識符ptr是( )。

A 是一個指向整形變數的指針
B 是一個指針,它指向一個函數值是int的函數
C 是一個函數名
D定義不合法

11.定義由n個指向整形數據的指針組成的數組p,其正確的方式為( )。

A int p;
B int (*p)[n];
C int *p[n];
D int (*p)( );

12.具有相同類型的指針類型變數p與數組a,不能進行的操作是( )。

A p=a;
B *p=a[0];
C p=&a[0];
D p=&a;

二 判斷對錯,對的劃「√」,錯的劃「×」(20分,每小題2分)

1.參加位運算的數據可以是任何類型的數據。 ( )

2.若有定義和語句:
int a;
char c;
float f;
scanf("%d,%c,%f",&a,&c,&f);

若通過鍵盤輸入:10 A 12 5
則a=10,c=『A』,f=12.5。 ( )

3.C語言把文件看作是一個字元(位元組)的序列。 ( )

4.若有宏定義:
#define S(a,b) t=a;a=b;b=t
由於變數t沒定義,所以此宏定義是錯誤的。 ( )

5.在Turbo C中,下面的定義和語句是合法的:
file *fp;
fp=fopen("a.txt","r"); ( )

6.若有定義:
char s[ ]="china";
則Turbo C系統為數組s開辟6個位元組的內存單元。 ( )

7.若有定義和語句:
int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0;
for(i=0;i<3;i++)
sum+=a[i][2-i];
則sum=21。 ( )

8.若有定義和語句:
struct student
{
int num;
char name[10];
float score;
}
s[5]={{1,"lili",98.5},{9,"xiaohua",66}},*p=s;printf("%d",*p++);
輸出結果是1。 ( )

9.在程序中定義了一個結構體類型後,可以多次用它來定義具有該類型的變數。 ( )

10.在Turbo C中,此定義和語句是合法的:
enum aa{ a=5,b,c}bb;
bb=(enum aa)5; ( )

三 寫出下列程序的運行結果(36分,每小題6分)
1.
main( )
{
int i=29,j=6,k=2,s;
s=i+i/j%k-9; //s=i+(i/j)%k-9
printf(「s=%d\n」,s);
}

2.
main( )
{
int x=31,y=2,s=0;
do
{
s-=x*y;
x+=2;y-=3;
}
while(x%3==0); //先執行,後判斷
printf(「x=%d\ty=%d\ts=%d\n」,x,y,s);
}

3.
main( )
{
int a[6]={10,20,30,40,50,60},i;
invert(a,0,5);
for(i=0;i<6;i++)
printf(「%d,」,a[i]);
printf(「\n」);
}

invert(int s[ ],int i,int j) //倒置
{
int t;
if(i<j)
{
invert(s,i+1,j-1); //函數自身的嵌套調用,形成循環
t=s[i];
s[i]=s[j];
s[j]=t;
}
}

4.
#include <stdio.h>

main()
{
char str[ ]="The C program",c;
int i;
for(i=2;(c=str[i])!='\0';i++)
{
switch(c)
{
case 'g': ++i; break; //由於++i,跳過了g後面的1個字母
case 'o': continue;
default: printf(「%c」,c); continue;
}
printf(「*」);
}
printf(「\n」);
}

5.
struct w //結構體
{
char low;
char high;
};

union u //共用體
{
struct w byte;
short word;
}uw;

main( )
{
int result;
uw.word=0x1234;

printf("word value:%04x\n",uw.word);
printf("high byte:%02x\n",uw.byte.high);
printf("low byte:%02x\n",uw.byte.low);

uw.byte.low=0x74;

printf("word value:%04x\n",uw.word);
result=uw.word+0x2a34;
printf("the result:%04x\n",result);
}

6.
main()
{
char *s2="I love China!",**s1=&s2;
char *s3,c,*s4="w";
s3=&c;
*s3='H';
s2=s2+2;
printf("%s\t%c\t%s\t%c\n",s2,*s3,s4,**s1);
}

四 閱讀下列程序,在 處填入適當內容,使程序完整(20分,每個空2分)

1.百馬百擔問題:有100匹馬,馱100擔貨,大馬馱3擔,中馬馱2擔,兩匹小馬馱1擔,問大、中、小馬各多少匹?
main( )
{
int hb,hm,hl,n=0;
for(hb=0;hb<=100;hb+=(1))
for(hm=0;hm<=100-hb;hm+=(2))
{
hl=100-hb- (3) ;
if(hb/3+hm/2+2*(3)==100)
{
n++;
printf("hb=%d,hm=%d,hl=%d\n",hb/3,hm/2,2*hl);
}
}
printf("n=%d\n",n);
}

2.用「起泡法」對輸入的10個字元排序後按從小到大的次序輸出。
#define N 10

char str[N];

void main()
{
int i,flag;

for(flag=1;flag==1;)
{
scanf("%s",str);
flag=0;
printf("\n");
}

sort(___(4)___);

for(i=0;i<N;i++)
{
printf("%c",str[i]);
}
printf("\n");
}

sort(char str[N]) //冒泡排序
{
int i,j;
char t;

for(j=1;j<N;j++)
for(i=0;i<10-j;i++)
if(str[i]>str[i+1])
{
t=str[i];
____(5)____;
____(6)____; //交換位置
}
}

3.以下程序是一個函數,功能是求二階矩陣(m行n列矩陣)的所有靠外側的各元素值之和。(本程序中二階矩陣用一維數組來表示。)

例如,矩陣為:
3 0 0 3
2 5 7 3
1 0 4 2
則所有靠外側的各元素值之和為3+0+0+3+2+3+1+0+4+2=18。

add(int m,int n,int arr[])
{
for(i=0;i<m;i=i+m-1)
for(j=0;j<n;j++)
sum=sum+____(7)____;
for(j=0;j<n;j=j+n-1)
for(i=1;____(8)____;i++)
sum=sum+arr[i*n+j];
return(sum);
}

4.用指針作函數參數,編程序求一維數組中的最大和最小的元素值。
#define N 10
main()
{
void maxmin(int arr[],int *pt1,int *pt2,int n);
int array[N]={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,b;
p1=&a;
p2=&b;
maxmin(array,p1,p2,N);
printf("max=%d,min=%d",a,b);
}

void maxmin(int arr[],int *pt1,int *pt2,int n)
{
int i;
*pt1=*pt2=arr[0];
for(i=1;i<n;i++)
{
if(arr[i]>*pt1)
____(9)____ ;

if(arr[i]<*pt2)
____(10)____ ;
}
}

答案
一 選擇題(24分,每小題2分)
1.( B ) 2.( C ) 3.( B )
4.( D ) 5.( D ) 6.( A )
7.( D ) 8.( A ) 9.( D )
10.( B ) 11.( C ) 12.( D )
二 判斷對錯,對的劃「√」,錯的劃「×」(20分,每小題2分)
1.( × ) 2.( √ )
3.( √ ) 4.( × )
5.( × ) 6.( √ )
7.( √ ) 8.( × )
9.( √ ) 10.( √ )
三 寫出下列程序的運行結果(36分,每小題6分)
1.s=20
2.x=35 y=-4 s=-29
3.60,50,40,30,20,10,
4.e C pr*am
5.word value:1234
6.love China! H w l
high byte:12
low byte:34
word value:1274
the result:3ca8
四 閱讀下列程序,在 處填入適當內容,使程序完整(20分,每個空2分)
1.(1) 3 (2) 2 (3)hm hl
2.(4) str (5) str[i]=str[i+1] (6) str[i+1]=t
3.(7) arr[i*n+j] (8) i<m-1
4.(9) *ptr1=arr[i] (10) *ptr2=arr[i]

❷ 計算機二級c語言題庫及答案

❸ 計算機二級考試(江西考區)試題c語言及答案

2010年3月全國計算機等級考試二級C語言筆試真題及參考答案一、選擇題
(1)下列敘述中正確的是
A)對長度為n的有序鏈表進行查找,最壞清況下需要的比較次數為n
B)對長度為n的有序鏈表進行對分查找,最壞情況下需要的比較次數為(n/2)
C)對長度為n的有序鏈表進行對分查找,最壞情況下需要的比較次數為(log2n)
D)對長度為n的有序鏈表進行對分查找,最壞情況下需要的比較次數為(nlog2n)(2)演算法的時間復雜度是指
A)演算法的執行時間
B)演算法所處理的數據量
C)演算法程序中的語句或指令條數
D)演算法在執行過程中所需要的基本運算次數(3)軟體按功能可以分為:應用軟體、系統軟體和支撐軟體(或工具軟體)。下面屬於系統軟體的是
A)編輯軟體
B)操作系統
C)教務管理系統
D)瀏覽器(4)軟體(程序)調試的任務是
A)診斷和改正程序中的錯誤
B)盡可能多地發現程序中的錯誤
C)發現並改正程序中的所有錯誤
D)確定程序中錯誤的性質(5)數據流程圖(DFD圖)是
A)軟體概要設計的工具
B)軟體詳細設計的工具
C)結構化方法的需求分析工具
D)面向對象方法的需求分析工具(6)軟體生命周期可分為定義階段,開發階段和維護階段。詳細設計屬於
A)定義階段
B)開發階段
C)維護階段
D)上述三個階段(7)資料庫管理系統中負責數據模式定義的語言是
A)數據定義語言
B)數據管理語言
C)數據操縱語言
D)數據控制語言(8)在學生管理的關系資料庫中,存取一個學生信息的數據單位是
A)文件
B)資料庫
C)欄位
D)記錄(9)資料庫設計中,用E-R圖來描述信息結構但不涉及信息在計算機中的表示,它屬於資料庫設計的
A)需求分析階段
B)邏輯設計階段
C)概念設計階段
D)物理設計階段(10)有兩個關系R和T如下:
則由關系K得到關系T的操作是
A)選擇
B)投影
C)交
D)並(11)以下敘述正確的是
A)C語言程序是由過程和函數組成的
B)C語言函數可以嵌套調用,例如:fun(fun(x))
C)C語言函數不可以單獨編譯
D)C語言中除了main函數,其他函數不可作為單獨文件形式存在(12)以下關於C語言的敘述中正確的是
A)C語言中的注釋不可以夾在變數名或關鍵字的中間
B)C語言中的變數可以在使用之前的任何位置進行定義
C)在C語言算術表達式的書寫中,運算符兩側的運算數類型必須一致
D)C語言的數值常量中夾帶空格不影響常量值的正確表示(13)以下C語言用戶標識符中,不合法的是
A)_1
B)AaBc
C)a_b
D)a-b(14)若有定義:double a=22;int i=0,k=18;,則不符合C語言規定的賦值語句是
A)a=a++,i++;
B)i=(a+k)<=(i+k);
C)i=a%11;
D)i=!a;(15)有以下程序
#include<stdio.h>
main()
{ char a,b,c,d;
scanf(「%c%c」,&a,&b);
c=getchar(); d=getchar();
printf(「%c%c%c%c\n」,a,b,c,d);
}
當執行程序時,按下列方式輸入數據(從第1列開始,<CR>代表回車,注意:回車也是一個字元)
12<CR>
34<CR>
則輸出結果是
A)1234
B)12
C)12
3
D)12
34(16)以i關於C語言數據類型使用的敘述中錯誤的是
A)若要准確無誤差的表示自然數,應使用整數類型
B)若要保存帶有多位小數的數據,應使用雙精度類型
C)若要處理如「人員信息」等含有不同類型的相關數據,應自定義結構體類型
D)若只處理「真」和「假」兩種邏輯值,應使用邏輯類型(17)若a是數值類型,則邏輯表達式(a==1)||(a!=1)的值是
A)1
B)0
C)2
D)不知道a的值,不能確定(18)以下選項中與if(a==1)a=b; else a++;語句功能不同的switch語句是
A)switch(a)
{case:a=b;break;<br>default:a++;<br>}<br>B)switch(a==1)<br>{case 0:a=b;break;<br>case 1:a++;<br>}
C)switch(a)
{default:a++;break;<br>case 1:a=b;<br>}
D)switch(a==1)
{case 1:a=b;break;<br>case 0:a++;<br>}(19)有如下嵌套的if語句
if (a<b)
if(a<c)k=a;
else k=c;
else
if(b<c) k=b;
else k=c;
以下選項中與上述if語句等價的語句是
A)k=(a<b)?a:b;k=(b<c)?b:c;
B)k=(a<b)?((b<c)?a:b):((b>c)?b:c);
C)k=(a<b)?((a<c)?a:):((b<c)?b:c);
D)k=(a<b)?a:b;k=(a<c)?a:c;(20)有以下程序
#include<s七dio.h>
main()
{in i,j,m=1;
for(i=1;i<3;i++)
{for(j=3;j>O;j--)
{if(i*j)>3)break;<br>m=i*j;<br>}
}
printf("m=%d\n",m);

程序運行後的輸出結果是
A)m=6
B)m=2
C)m=4
D)m=5(21)有以下程序
#include(stdio.h>
main()
{int a=l;b=2;
for(;a<8;a++) {b+=a;a+=2;}
printf("%d,%d\n",a,b);
}
程序運行後的輸出結果是
A)9,18
B)8,11
C)7,11
D)10,14(22)有以下程序,其中k的初值為八進制數
#include <stdio.h>
main()
{int k=011;
printf("%d\n",k++);

程序運行後的輸出結果是
A)12
B)11
C)10
D)9(23)下列語句組中,正確的是
A)char *s;s="Olympic";
B)char s[7];s="Olympic";
C)char *s;s={"Olympic"};
D)char s[7];s={"Olympic"};(24)以下關於return語句的敘述中正確的是
A)一個自定義函數中必須有一條return語句
B)一個自定義函數中可以根據不同情況設置多條return語句
C)定義成void類型的函數中可以有帶返回值的return語句
D)沒有return語句的自定義函數在執行結束時不能返回到調用處(25)下列選項中,能正確定義數組的語句是
A)int num[0..2008];
B)int num[];
C)int N=2008;
int num[N];
D)#define N 2008
int num[N];(26)有以下程序
#include <stdio.h>
void fun(char *c,int d)
{*c=*c+1;d=d+1;
printf("%c,%c,",*c,d);
main()
{char b='a',a='A';
fun(&b,a);printf("%e,%e\n",b,a);

程序運行後的輸出結果是
A)b,B,b,A
B)b,B,B,A
C)a,B,B,a
D)a,B,a,B(27)若有定義int(*Pt)[3];,則下列說法正確的是
A)定義了基類型為int的三個指針變數
B)定義了基類型為int的具有三個元素的指針數組pt
C)定義了一個名為*pt、具有三個元素的整型數組
D)定義了一個名為pt的指針變數,它可以指向每行有三個整數元素的二維數組(28)設有定義double a[10],*s=a;,以下能夠代表數組元素a[3]的是
A)(*s)[3]
B)*(s+3)
C)*s[3]
D)*s+3(29)有以下程序
#include(stdio.h)
main()
{int a[5]={1,2,3,4,5},b[5]={O,2,1,3,0},i,s=0;
for(i=0;i<5;i++) s=s+a[b[i]]);
printf("%d\n", s);
}
程序運行後的輸出結果是
A)6
B)10
C)11
D)15(30)有以下程序
#include <stdio.h>
main()
{int b [3][3]={O,1,2,0,1,2,O,1,2},i,j,t=1;
for(i=0;i<3;i++)
for(j=ij<=1;j++) t+=b[i][b[j][i]];
printf("%d\n",t);

程序運行後的輸出結果是
A)1
B)3
C)4
D)9(31)若有以下定義和語句.......這是全國2010全國c語言考試的部分題目,樓主需要的話可以自己去下載轉自:酷8學習網 www.k8xx.com

❹ 急求計算機二級考試的試題(C語言)

05年4月全國計算機二級C語言考試試題及答案
(1)數據的存儲結構是指 D
(A)存儲在外存中的數據 (B)數據所佔的存儲空間量
(C)數據在計算機中的順序存儲方式 (D)數據的邏輯結構在計算機中的表示
(2)下列關於棧的描述中錯誤的是 B
(A)棧是先進後出的先性表
(B)棧只能順序存儲
(C)棧具有記憶作用
(D)對棧的插入和刪除操作中,不需要改變棧底指針
(3)對於長度為N的線性表,在最壞的情況下,下列各排序法所對應的比較次數中正確的是D
(A)冒泡排序為N/2 (B)冒泡排序為N
(C)快速排序為N (D)快速排序為N(N-1)/2
(4)對長度為N的線性表進行順序查找,在最壞的情況下所需要的比較次數為 C
(A)log2n (B)n/2 (C)n (D)n+1
(5)下列對於線性表的描述中正確的是 A
A)存儲空間不一定是連續,且各元素的存儲順序是任意的
B)存儲空間不一定是連續,且前件元素一定存儲在後件元素的前面
C)存儲空間必須連續,且各前件元素一定存儲在後件元素的前面
D)存儲空間必須連續,且各元素的存儲順序是任意的
(6)下列對於軟體測試的描述中正確的是 C
A)軟體測試的目的是證明程序是否正確
B)軟體測試的目的是使程序運行結果正確
C)軟體測試的目的是盡可能地多發現程序中的錯誤
D)軟體測試的目的是使程序符合結構化原則

(7)為了使模塊盡可能獨立,要求 B
(A)模塊的內聚程度要盡量高,且各模塊間的耦合程度要盡量強
(B)模塊的內聚程度要盡量高,且各模塊間的耦合程度要盡量弱
(C)模塊的內聚程度要盡量低,且各模塊間的耦合程度要盡量弱
(D)模塊的內聚程度要盡量低,且各模塊間的耦合程度要盡量強
(8)下列描述中正確的是 D
(A)程序就是軟體 (B)軟體開發不受計算機系統的限制
(C)軟體既是邏輯實體,又是物理實體 (D)軟體是程序、數據與相關文檔的集合
(9)數據獨立性是資料庫技術的重要特點之一.所謂數據獨立性是指 D
(A)數據與程序獨立存放
(B)不同的數據被存放在不同的文件中
(C)不同的數據只能被對應的應用程序所使用
(D)以上三種說法都不對
(10)用樹形結構表示實體之間聯系的模型是 C
(A)關系模型 (B)網狀模型 (C)層次模型 (D)以上三個都是
(11)演算法具有五個特性,以下選項中不屬於演算法特性的是 B
(A)有窮性 (B)簡潔性 (C)可行性 (D)確定性
(12)以下選項中可作為C語言合法常量的是 A
(A)-80. (B)-080 (C)-8e1.0 (D)-80.0e
(13)以下敘述中正確的是 C
(A)用C語言實現的演算法必須要有輸入和輸出操作
(B)用C語言實現的演算法可以沒有輸出但必須要有輸入
(C)用C程序實現的演算法可以沒有輸入但必須要有輸出
(D)用C程序實現的演算法可以既沒有輸入也沒有輸出
(14)以下不能定義為用戶標識符是 D
(A)Main (B)_0 (C)_int (D)sizeof
(15)以下選項中,不能作為合法常量的是 B
(A)1.234e04 (B)1.234e0.4 (C)1.234e+4 (D)1.234e0
(16)數字字元0的ASCII值為48,若有以下程序 C
main()
{
char a=』1』,b=』2』;
printf("%c,",b++);
printf("%d\n",b-a);
}
程序運行後的輸出結果是
(A)3,2 (B)50,2 (C)2,2 (D)2,50
(17)有以下程序 A
main()
{
int m=12,n=34;
printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);
}
程序運行後的輸出結果是
(A)12353514 (B)12353513 (C)12343514 (D)12343513
(18)有以下語句:int b;char c[10];,則正確的輸入語句是 B
A)scanf("%d%s",&b,&c); B) scanf("%d%s",&b,c);
c)scanf("%d%s",b,c); D)scanf("%d%s",b,&c);
(19)有以下程序 A
main()
{
int m,n,p;
scanf("m=%dn=%dp=%d",&m,&n,&p);
printf("%d%d%d\n",m,n,p);
}
若想從鍵盤上輸入數據,使變數M中的值為123,N中的值為456,P中的值為789,則正確的輸入是
A)M=123N=456P=789 B)M=123 N=456 P=789 C)M=123,N=456,P=789 D)123 456 789

(20)有以下程序 B
main()
{
int a,b,d=25;
a=d/10%9;b=a&&(-1);
printf("%d,%d\n",a,b);
}
程序運行後的輸出結果是
A)6,1 B)2,1 C)6,0 D)2,0
(21)有以下程序 D
main()
{
int i=1,j=2,k=3;
if(i++==1&&(++j==3||k++==3))
printf("%d %d %d\n",i,j,k);
}
程序運行後的輸出結果是
(A)1 2 3 (B)2 3 4 (C)2 2 3 (D)2 3 3
(22)若整型變數a、b、c、d中的值依次為:1、4、3、2。
則條件表達式aA) 1 B)2 C)3 D)
(23)有以下程序 B
main()
{
int p[8]={11,12,13,14,15,16,17,18},i=0,j=0;
while(i++<7) if(p[i]%2) j+=p[i];
printf("%d\n",j);
}
程序運行後的輸出結果是
A)42 B)45 C)56 D)60
(24)有以下程序 C
main()
{
char a[7]="a0\0a0\0"; int i,j;
i=sizeof(a); j=strlen(a);
printf("%d %d\n",i,j);
}
程序運行後的輸出結果是
A)2 2 B)7 6 C)7 2 D)6 2
(25)以下能正確定義一維數組的選項是 B
A)int a[5]={0,1,2,3,4,5}; B)char a[]={0,1,2,3,4,5};
C)char a={』A』,』B』,』C』}; D)int a[5]="0123";
(26)有以下程序 A
int f1(int x,int y){return x>y?x:y;}
int f2(int x,int y){return x>y?y:x;}
main()
{
int a=4,b=3,c=5,d=2,e,f,g;
e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d));
g=a+b+c+d-e-f;
printf("%d,%d,%d\n",e,f,g);
}
程序運行後的輸出結果是
A)4,3,7 B)3,4,7 C)5,2,7 D)2,5,7
27)已有定義:char a[]="xyz",b[]={』x』,』y』,』z』};,以下敘述中正確的是 C
A)數組a和b的長度相同 B)a數組長度小於b數組長度
C)a數組長度大於b數組長度 D)上述說法都不對
28)有以下程序 D
void f(int *x,int *y)
{
int t;
t=*x;*x=*y;*y=t;
}
main()
{
int a[8]={1,2,3,4,5,6,7,8},i,*p,*q;
p=a;q=&a[7];
while(p{f(p,q);p++;q--;}
for(i=0;i<8;i++)printf("%d,",a[i]);
}
程序運行後的輸出結果是
A)8,2,3,4,5,6,7,1, B)5,6,7,8,1,2,3,4,
C)1,2,3,4,5,6,7,8, D)8,7,6,5,4,3,2,1,
29)有以下程序 D
main()
{
int a[3][3],*p,i;
p=&a[0][0];
for(i=0;i<9;i++)p[i]=i;
for(i=0;i<3;i++)printf("%d",a[1][i]);
}
程序運行後的輸出結果是
A)0 1 2 B)1 2 3 C)2 3 4 D)3 4 5
(30)以下敘述中錯誤的是 A
A)對於double類型數組,不可以直接用數組名對數組進行整體輸入或輸出
B)數組名代表的是數組所佔存儲區的首地址,其值不可改變
C)當程序執行中,數組元素的下標超出所定義的下標范圍時,系統將給出"下標越界"的出錯信息
D)可以通過賦初值的方式確定數組元素的個數
(31)有以下程序 C
#define N 20
fun(int a[],int n,int m)
{int i,j;
for(i=m;i>=n;i--)a[i+1]=a[i];
}
main()
{
int i,a[N]={1,2,3,4,5,6,7,8,9,10};
fun(a,2,9);
for(i=0;i<5;i++)printf("%d",a[i]);
}
程序運行後的輸出結果是
A)10234 B)12344 C)12334 D)12234

32)有以下程序 B
main()
{
int a[3][2]={0},(*ptr)[2],i,j;
for(i=0;i<2;i++)
{ptr=a+i;scanf("%d",ptr);ptr++;}
for(i=0;i<3;i++)
{for(j=0;j<2;j++)printf("-",a[i][j]);
printf("\n");
}
}
若運行時輸入:1 2 3<回車>,則輸出結果是
A)產生錯誤信息 B)1 0 C)1 2 D)1 0
2 0 3 0 2 0
0 0 0 0 3 0
33)有以下程序 B
prt(int *m,int n)
{int i;
for(i=0;i)
main()
{
int a[]={1,2,3,4,5},i;
prt(a,5);
for(i=0;i<5;i++)
printf("%d,",a[i]);
}
程序運行後的輸出結果是
A}1,2,3,4,5, B}2,3,4,5,6, C}3,4,5,6,7, D}2,3,4,5,1,
34)有以下程序 A
main()
{int a[]={1,2,3,4,5,6,7,8,9,0},*p;
for(p=a;p}
程序運行後的輸出結果是
A)1,2,3,4,5,6,7,8,9,0, B)2,3,4,5,6,7,8,9,10,1,
C)0,1,2,3,4,5,6,7,8,9, D)1,1,1,1,1,1,1,1,1,1,
35)有以下程序 D
#define P 3
void F(int x){return(P*x*x);}
main()
{printf("%d\n",F(3+5));}
程序運行後的輸出結果是
A)192 B)29 C)25 D)編譯出錯

36)有以下程序 C
main()
{int c=35;printf("%d\n",c&c);}
程序運行後的輸出結果是
A)0 B)70 C)35 D)1

37)以下敘述中正確的是 D
A)預處理命令行必須位於源文件的開頭
B)在源文件的一行上可以有多條預處理命令
C)宏名必須用大寫字母表示
D)宏替換不佔用程序的運行時間
38)若有以下說明和定義 C
union dt
{int a;char b;double c;}data;
以下敘述中錯誤的是
A)data的每個成員起始地址都相同
B)變數data所佔的內存位元組數與成員c所佔位元組數相等
C)程序段:data.a=5;printf("%f\n",data.c);輸出結果為5.000000
D)data可以作為函數的實參
39)以下語句或語句組中,能正確進行字元串賦值的是 C
A)char *sp;*sp="right!"; B)char s[10];s="right!";
C)char s[10];*s="right!"; D)char *sp="right!";
40)設有如下說明 C
typedef struct ST
{long a;int b;char c[2];}NEW;
則下面敘述中正確的是
A)以上的說明形式非法 B)ST是一個結構體類型
C)NEW是一個結構體類型 D)NEW是一個結構體變數

41)有以下程序 B
main()
{int a=1,b;
for(b=1;b<=10;b++)
{if(a>=8)break;
if(a%2==1){a+=5;continue;}
a-=3;
}
printf("%d\n",b);
}
程序運行後的輸出結果是
A) 3 B) 4 C)5 D) 6
42)有以下程序 A
main()
{char s[]="159",*p;
p=s;
printf("%c",*p++);printf("%c",*p++);
}
程序運行後的輸出結果是
A)15 B)16 C)12 D)59
43)有以下函數 D
fun(char *a,char *b)
{while((*a!=』\0』)&&(*b!=』\0』)&&(*a==*b))
{a++;b++;}
return(*a-*b);
}
該函數的功能是
A)計算a和b所指字元串的長度之差
B)將b所指字元串連接到a所指字元串中
C)將b所指字元串連接到a所指字元串後面
D)比較a和b所指字元串的大小
44)有以下程序 B
main()
{int num[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j;
for(i=0;i<4;i++)
{for(j=0;j<=i;j++)printf("L",』 』);
for(j=_____;j<4;j++)printf("M",num[i][j]);
printf("\n");
}
}
若要按以下形式輸出數組右上半三角
1 2 3 4
6 7 8
11 12
16
則在程序下劃線處應填入的是
A)i-1 B)i C)i+1 D)4-i

45)有以下程序 D
point(char *p){p+=3;}
main()
{char b[4]={』a』,』b』,』c』,』d』},*p=b;
point(p);printf("%c\n",*p);
}
程序運行後的輸出結果是
A)a B)b C)c D)d
46)程序中若有如下說明和定義語句 A
char fun(char *);
main()
{
char *s="one",a[5]={0},(*f1)()=fun,ch;
......
}
以下選項中對函數fun的正確調用語句是
A)(*f1)(a); B)*f1(*s); C)fun(&a); D)ch=*f1(s);
47)有以下結構體說明和變數定義,如圖所示,
指針p、q、r分別指向此鏈表中的三個連續結點。
struct node
{int data;struct node *next;}*p,*q,*r;
現要將Q所指結點從鏈表中刪除,同時要保持鏈表的連續,
以下不能完成指定操作的語句是 D
A)P->next=q->next; B)p->next=p->next->next;
c)p->next=r; D)p=q->next;
48)以下對結構體類型變數td的定義中,錯誤的是 C
A)typedef struct aa B)struct aa C)struct D)struct
{int n; {int n; {int n; {int n;
float m; float m; float m; float m;
}AA; }td; }aa; }td;
AA td; struct aa td; struct aa td;

49)以下與函數fseek(fp,0L,SEEK_SET)有相同作用的是 D
A)feof(fp) B)ftell(fp) C)fgetc(fp) D)rewind(fp)
50)有以下程序 B
#include
void WriteStr(char *fn,char *str)
{FILE *fp;
fp=fopen(fn,"w");fputs(str,fp);fclose(fp);
}
main()
{
WriteStr("t1.dat","start");
WriteStr("t1.dat","end");
}
程序運行後,文件t1.dat中的內容是
A)start B)end C)startend D)endrt
1.某二叉樹中度為2的結點有18個,則該二叉樹中有______個葉子結點。
答案:19
2.在面向對象方法中,類的實例稱為____.
答案:對象
3.診斷和改正程序中錯誤的工作通常稱為______.
答案:調試
4.在關系資料庫中,把數據表示成二維表,每一個二維表稱為_____
答案:關系
5.問題處理方案的正確而完整的描述稱為___
答案:演算法
6.以下程序運行時若從鍵盤輸入:10 20 30<回車>.輸出結果是______
#include
main()
{
int i=0,j=0,k=0;
scanf("%d%*d%d",&i,&j,&k);printf("%d%d%d\n",i,j,k);
}
答案:10 30 0
7.以下程序運行後的輸出結果是____
#define S(x) 4*x*x+1
main()
{
int i=6,j=8;
printf("%d\n",S(i+j));
}
答案:81
*8.以下程序運行後的輸出結果是_____
main()
{int a=3,b=4,c=5,t=99;
if(b if(a printf("%d%d%d\n",a,b,c);
}
答案:4399
9.以下程序運行後的輸出結果是____
main()
{
int a,b,c;
a=10;b=20;c=(a%b<1)||(a/b>1);
printf("%d %d %d\n",a,b,c);
}
答案:10 20 0
10.以下程序運行後的輸出結果是___
main()
{char c1,c2;
for(c1=』0』,c2=』9』;c1printf("\n");
)
答案:0918273645
11.已知字元A的ASCII代碼值為65,以下程序運行時若從鍵盤輸入:B33<回車>.則
輸出結果是_____
#include
main()
{char a,b;
a=getchar();scanf("%d",&b);
a=a-』A』+』0』;b=b*2;
printf("%c %c\n",a,b);
}
答案:1 B
12.以下程序中,fun函數的功能是求3行4列二維數組每行元素中的最大值.請填空
void fun(int,int,int(*)[4],int *);
main()
{int a[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;
fun(3,4,a,b);
for(i=0;i<3;i++)printf("M",b[i]);
printf("\n");
}
void fun(int m,int n,int ar[][4],int *bar)
{
int i,j,x;
for(i=0;i {x=ar[i][0];
for(j=0;j ________=x;
)
}
)
答案:bar[i]
13.以下程序運行後的輸出結果是______
void swap(int x,int y)
{ int t;
t=x;x=y;y=t;printf("%d %d ",x,y);
}
main()
{ int a=3,b=4;
swap(a,b);printf("%d %d\n",a,b);
}
答案:4 3 3 4
14.以下程序運行後的輸出結果是____
#include
void fun(char *s,int p,int k)
{int i;
for(i=p;i)
main()
{char s[]="abcdefg";
fun(s,3,strlen(s));puts(s);
}
答案:abcfg

17.以下程序運行後的輸出結果是______
struct NODE
{int k;
struct NODE *link;
};
main()
{ struct NODE m[5],*p=m,*q=m+4;
int i=0;
while(p!=q)
{p->k=++i;p++;
q->k=i++;q--;
}
q->k=i;
for(i=0;i<5;i++)printf("%d",m[i].k);
printf("\n");
}
答案:13431
18.以下程序中函數huiwen的功能是檢查一個字元串是否是迴文,當字元串是迴文時,
函數返回字元串:yes!,否則函數返回字元串:no!,並在主函數中輸出.所謂迴文即
正向與反向的拼寫都一樣,例如:adgda.請填空.
#include
char *huiwen(char *str)
{char *p1,*p2;int i,t=0;
p1=str;p2=______;
for(i=0;i<=strlen(str)/2;i++)
if(*p1++!=*p2--){t=1;break;}
if(____)return("yes!");
else return("no!");
}
main()
{char str[50];
printf("Input:");scanf("%s",str);
printf("%s\n",______);
}
答案:18) str+(strlen(str)-1)
19) !t
20) huiwen(str)

❺ 國家計算機二級c語言考試用的什麼軟體在哪能下載免費的啊求鏈接

國家計算機二級c語言考試用的軟體

首先我們先看下軟體展示圖,最後是軟體!

圖:

3、未來教育2017二級msoffice模擬軟體

以其模式的高專業度,題庫權威度而聞名業界,它聚合歷年真題加以分析從而提出權威預測,效果非常不錯。

2、捷成全國計算機等級考試練習系統。

上機考試系統提供了歷屆考試題100套,並附有試題分析和參考答案,可以幫助考生熟悉考試模式,提高應試能力,測試實際操作和應變能力,自己評定成績,對正式考試時能否通過進行初步的估計。

1、全國計算機等級考試超級模擬軟體。

匯聚了多年開發全國計算機等級考試模擬軟體的豐富經驗,並綜合有經驗的命題專家、教授和全國各地考點一線教師的建議基礎上研製而成。本套軟體採用模擬考試形式,以大量的習題練習,強化考生的應考能力。

❻ 求C語言試題

《C語言》綜合練習題一
注意:以下 「□」為空格,<CR>為回車
一、 單選題
1、閱讀以下程序,當輸入數據的形式為:25,13,10 <CR>,正確的輸出結果為( )
void main( )
{ int x,y,z;
scanf("%d%d%d",&x,&y,&z);
printf("x+y+z=%d\n",x+y+z);}
A) x+y+z=48 B) x+y+z=35 C) x+y+z=38 D) 不確定值
2、下面程序的輸出是( )
void main()
{ int y=0;
while(y--);
printf("y=%d\n",y); }
A) y=0 B) while 構成無限循環 C) y=-1 D) y=1
3、在以下各組標識符中,合法的用戶標識符是( )。
A) xy_ B) longdouble C) *p D) CHAR
變數1 signed history Float
4、以下能正確計算1*2*3…*10的程序段是( )
A) do { i=1;s=1;s=s*i;i++;}while (i<=10);
B) do {i=1;s=0;s=s*i;i++;} while(i<=10);
C) i=1;s=1; do{ s=s*i;i++;}while (i<=10);
D) i=1;s=0; do{ s=s*i;i++;}while (i<=10);
5、在下列各m的值中,能使表達式m%3==2 &&m%5==3 && m%7==2為真的是( )
A) 8 B) 23 C)17 D) 6
6、運行以下程序後,如果從鍵盤上輸入 china#<回車>,則輸出結果為( )
A) 2,3 B) 3,5
C) 5,2 D) 2,5
#include <stdio.h>
void main()
{ int v1=0,v2=0; char ch;
while((ch=getchar())!='#')
switch(ch)
{ case 'a':
case 'h': v1++;
default: v2++;
}
printf("%d,%d\n",v1, v2);
}
7、有如下程序
void main( )
{ int i,sum=0;
for(i=1;i<=3;sum++) sum+=i;
printf("%d\n",sum);
}
該程序的執行結果是( )
A) 6 B) 3 C) 死循環 D) 0
8、能正確表示a和b 同時為正或同時為負的邏輯表達式是( )
A) (a>=0‖b>=0)&&(a<0‖b<0)
B) (a>=0&&b>=0)&&(a<0&&b<0)
C) (a+b>0)&&(a+b<=0)
D) a*b>0
9、下列定義數組正確的是( )
A) #define size 10 B) int n=5;
char str1[size],str2[size+2]; int a[n][n+2];
C) char str[]; D) int num['10'];
10、以下程序的功能是計算:s= 1+1/2+1/3+… …+1/10
void main()
{ int n; float s
s=1.0;
for(n=10;n>1;n--)
s=s+1/n;
printf("%6.4f\n",s);
}
程序運行後輸出結果錯誤,導致錯誤結果的程序行是
A)s=1.0; B)for(n=10;n>1;n--)
C)s=s+1/n; D)printf("%6.4f\n",s);
11、以下說法正確的是( )
A) 輸入項可以為一個實型常量,如scanf("%f",3.5);
B) 只有格式控制,沒有輸入項,也能進行正確的輸入,如scanf("a=%d,b=%d");
C) 當輸入一個實型數據時,格式控制部分應規定小數點後的位數,如scanf("%4.2f",&f);
D) 當輸入數據時,必須指明變數的地址,如scanf("%f",&f);
12、設x=2.5、a=7,則算術表達式x+2*++a/3%3的值為( )。
A) 2.5 B)3.5
C) 4.5 D)5.5
13、若有說明:int a[3][4]={0}; 則下面正確的敘述是( )
A) 只有元素a[0][0]可得到初值0
B) 此說明語句不正確
C) 數組a中個元素都可以得到初始值,但其值不一定為0
D) 數組a中個元素都可得到初值0
14、設a=3,b=4,c=5, 則表達式 !(a+b)+c-1&&b+c/2的值為( )。
A)6.5 B) 6
C) 0 D)1
15、在下列有關#include命令的敘述中,錯誤的一條是( )
A)在#include命令中,文件名可以用雙引號或尖括弧括起來
B)在一個包含文件中又可以包含另一個被包含文件
C)在一個#include命令中可以指定一個包含文件
D)在一個#include命令中可以指定多個包含文件
16、以下不正確的if語句形式是( )
A) if(x>y && x!=y);
B) if( x= = y) x+=y;
C) if (x!=y) scanf("%d",&x) else scanf("%d",&y);
D) if(x<y) {x++;y++;}
17、有如下程序
void main()
{ int x=1,a=0,b=0;
switch(x){
case 0: b++;
case 1: a++
case 2: a++;b++
}
printf("a=%d,b=%d\n ",a,b);
}
該程序的輸出結果是
A) a=2,b=1 B) a=1,b=1
C) a=1,b=0 D) a=2,b=2
18、閱讀以下程序:
void main()
{ int x;
scanf("%d",&x);
if(x--<5) printf("%d",x);
else printf("%d",x++);
}
程序運行後,如果從鍵 盤上輸人5,則輸出結果是
A)3 B) 4 C) 5 D) 6
19、請閱讀以下程序:
void main( )
{ int a=5,b=0,c=0;
if(a=b+c) printf("***\n");
else printf("$$$\n");
}
以上程序( )
A) 有語法錯誤不能通過編譯 B) 可以通過編譯但不能通過連接`
C) 輸出 *** D) 輸出$$$
20、執行以下程序段時 ( )
x=-1; do {x=x*x; } while(! x);
A) 循環體將執行一次 B) 循環體將執行兩次
C) 循環體將執行無限次 D) 系統將提示有語法錯誤
21、若x是int型變數,且有下面的程序片段:
for(x=3; x<6; x++) printf((x%2)?("**%d"):("##%d\n"),x);
上面程序片段的輸出結果是
A) **3 B) ##3 C) ##3 D) **3##4
##4 **4 *4##5 **5
**5 ##5
22、以下敘述中不正確的是( )。
A. 一個好的程序應該有詳盡的注釋
B.C程序中的#include和#define均不是C語句
C. 在C程序中,賦值運算符的優先順序最低
D. 在C程序中,j++;是一條賦值語句二、 填空題
1、其後標有/* */的語句的執行次數是【 】
int y,i;
for(i=0;i<20;i++)
{
if(i%2==0) continue;
y+=i; /* */
}
2、下面程序的功能是從鍵盤輸入的10個數中,找出第一個能被7整除的數。若找到,列印此數後退出循環;若未找到,列印"not exist"。 請填空。
main( )
{ int n,a;
for(n=1; n<=10; n++)
{ scanf("%d",&a);
if(a%7==0) { printf("%d",a); 【 】;}
}
if (n==【 】) printf("not exist\n");
}
3、設i、j、k均為int型變數,則執行下面語句後k的值為【 】:
for(i=0, j=10, k=0; i<j; i++, j--)
k+=i+j;
4、. 以下程序是計算某年某月有幾天。判斷閏年的條件是:能被4整除但不被100整除或能被400整除的年份為閏年。
void main( )
{ int yy,mm,len;
printf(「輸入年份和月份:」);scanf(「%d%d」,&yy,&&mm);
switch(mm)
{ case 1: case 3: case 5: case 7: case 8: case 10: case 12: len=31 ; break;
case 4: case 6: case 9: case 11: len=30; break;
case 2:
if(【 】) len=29;
else len=28 ;
break;
default: printf(「輸入得月份無效!\n」);
}
printf(「%d年%d月有%d天\n」, 【 】);
}
5、下面程序讀入20個整數,然後統計非負數的平均值。
main ( )
{ int i, a[20], s, count;
s=count=0;
for ( i=0; i<20; i++ )
scanf (" %d" , 【 】 );
for ( i=0; i<20; i++ )
if ( a[i]>=0 ) {【 】; count++; }
printf ("ave=%f\n" , 【 】);
}
6、下面程序為求最小正整數n,使調和級數前n項之和大於預先給定的實數a。
> a,
main( ){
int n=0;
float s=0.0;
while (【 】) { 【 】; n++; }
print("「所求的數值為%f\n" ,s);
}
7、設數組a的元素均為正整數,以下程序是求a中偶數的個數和偶數的平均值。請填空。
main( )
{ int a[10]={1,2,3,4,5,6,7,8,9,10};
int k,s i;float ave;
for(k=s=i=0; i<10;i++)
{ if ( a[i]%2 !=0) 【 】;
s+=【 】;
k++;
}
if(k!=0) { ave=s/k; printf("%d,%d\n", k,ave);}
}
8.下面的程序輸出是【 】。
void main( ) {
int a=7, b=5;
printf("%d\n",b=a/b);
}
9. 若a=2,b=4,則表達式 !(x=a)||(y=b) && 0 的值是【 】.
10. 下面程序的運行結果是 【 】。
main()
{ int a[5][5],i,j,n=1;
for(i=0;i<5;i++)
for(j=0;j<5;j++) a[i][j]=n++;
printf("The result is \n");
for(i=0;i<3;i++)
{ for(j=0;j<=i;j++) printf("%3d",a[i][j]);
printf("\n");
}
}
11. .以下程序實現輸出x,y, z三個數中的最大者。
void main( )
{ int x,y,z,u;
scanf(「%d%d%d」,&x,&y,&z);
if【 】u=z; else u=y;
if【 】 u=x;
printf(「最大為:%d\n」,u);
}
12、以下程序的運行結果是【 】
void main()
{ int a1,a2,b1,b2; int i=5,j=7,k=0;
a1 = !k; a2=i!=j;
printf("a1=%d\ta2=%d\n",a1,a2);
b1=k &&j; b2= k||j;
printf("b1=%d\tb2=%d\n",b1,b2);
}
13、下面程序的運行結果是【 】。
void main()
{ int k,t,sum=0;
for(t=k=1; k<=10;)
{ sum+=t; ++k;
if(k%3==0) t=-k;
else t=k;
}
printf("sum=%d",sum);
}
14、下面程序的功能是輸入5個整數, 找出最大數和最小數所在的位置,並把二者對調,然後輸出調整後的5個數。請填空。
void main()
{ int a[5], max,min,i,j.k;
for(i=0;i<5;i++) scanf("%d",&a[i]);
min=a[0];max=a[0];
for(i=1;i<5;i++)
if((a[i]<min) {min=a[i];【 】;}
for(i=1;i<5;i++)
if((a[i]>max) {max=a[i];【 】;}
【 】;
printf("\n The position of min is : %3d\n",k);
printf("The position of max is: %3d\n",j);
for(i=0;i<5;i++) printf("%5d",a[i]);
}
15、變數x不小於1且小於10的表達式是【 】。
16、若有int ⅰ=10, j=0;
則執行完語句if (j=0)ⅰ+ +; else ⅰ- -; 後變數ⅰ的值為【 】。
17、下面程序段的運行結果是【 】。
x=2;
do { printf("*"); x--;} while(!x==0);
18.輸入以下數據:
How are you?<回車>
則下面程序段的執行結果是: 【 】。
#include <stdio.h>
main( )
{ while (putchar(getchar( )) !='?');
}
19、main( )
{ int number=3;
while(――number>0) printf(「*%d,」, number);
printf(「**%d」, number);
}
這個程序的輸出結果是:【 】。
20.華氏和攝氏的轉換公式為C=5/9*(F-32),其中C表示攝氏的溫度,F表示華氏的溫度。以下程序輸出從華氏0度到華氏300度,每隔20度輸出一個值,請填空。
main( )
{ int upper, step;
float fahr=0, celsius;
upper=300; step=20;
while (fahr <upper)
{ 【 】 ;
printf ("%4.Of, %6.1f\n", fahr, celsius);
【 】 ;
} }
21、求下列數列前20項之和

main( )
{ int i,f1=1,f2=2; float s=0.0;
for(【 】)
{ s=s+(float)f2/f1;
f2=f1+f2;
f1= 【 】。 ;
}
printf("%f\n",s);
}
22、程序讀入50個整數,統計非負數個數,並計算非負數之和。
#include " stdio.h"
main ( )
{ int i, a[50], s, count;
s=count=o;
for ( i=0; i<20; i++ )
scanf (" %d" , 【 】);
for ( i=0; i<20; i++ )
{ if ( a[i]<0 ) 【 】;
s += a[i];
count++;
}
printf ("s=%d\t count=%d\n" , s, count);
}
三、編程題(類似課本習題,如)
1. 按下面的近似公式計算
s = 1/1 -1/2 +1/3 - … +(-1)n-11/n +…
使誤差小於給定的e .
(其他略)
參考答案:
一、 單項選擇題
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
D C D C B C C D A C D C D D D C A B D C D C二、 填空題
1 2 3 4 5 6
10
break
11 50 (yy%4==0&&yy%100!=0||yy%400==0)
yy, mm, len &a[i]
s=s+a[i]
(float)s/conut s<=a
s=s+1.0/n7 8 9 10 11 12
continue
a[i]
1 0 The result is:
1
6 7
11 12 13 z>y
x>u
a1=1 a2=1
b1=0 b2=113 14 15 16 17 18
sum=19
j=i
k=i
a[j]=max;a[k]=min; (x>=1) && ( x<10) 9 ** How are you?19 20 21 22
*2, *1 , **0 Celsius=5/9*(fahr-32)
fahr+=step i=1;i<=20;i++ f2-f1 &a[i]
continue 三、 編程題 (答案不唯一!)#define E 1E5
void main( )
{
int n=1,k=-1;
float s=0;
do{
k=-k;
s=s+(float)k/n;
n++;
while(n<=E);
printf(「s=%f\n」, s2);
}

❼ 誰有大一C語言考試題快考試了,跪求題庫··

單項選擇題(每小題2分,共50分)

1、一個C程序的執行是從___A__。

A、本程序的main函數開始,到main函數結束

B、本程序的main函數開始,到本程序文件的最後一個函數結束

C、本程序文件的第一個函數開始,到本程序文件的最後一個函數結束

D、本程序文件的第一個函數開始,到本程序main函數結束

2、C語言程序的基本單位是___C___。

A、程序行 B、語句

C、函數 D、字元

3、請選出可用作C語言用戶標識符的一組標識符___B___。

A、void B、a3_b3 C、For D、2a

define _123 -abc DO

WORD IF ase sizeof

主要特點

C語言是一種結構化語言,它有著清晰的層次,可按照模塊的方式對程序進行編寫,十分有利於程序的調試,且c語言的處理和表現能力都非常的強大,依靠非常全面的運算符和多樣的數據類型,可以輕易完成各種數據結構的構建,通過指針類型更可對內存直接定址以及對硬體進行直接操作,因此既能夠用於開發系統程序,也可用於開發應用軟體。

以上內容參考:網路-c語言