當前位置:首頁 » 編程語言 » c語言期末復習

c語言期末復習

發布時間: 2023-04-16 22:08:51

⑴ 大一期末c語言考試的重點是什麼

我上點選擇題
1、以下不正確的描述為【 】。
(A) 調用函數時,實參可以是表達式
(B) 調用函數時,實參與形參可以共用內存單元
(C) 調用函數時,將為形參分配內存單元
(D) 調用函數時,實參與形參的類型必須一致
2、以下正確的敘述是【 】。
(A) C語言的主函數是無參函數
(B) C語言的主函數最多允許有1個形式參數
(C) C語言的主函數最多允許2個形式參數
(D) C語言的主函數可以有2個以上形式參數
3、C語言中函數返回值的類型是由【 】決定的。
(A) return語句中的表達式類型
(B) 調用該函數的主調函數類型
(C) 調用函數時臨時
(D) 定義函數時所指定的函數類型
4、若x為int型變數,則以下函數fun【 】。
fun(int x)
{
printf("%d",x);
}
(A) 返回值為void類型
(B) 無法確定返回值
(C) 返回值為int類型
(D) 沒有返回值
5、以下不正確的描述為【 】。
(A) 不同函數中可以使用相同名字的變數
(B) 形式參數是局部變數
(C) 一個函數內部定義的變數只能在本函數范圍內有效
(D) 在一個函數內部的復合語句中定義的變數可以在本函數范圍內有效
6、C語言規定,調用一個函數時,實參變數和形參變數之間的數據傳遞是【 】。
(A) 地址傳遞
(B) 值傳遞
(C) 由實參傳給形參,並由形參傳回來給實參 十
(D) 由用戶指定傳遞方式
7、若用數組名作為函數調用時的實參,則實際上傳遞給形參的是【 】。
(A) 數組首地址
(B) 數組的第一個元素值
(C) 數組中全部元素的值
(D) 數組元素的個數
8、凡是函數中未指定存儲類別的變數,其隱含的存儲類別為【 】。//應該為局部變數
(A) 自動(auto)
(B) 靜態(static)
(C) 外部(extem)
(D) 寄存器(register)
9、在C語言中,對於存儲類型為【 】的變數,只有在使用它們時才佔用內存單元。
(A) static和auto
(B) register和extern
(C) register和static
(D) auto和register
10、在一個源文件中定義的全局變數的作用域為【 】。
(A)本文件的全部范圍
(B)本程序的全部范圍
(C)本函數的全部范圍
(D)從定義變數的位置開始至文件結束
11、在一個C源程序文件中,若要定義一個只允許本源文件中所有函數使用的全局變數,則該變數需要使用的存儲類別為【 】。
(A)extern
(B)register
(C)auto
(D)static
12、以下不正確的描述為【 】。
(A)在函數之外定義的變數稱為外部變數,外部變數是全局變數
(B)在一個函數中既可以使用本函數中的局部變數,又可以使用全局變數
(C)外部變數定義和外部變數說明的含義不同
(D)若在同一個源文件中,外部變數與局部變數同名,則在局部變數的作用范圍內,外部變數不起作用
13、以下正確的函數定義形式是【 】。
(A)double fun(int x,int y)
(B)double fun(int x; int y)
(C)double fun(int x,int y);
(D)double fun(int x,y);
14、以下說法正確的是【 】。
(A) 實參和與其對應的形參各佔用獨立的存儲單元
(B) 實參和與其對應的形參共佔用一個存儲單元
(C) 只有當實參和與其對應的形參同名時才共用存儲單元
(D) 形參是虛擬的,不佔用存儲單元
15、若調用一個函數,且此函數中沒有return語句,則正確的說法是【 】。
(A) 沒有返回值
(B) 返回若干個系統默認值
(C) 能返回一個用戶所希望的函數值
(D) 返回一個不確定的值
16、以下敘述正確的是【 】。
(A )定義函數時,形參的類型說明可以放在函數體內
(B) return後邊的值不能為表達式
(C) 如果函數的類型與返回值類型不一致,以函數類型為准
(D) 如果形參與實參的類型不一致,以實參類型為准
17、以下程序有語法性錯誤,有關錯誤的原因的正確說法是【 】。
main( )
{int G=5,K;
void Prt_char();
……
K=Prt_char(G);
……
}
(A) 語句void prt_char();有錯,它是函數調用語句,不能用void說明
(B) 變數名不能使用大寫字元
(C) 函數說明和函數調用語句之間有矛盾
(D) 函數名不能使用下劃線
18、以下正確的描述是【 】。
(A) 函數的定義可以嵌套,但函數的調用不可以嵌套
(B) 函數的定義不可以嵌套,但函數的調用可以嵌套
(C) 函數的定義和函數的調用均不可以嵌套
(D) 函數的定義和函數的調用均可以嵌套
19、以下說法正確的是【 】。
如果在一個函數中的復合語句中定義了一個變數,則該變數
(A) 只在該復合語句中有效
(B) 在該函數中有效
(C) 在本程序范圍內均有效
(D) 為非法變數說明
20、以下程序的正確運行結果是【 】。
f(int a)
{int b=0; static int c=3;
b++; c++;
return(a+b+c);
}
main()
{int a=2,i;
for(i=0;i<3;i++) printf("%4d",f(a));
}

