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

c語言程序大學考試題

發布時間: 2022-07-02 16:57:42

1. 河北大學c語言上機考試歷年考試題

建議你去下載個計算機二級模擬軟體,真的可以的。

2. 求一份C語言程序設計的期末考試試題!!!謝謝了

一.
選擇題
(共15題,
每題2分,共30分)
1.
定義結構體的關鍵字是(

A.
union
B.
enum
C.struct
D.typedef
2.
設整型變數a為5,使b不為2的表達式是(

A.
b=a/2
B.
b=6-(--a)
C.
b=a%2
D.
b=a>3?2:1
3.
下面哪一項是不正確的字元串賦值或賦初值的方法(

A.
char
*str;
str=
「china」;
B.
char
str[7]=
{『c』,
『h』,
『i』,
『n』,
『a』};
C.
char
str1[]=
「china」,str2[]=「123」;
D.
char
str1[10];
str1=
「china」;
4.
以下對二維數組a進行正確初始化的是(

A.
int
a[2][3]={{1,2},{3,4},{5,6}};
B.
int
a[
][3]={1,2,3,4,5,6};
C.
int
a[2][
]={1,2,3,4,5,6};
D.
int
a[2][
]={{1,2},{3,4}};
5.
選出下列標識符中不是合法的標識符的是(

A.
hot_do
B.
cat1
C.
_pri
D.
2ab
6.
以下說法中正確的是(

A.
C語言程序總是從第一個的函數開始執行
B.
在C語言程序中,要調用的函數必須在main()函數中定義
C.
C語言程序總是從main()函數開始執行
D.
C語言程序中的main()函數必須放在程序的開始部分
7.
若已定義:int
a[9],
*p=a;並在以後的語句中未改變p的值,不能表示a[1]地址的表達式為(

A.
p+1
B.
a+1
C.
a++
D.
++p
8.
若有說明:
int
i,j=7,
*p=&i;,
則與i=j;
等價的語句是(

A.
i=
*p;
B.
*p=*&j;
C.
i=&j;
D.
i=*
*p;
9.
若變數c為char類型,能正確判斷出c為小寫字母的表達式是(

A.
『a』<=c<=
『z』
B.
(c>=
『a』)
||
(c<=
『z』)
C.
(『a』<=c)
and
(『z』>=c)
D.
(c>=
『a』)
&&
(c<=
『z』)
10.
以下程序的輸出結果是(

main()
{
int
a[]={1,2,3,4,5,6,7,8,9},
*p;
p=a;
*(p+3)+=2;
printf(
「%d,%d\n」,*p,*(p+3)
);
}
A.
0,
5
B.
1,
6
C.
1,
5
D.
0,
6
11.
以下程序的輸出結果是(

main()
{
int
a=5;
float
x=3.14;
a*=x*(『E』-
『A』);
printf(「%f\n」,(float)a);
}
A.
62.000000
B.
62.800000
C.
63.000000
D.
62
12.
以下程序的輸出結果是(

#define
f(x)
x*x
main()
{
int
a=6,b=2,c;
c=f(a)/f(b);
printf(「%d\n」,c);
}
A.
9
B.
6
C.
36
D.
18
13.
定義如下變數和數組:int
i;
int
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
14.
下列程序段的輸出結果是


void
main(
)
{
int
k;
for
(k=1;k<5;k++)
{
if(k%2!=0)
printf(
「#」
);
else
printf(「*」)
;
}
}
A.
#*#*
B
.
*#*#
C.
##
D.
**
15.
下列程序執行後輸出的結果是(

int
d=1;
fun
(int
p)
{
int
d=5;
d
+
=p
+
+;
printf("%d,",d);
}
main(
)
{
int
a=3;
fun(a);
d
+
=
a
+
+;
printf("%d\n",d);
}
A.
8,
4
B.
9,
6
C.
9,
4
D.
8,
5
二.
填空題(共7題,每空2分,共30分)
1.
數組
int
a[3][5];
共定義了_______________個元素。
2.
有float
f=3.1415927;

printf(「%5.4f」,
f
);輸出的結果是_______________。
3.
下面程序的功能是:輸出
100以內(不包含100)能被
3整除且個位數為
6的所有整數,請填空。
main(
)
{
int
i;
for(i=1;
_______________;
i++)
if
(_______________)
printf("%d",
i);
}
4.
設有「int
x=2,
y」說明,則逗號表達式「y=x+5,x+y」的值是
_______________
5.
以下是使用指針,進行字元串復制的程序,請填空。
main()
{
char
a[]=
「Tsinghua
University」,
b[30],
*p1,*p2;
p1=a;
p2=b;
for(;
*p1!=
『_______________』;
p1++,
p2++)
_______________=_______________;
*p2=
『_______________』;
printf(「string
a
is:%s\n」,a);
printf(「string
b
is:%s\n」,b);
}
6.
下面程序用冒泡法對數組a進行降序排序,請填空。
main()
{
int
a[5]={4,7,2,5,1};
int
i,j,m;
for(i=0;i<4;i++)
for(j=0;j<_______________;j++)
if(
_______________<
_______________
)
{
m=a[
j];
a[
j]=a[
j+1];
a[
j+1]=
m;
}
for(i=0;i<5;i++)
printf("%d
",a[i]);
}
7.
函數fun的功能是:使一個字元串按逆序存放,請填空。
void
fun
(char
str[])
{
char
m;
int
i,j;
for(i=0,j=strlen(str);i<_______________;i++,j--)
{
m=str[i];
str[i]=
_______________;
str[j-1]=m;
}
printf("the
rotated
string
is
%s\n",_______________);
}

3. c語言程序設計期末考試樣題

1、答案:A(單引號括起來的都是字元,而且一對單引號最多對應一個字元,\反斜杠是轉義字元的開始,\72是ASCII碼對應的字母H。也就是把H這個字母存到了變數chara中。就一個字元H。)2、ACDE解析:inta=3,b=4,c=5;,A、a>bB、a<=bC、(a||b)>cD、a<=(b||c)E、!((a<b)&&!c||b)優先順序由大到小:()!&&||A選項,3>4錯誤,邏輯值0。B選項,35,(3||4)"或"邏輯運算符兩邊只要有一個非0的整個值就是1,1>5錯,邏輯值0。D選項,3<=(4||5)錯誤,邏輯值0。E選項,!((3<4)&&!5||4),先(3<4)邏輯值1,!5邏輯值0,1&&0是0,0||4是1,!1是0,所以邏輯值0。3、AC。解析:A可以,B答案b不能被賦值(自左向右,計算||左側就已經是1了右邊就不用再計算了整個表達式無論右邊如何整個邏輯值必定是1,計算機也就不會計算右邊了)C可以(因為&&兩邊都必須計算才能得出最後的邏輯值答案),D不可以a不能被賦值(&&左邊就一個a,構不成賦值,可能存放一個隨機值,右邊可以被賦值)。4、ABCD。外部函數幾乎可以被所有函數調用。只要開頭#include」"引入。

4. C語言 程序測試題

一:
1 a
2 a
3 a
4 b
5 a
6 b
7 d
8 a
9 c
10 b
二:
1 3 //考察逗號表達式
2 3
3 10 9
4 4213 13
5 1
三:
1 10,5,9
2 741
3 沒有題目
四:
1
#include <stdio.h>
void main()
{
int scores[5]={0},i;
double average;
printf("Input the scores: ");
scanf("%d %d %d %d",&scores[0],&scores[1],&scores[2],&scores[3]);
for(i=0;i<4;i++)
{
printf("%d %d\n",scores[i],scores[4]);
scores[4]+=scores[i];
}
average = double(scores[4]/4.0);
printf("sum of the scores: %d\n",scores[4]);
printf("average of the scores: %2.1f\n",average);
}

2
#include <stdio.h>
void main()
{
int r,h;
double volume;
printf("Input radius and h :");
scanf("%d %d",&r,&h);
printf("%d,%d\n",r,h);
printf("volume is: %.2f\n",3.1415*r*r*h/3);
}

5. C語言 編程考試題,求解答。

這些都是一些很簡單的題目。我現在沒有事做,就幫你寫寫吧。等著,我在編。

這是第二題的程序:

#include<stdio.h>
voidmain()
{
intyear;

printf("請輸入年份:");
scanf("%d",&year);
if((year%400==0)||(year%4==0&&year%100!=0))
printf("%d年是閏年。",year);
else
printf("%d年不是閏年。",year);
}

這是第三題的程序:

#include<stdio.h>
intmax(inta,intb)
{
intt;
t=a<b?a:b;
returnt;
}
floatarea(intr)
{
returnr*r*3.1415926;
}
voidmain()
{
inta,b;
intr;
printf("請輸入2個數值:");
scanf("%d%d",&a,&b);
r=max(a,b);
printf("半徑為%d的園的面積為%f。",r,area(r));
return;
}

以下是第四題的程序:

#include<stdio.h>
intreverse(inta)
{
intsum=0;
while(a>0)
{
sum=sum*10+a%10;
a/=10;
}
returnsum;
}
voidmain()
{
inta;

printf("請輸入數值:");
scanf("%d",&a);
printf("數值%d逆序輸出為%d。",a,reverse(a));
return;
}

以下是第五題的程序:

#include<stdio.h>

voidmain()
{
inta[10]={0,1,2,3,4,5,6,7,8,9};
intsum=0;
inti;

for(i=0;i<10;i++)
sum+=a[i];
printf("用數組計算的結果為%d ",sum);

sum=0;
for(i=0;i<10;i++)
sum+=*(a+i);
printf("用指針計算的結果為%d ",sum);
return;
}

以下是第六題的程序:

#include<stdio.h>
#include<string.h>

voidmain()
{
chara[20];
inti,j;
printf("Pleaseinput:");
scanf("%s",a);
j=strlen(a);
for(i=0;i<j;i++)
if(a[i]>='a'&&a[i]<='z')
a[i]-=32;
printf("變成大寫輸出為:%s",a);
return;
}

以下是第七題的程序:

#include<stdio.h>
#include<string.h>

structComputer
{
charname[10];
intsum;
};
voidmain()
{
inti;
structComputerpc[3]={{"lenovo",0},{"fondon",0},{"dell",0}};
charbuff[10];

for(i=0;i<10;i++)
{
printf("請輸入電腦的名字:");
scanf("%s",buff);
if(strcmp(pc[0].name,buff)==0)
pc[0].sum++;
elseif(strcmp(pc[1].name,buff)==0)
pc[1].sum++;
elseif(strcmp(pc[2].name,buff)==0)
pc[2].sum++;
else
printf("輸入錯誤,此票作廢! ");
}
for(i=0;i<3;i++)
printf("電腦%s的得票為%d. ",pc[i].name,pc[i].sum);
return;
}

全部寫玩了,全部測試過,完全可以編譯,沒有問題。

滿意請採納,謝謝。

6. C語言程序設計考試題

  1. main函數

  2. scanf函數,printf函數

  3. -60

  4. 6 ,4, 2

  5. &&, || , !

  6. B 66

  7. 2 1

  8. 6

  9. main

  10. 5

7. 誰有大一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語言

8. C語言考試題

//word編輯,大小寫可能有問題
一、填空題
1、一個C語言程序的語句至少應包含一個__函數____。
2、C語言源程序文件的擴展名是__ .C ____,經過編譯、連接後,生成文件的擴展名是__編譯後為.obj 連接後為.exe ____。
3、結構化程序由 順序 、___選擇___和___循環___三種基本結構組成。
4、C語言的執行是從__main()函數____開始執行的。
5、C源程序的語句分隔符是___;___。
6、在C語言中,用關鍵字__float____定義單精度實型變數。
7、表達式S=12應當讀做「__把12賦值給變數S____」。
8、C語言源程序的基本單位是___函數___。
9、設int x=9,y=8;表達式x-=y+1的結果是___0___。
10、若a為整型變數,a=12,則表達式:a * =2+3的值___60___。
11、調用C語言對輸入輸出處理的庫函數時,在# include命令行中應包含的頭文件是__stdio.h___。
12、表達式9%5的結果是_4____。
13、若a為整型變數,a=12,則表達式:a+=4的值___16___。
14、在C語言中,要求運算數必須是整型的運算符是___%___。
15、在C語言中,用___非0___表示邏輯「真」值。
16、表達式10/3的結果是__3____。
17、通常一個位元組包含___8___個二進制位。
18、 假設所有變數均為整型,a=2,b=5,b++則表達式a+b的值是___8___。
19、在C語言中,最基本的數據類型只有四種,它們分別是:___int___、___char___、___float___和double。
20、一個C程序有且僅有一個__main()____函數。
21、若a為整型變數,a=12,則表達式:a-=2的值__10____。
22、在C語言中,有三種邏輯運算符,它們分別是:___!___、___&&___、___||___。
23、在C語言中,字元輸入函數和字元輸出函數分別是:__getchar()____和___putchar()___。
24、C程序開發的四個步驟是___編輯___、___編譯___、___鏈接___和執行。
25、C程序的結構分別是:順序結構、__選擇結構____、__循環結構____。
26、if語句中的表達式可以是關系表達式、__邏輯表達式____、___條件表達式___。
27、__?:____是C語言中惟一一個三元運算符。
28、C語言提供的預處理命令主要包括如下三種:宏定義、__文件包含____、___條件編譯___。

二、閱讀程序,寫出下列程序運行結果。
1、2

2、K
3、a 97
4、無結果
三、編寫程序
1、編寫一個C程序,輸入a、b、c 3個數,輸出其中最大的數。
#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);
}

求1—50的之和。
#include<stdio.h>
Void mian()
{
Int sum=0,i;
For(i=1;i<=50;i++)
Sum+=i;
Printf("1-50之和為:%d",sum);
}
從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。
#include<stdio.h>
Void mian()
{
Char c;
Printf("請輸入一個字母");
Scanf("%c".&c);
Printf("它的小寫字母為%c",c+32);
}

利用while語句,計算1+1/2+1/4+…+1/100的值,並顯示出來。
#include<stdio.h>
Void mian()
{
Float sum=0,temp;
Int i =1;
While(i<=100)
{
Temp=1/i;
Sum+=temp;
I++
}
Printf("結果為%d",sum);
}

輸入兩個整數,輸出其中的大數。
#include<stdio.h>
Void mian()
{
Int a,b;
Printf("請輸入兩個數");
Scanf("%d%d".&a,&b);
Printf("大數是:%d"a>b?a:b);
}

6、利用while語句,計算1+1/3+1/5+…+1/99的值,並顯示出來。
#include<stdio.h>
Void mian()
{
Int i =1;
Float sum=0,temp=0;
While(i<=99)
{
Temp =1/i;
Sum+=temp;
I=i+2;
}
Printf("結果為: %f",sum),
}

9. c語言程序設計考試題

你的題目錯了吧,看你那題目意思應該是除才對,要不怎麼函數值為小數呢?

#include <stdio.h>
double fun(int n)
{
int i=1;
double sum;
for(i=1;i<=n;i++)
sum=sum+(1.0*i)/(i+1);
return sum;
}
main()
{
printf("%f",fun(10));
}

10. 大一c語言考試題(急)

1、C源程序文件的擴展名是(.C);編譯後生成的文件名後綴是(.OBJ);經過連接後生成文件
名後綴是(.exe);在VC++6.0中用Run命令運行當前程序時,運行的程序擴展名是(.exe)。
2、結構化程序的三種基本結構是(順序、選擇、循環)。
3、整型常量有三種表示方法,它們是(十進制整數)、(八制整數)、(十六整數)。
4、表達式3.5+1/2+56%10的值是(9.5);10/10和10%10的值各是(1和0)。
5、表達式3%3*3的值是(0);5/3*3的值是(3);3*6%4的值是(2)。
6、設intx=12;執行x+=x-=x*x後,x的值是(-264)。
7、表達式k=7,k+=k-=k+1的值是(-2)。
8、語句"printf("%x,%o",16,12);"的輸出結果是(10,14)。
9、設shortx,y;y=(x=3,x+2,++x,x++*2);則x,y的值各是(5,8)。
10、設intx,y,z,t;x=y=z=1;t=++x||++y&&++z;則y的值是(1)。
11、條件10<=x<20或x<=0的C語言表達式是(x>=10&&x<20||x<=0)
12、設a=1,b=2,c=3,d=4;表達式a>b?a:c<d?a:d的值是(1)。
13、在C程序中,用(1)表示邏輯值「真」。
14、表示「x≥y≥z」的C表達式是(x>=y&&y>=z)。
15、設x為int型變數,請寫出一個關系表達式((x%21==0)),用以判斷x同時為3和7的倍數時
,關系表達式的值為真。
16、設ch是字元型變數,判斷ch為英文字母的表達式是:(
ch<='z'&&ch>='a'||ch>='A'&&ch<='Z')。
17、在C語言中參數的傳遞總是採用(單向)傳遞。
18、如果return表達式;中」表達式」的類型與函數類型不一致,則以(函數類型)的類型為准
自動轉換;如果實際參數的類型與形式參數的類型不一致,則以(形式參數)的類型為准自動轉
換。
19、函數形式參數在(調用)時分配內存,(調用結束)時釋放內存。
20、系統總是為數組分配(連續)的一塊內存。
21、字元串的結束標志是(ASCII碼的0)。
22、TC系統為任何指針變數分配的內存是(4)位元組。
23、若有定義:doublex[3][5];則x數組中行下標的下限為(2),列下標的上限為(4)。
24、若有定義intx=3,*p;則使p指向變數x的賦值語句為(p=&x)。
25、在C語言程序中,在函數內部定義的變數稱為(局部變數)。
26、chara[2][10]={「123」,」123456789」},*p[2]={「123」,」123456789」};則(前者)
佔用內存多。
27、structst{charnum[5];inta[4];floatave;}a,*p;則變數a和p在內存各
占(25和4)位元組。
28、unionun{inti;charc;};
structst{intv[4];doublet;unionunk;}w,*pw;pw=&w;
變數w佔用(28)位元組;通過w訪問v[0]的形式是(w.v[0]);通過w訪問成員c的形式是(w.k.c
);通過pw訪問v[0]的全部形式有(pw->v[0],*(pw->v));通過pw訪問成員c的全部形式有(
(pw->k.c))。(實驗驗證,pw->k->c這種書寫有錯誤直接用.也是錯誤)
29、設fp是文件指針,要把字元變數ch的內容寫入文件,可用的語句有(
fputc(ch,fp);fwrite(&ch,1,1,fp);)。
30、fputs(str,fp)函數的功能是(將數據str寫入fp文件流中)。
{29題不能用fputs(&ch,fp);由於ch只有一個字元,如果用這句的話,會因為沒有字元串結束標
志而寫入很長的數據。從實驗中得出。}
涉及到窮舉的題目,像28、29可能沒有列舉完全其他題目都是經過vc++6.0驗證過的。