(A) 7 7 7 (B) 7 10 13
(C) 7 9 11 (D) 7 8 9

21、請選擇正確的運行結果填入【 】中。
#include <stdio.h>

fun(int x,int y)
{static int m=0,i=2;
i+=m+1;
m=i+x+y;
return(m);
}
main()
{
int j=4,m=1,k;
k=fun(j,m);
printf("%d,",k);
k=fun(j,m);
printf("%d\n",k);
}

(A) 08, 20 (B) 8, 8 (C) 8, 17 (D) 8, 16
22、請選擇正確的運行結果填入【 】中。
#include <stdio.h>
int x,y;
num( )
{
int a=15,b=10;
int x,y;
x=a-b;
y=a+b;
return;
}
main( )
{int a=7,b=5;
x=a+b;
y=a-b;
num( );
printf("%d,%d\n",x,y);
}
(A) 12,2 (B) 5,25 (C) 2,12 (D)不確定
一、填空題
1、一個C語言程序的語句至少應包含一個______。
2、C語言源程序文件的擴展名是______,經過編譯、連接後,生成文件的擴展名是______。
3、結構化程序由順序結構、______和______三種基本結構組成。
4、C語言的執行是從______開始執行的。
5、C源程序的語句分隔符是______。
6、在C語言中,用關鍵字______定義單精度實型變數。
7、表達式S=12應當讀做「______」。
8、C語言源程序的基本單位是______。
9、設int x=9,y=8;表達式x-=y+1的結果是______。
10、若a為整型變數,a=12,則表達式:a * =2+3的值______。
11、調用C語言對輸入輸出處理的庫函數時,在# include命令行中應包含的頭文件是______。
12、表達式9%5的結果是______。
13、若a為整型變數,a=12,則表達式:a+=4的值______。
14、 在C語言中,要求運算數必須是整型的運算符是______。
15、在C語言中,用______表示邏輯「真」值。
16、7、表達式10/3的結果是______。
17、通常一個位元組包含______個二進制位。
18、 假設所有變數均為整型,a=2,b=5,b++則表達式a+b的值是______。
19、在C語言中,最基本的數據類型只有四種,它們分別是:______、______、______和double。
20、一個C程序有且僅有一個______函數。
21、若a為整型變數,a=12,則表達式:a-=2的值______。
22、在C語言中,有三種邏輯運算符,它們分別是:______、______、______。
23、在C語言中,字元輸入函數和字元輸出函數分別是:______和______。
24、C程序開發的四個步驟是______、______、______和執行。
25、C程序的結構分別是:順序結構、______、______。
26、if語句中的表達式可以是關系表達式、______、______。
27、______是C語言中惟一一個三元運算符。
28、C語言提供的預處理命令主要包括如下三種:宏定義、______、______。

⑵ C語言期末題。幫忙做做。

第五題應蘆大該鋒嘩知為B,不銀消會是C的
第六題選B!b是地址常量,哪能被賦值撒!
第十題選A!從case1開始執行,b就加了一次

⑶ 要期末考試了,怎麼速學復習c語言程序設計

首先用1~3天的時間,把C語言的基本語法、基本類型等過一遍。比如指針啊,數組啊,指針的指針啊等等。除非平時一點都沒聽,否則3天之內應該是可以吧這些內容熟悉一遍的。

剩餘的時間,預留3天做做題。其餘時間全部放到數據結構和基本演算法的研究上。比如鏈表、排序演算法等。

一般考試就是理論和編程。在學校應該是偏理論。所以先過一遍理論,然後再通過練習加深理論。

祝你好運了

⑷ C語言期末考試編程題

1輸入兩個整數a和b,若a和b的平方和大於100,則輸出平方和的百位以上的數字,否則輸出a和 b的和。
要求: 1)輸出結果時說明平方和是大於100還是小於100( >100或<100 )
#include<stdio.h>
int main(){
int a, b, c;
scanf("%d%d", &a, &b);
c = a * a + b * b;
if(c > 100) printf("平方和大於100\n%d\n", c%100);
else printf("平方和小於等於100\n%d\n", a + b);
return 0;
}
2輸入一個整數,判斷是否是5和7的公倍數,若是則輸出:5and7yes,否則再判斷是否是3的倍數,若是3的倍數輸出:3yes,若都不是則輸出:no
#include<stdio.h>
int main(){
int input;
scanf("%d", &input);
if(input % 5 == 0 && input % 7 == 0)printf("5and7yes\n");
else if(input % 3 == 0) printf("3yes\n");
else printf("no\n");
return 0;
}
第三,四題和第二題差不多
5計算公式: [ 2*x x=2
y= [ x*x+1 x<2
[ 2*x*x+3*x+1 x>2
要求: 1)從鍵盤輸入x的值,根據x的值求y的值
2)輸出y的值
#include<stdio.h>
int main(){
int x, y;
scanf("%d", &x);
if(x == 2) y = 2*x;
else if(x < 2) y = x*x+1;
else y = 2 * x * x + 3 * x + 1;
printf("%d\n", y);
return 0;
}
8 和7差不多
下面原理都差不多 用if基本都能搞定 判斷條件就行了 應該LZ能搞定了 東西有點多 -。- 就寫這些吧 其他的就不一一寫了^ ^

⑸ c語言復習題

以下答案僅作參考,希望通過你的思考後對你有所幫助。
一、
1、函數
2、源程序一般是.c或者.cpp
頭文件是.h
編譯後是.obj
鏈接後是.exe
3、分支結構、循環結構
4、從主函數開始執行,即main()函數開始
5、分隔符為分號 即 ;
6、float
7、把12賦值給變數S
8 基本單位是函數
9、0
10、60
11、stdio.h
12、4
13、16
14、%
15、非0
16、3
17、8
18、8
19、int 、char 、float
20、main()
21、10
22、與運算符:&&;或運算符:||;非運算符:!
23、getchar(); putchar();
24、輸入與編輯源程序--對源程序進行編譯--與庫函數連接--運行可執行的目標程序
25、分支結構、循環結構
26、邏輯表達式、條件表達式
27、?:
28、文件包含、條件編譯

二、
1、結果:2 因為:if(a<b)不成立,所以下面語句都不執行。結果為C的初值,也就是2。
2、結果:K 因為A+10後,也就是到了K
3、a ,97 因為『a』所對應的整數是97
4、沒有結果輸出。原因兩個條件都不成立。

三、
1、
#include <stdio.h>
void main()
{ int a,b,c;
printf("請輸入三個整數:");
scanf("%d%d%d",&a,&b,&c);
if(a<b) a=b;
if(a<c) a=c;
printf("最大的數:%d",a);
}

2、
#include <stdio.h>
void main()
{ int sum=0,i;
for(i=1;i<=50;i++)
sum+=i;
printf("1—50的和為:%d",sum);
}

3、
#include <stdio.h>
void main()
{ char c;
printf("請輸入一個大寫字母:");
scanf("%c",&c);
printf("\n它的小寫字母為:%c",c+32);
}

4、
#include <stdio.h>
void main()
{ float sum=0,temp;
int i=1;
while(i<=100)
{temp=1/i;
sum+=temp;
i++;
}
printf("結果為:%f",sum);
}

5、
#include <stdio.h>
void main()
{int a,b;
printf("請輸入兩個整數:");
scanf("%d%d",&a,&b);
printf("大的數是:%d",a>b? a:b);
}

6、
#include <stdio.h>
void main()
{int i=1;
float sum=0,temp=0;
while(i<=99)
{temp=1/i;
sum+=temp;
i=i+2;
}
printf("結果為:%f",sum);
}

⑹ 大一C語言期末考試求題庫

一、單項選擇題(共10題,每題2分,共20分。在備選答案中選擇一個最佳答案。多選、錯選、不選不得分)
1、不是C語言基本數據類型的是( )。
A、指針類型 B、整型
C、字元型 D、實型
2、設有:int a=3, b= 4, c= 5,x , y; 表達式0 && (x=a)&&(y=b)的值為( )。
A、1 B、0 C、3 D、4
3、設有語句 int a=3 ; 則執行了語句 a+=6;後,變數a 的值為( )。
A、18 B、-3 C、9 D、12
4、執行以下程序段後,輸出的y值為( )
void main()
{ int a[]={2,4,6,8,10};
int y, *p;
p=&a[0];
y=*p; printf(「%d」,y);
}
A、2 B、4 C、6 D、8
5、有定義語句:float a[4];則分配給數組a的內存空間為( )位元組。
A、 20 B、 12 C、 16 C、10
6、以下描述錯誤的是( )。
A、break語句可用於while語句。
B、break語句和continue語句的作用是一樣的。
C、在循環語句中使用break語句是為了跳出循環,提前結束循環。
D、在循環語句中使用continue語句是為了結束本次循環,而不終止整個循環。
7、C語言中規定,if語句的嵌套結構中,else總是( )。
A、與最近的if 配對 B、與第一個if 配對
C、按縮進位置相同的if配對 D、與最近的且尚未配對的if 配對
8、說明語句「int (*p)( ); 」的含義是( ) 。
A、p是一個指向一維數組的指針變數。
B、p是指針變數,指向一個整型數據。
C、p是一個指向函數的指針,該函數返回一個int型數據。
D、以上都不對。
9、以下對二維數組c的正確聲明是 ( ) 。
A、int c[3][ ]; B、int c(3,4);
C、int c(2)(2); D、int c[3][2];
10、下述程序段執行後輸出結果為( )。
int x=100, y=200;
printf ("% d", (x, y));
A、100 B、200 C、100,200 D、編譯出錯

二、填空題(共7題,共10空,每空1分,共10分。將答案填在題中橫線上)
1、C語言提供的三種邏輯運算符是 && 、 || 和!;
2、函數的返回值是通過函數中的 return 語句獲得的。
3、在"int a[ ][3]={{1},{3,2},{4,5,6},{0}};"定義後,a[2][2]的值為_6__ _;
4、對於"int *pa[5];" pa是一個具有5個元素的_數組指針_,每個元素是一個指向int型變數的__指針__;
5、單向鏈表的尾節點next指針應賦值__ NULL___;
6、在語句for(x=1,y=3;x>y;y++)中循環體執行的次數為 0 。
7、int a[5];數組a的首地址為2000,則元素a[1]的地址為 2002 ,元素a[2]的地址為 2004 。
三、程序填空題(共2題,共5空,每空4分,共20分)
1、以下程序完成計算1-1/2+1/3-1/4+1/5+……前n 項和,請填空。
#include <stdio.h>
int main( )
{ int i, n, flag;
float sum;
scanf("%d", &n);
flag= 1 ;
sum=0;
for(i=1;i<=n; i++ )
{ sum+=(float)flag/i;
flag=-flag ;
}
printf("%.3f\n", sum);
}
2、以下程序的功能是從鍵盤輸入n個整數,統計其中正數、0、負數的個數,請填空。
#include <stdio.h>
void main( )
{int a, i, count1,count2,count3;
count1=count2=count3=0 ;
for(i=1;i<=n;i++)
{ scanf(「%d」, &a);
if(a>0) count1++;
else if(a==0) count2++ ;
else count3++;
}
printf(「正數:&d個,零:%d個,負數:%d個\n」, count1,count2,count3 );
}

四、運行程序結果題(共4題,每題6分,共24分)
1、寫出程序運行結果。
void main( )
{ int x=1,y=2,t;
int *p1,*p2;
p1=&x; p2=&y;
t=*p1;*p1=*p2;*p2=t;
printf("x=%d,y=%d\n",x,y);
}
運行結果為:
程序有錯,不能運行!或寫:
x=2,y=1

2、寫出程序運行結果。
#include<stdio.h>
int max(int a,int b)
{ int c;
c=a>b?a:b;
return(c);
}
int min(int a,int b)
{int c;
c=a<b?a:b;
return(c);
}
void main()
{ int a=2,b=6;
printf("max=%d\n",max(a,b));
printf(「min=%d\n」,min(a,b));
}
運行結果為:
程序有錯,不能運行!或寫:
max=6
min=2

3、寫出程序運行結果。
#include <stdio.h>
void main()
{ int a[3][3]={1,2,3,4,5,6,7,8,9};
int i,j,sum=0;
for (i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==j) sum=sum+a[i][j];
printf(「sum=%d\n」,sum);
}
運行結果為:
程序有錯,不能運行!或寫:
sum=15

4、寫出程序運行結果。
void main( )
{ int n,f;
n=1;
while(n<=10)
{ f=f*n;
n+=2;
}
printf(「f=%d\n」,&f);
}
運行結果為:
程序有錯,不能運行!或寫:
f=不確定
五、程序設計題(共2題,每題13分,共26分)
1、將一個數組按逆序存放,如元素1、2、3、4、5,按逆序存放後為5、4、3、2、1。

⑺ 大一C語言期末考試的試題大概是什麼樣子的主要考什麼

主要考程序閱讀題,重點在c語言函數、指針、慶模態數組應用幾個方面,要掌握基礎的編程碼岩方法,比如排序基本演算法,後面要譽源編程序的

⑻ 急,C語言期末考試題

#include <stdio.h>

#include <stdlib.h>

#include <time.h>


#define N 50


void reverse(int a[],int n) {

int i,t;

for(i = 0; i < n/2; ++i) {

t = a[i];

a[i] = a[n - 1 - i];

a[n - i - 1] = t;

}

}


void show(int a[],int n) {

帶盯叢int i,cnt = 0;

for(i = 0; i < n; ++i) {

if(i && i%10 == 0) printf(" ");

printf("%3d",a[i]);

++cnt;

}

printf(" ");

if(cnt%10) printf(" ");

}


int main() {

int i,a[N];

srand(time(NULL));

for(i = 0; i < N; ++i)

a[i] = rand()%100;

蠢櫻printf("逆置之前: ");

show(a,N);

reverse(a,N);則凱

printf("逆置之後: ");

show(a,N);

return 0;

}

熱點內容
androidcursor遍歷 發布:2024-11-02 00:27:40 瀏覽:767
網易我的世界地皮伺服器大全 發布:2024-11-02 00:24:20 瀏覽:964
光宇國際服怎麼安卓轉ios 發布:2024-11-02 00:14:23 瀏覽:170
魔獸世界單機資料庫 發布:2024-11-01 23:37:11 瀏覽:698
配置vlan後如何配置電腦ip 發布:2024-11-01 23:21:16 瀏覽:546
中鐵盾構機密碼是多少 發布:2024-11-01 23:07:21 瀏覽:708
工規存儲 發布:2024-11-01 22:59:33 瀏覽:802
無法識別加密狗 發布:2024-11-01 22:47:03 瀏覽:599
手機怎麼給wifi改密碼怎麼辦啊 發布:2024-11-01 22:46:03 瀏覽:858
抖音賬號的密碼是由什麼組成 發布:2024-11-01 22:45:27 瀏覽:449