- 相關推薦
2017年計算機等級c語言程序設計試題
一、選擇題(每小題1分,共40分)
1、下列選項中非法的字符常量是( )。
A.'\t'
B.'\039'
C.','
D.'\n'
2、下列函數的類型是( )。
fun(double x)
{float y;
y=3*x-4;
return y;
}
A.int
B.不確定
C.void
D.float
3、軟件生命周期是指( )。
A.軟件產品從提出、實現、使用維護到停止使用退役的過程
B.軟件從需求分析、設計、實現到測試完成的過程
C.軟件的開發過程
D.軟件的運行維護過程
4、有如下程序:
main()
f int x=23:
do
{printf(”%d”,x——);}
while(!x);
}
該程序的執行結果是( )。
A.321
B.23
C.不輸出任何內容
D.陷入死循環
5、已有定義:char C;,程序前面已在命令行中包含ctype.h文件,不能用于判斷e中的字符是否為大寫字母的表達式是( )。
A.isupper(c)
B.'A'<一c<='Z'
C.'A'<一c&&c<='Z'
D.c<=('z'-32)&&('a'—32)<=c
6、下列敘述中不正確的是( )。
A.在c語言中調用函數時,只能把實參的值傳送給形參,形參的值不能傳送給實參
B.在c的函數中,最好使用全局變量
C.外部變量可以在函數之間傳遞數據
D.自動變量實質上是一個函數內部的局部變量
7、定義下列結構體(聯合)數組:
struet St
{char name[15];
int age;
)a[10]={”ZHA()”,14,”WANG”,15,”LIU”,16,”
ZHANG”,l7);
執行語句print[(”%d,%c”,a[2].age,*(a[3].name+2))的輸出結果為( )。
A.15,A
B.16,H
C.16,A
D.17,H
8、若變量已正確定義為float型,要通過輸入語句:seanf(”%f%f%f”,&a,&b,&c);給a賦值11.0,b賦值22.0,e賦值33.0,不正確的輸入形式是( )。
A.11 22 33
B.11.0,22.0,33.0
C.11.0 22.0 33.0
D.1122
9、以下敘述中正確的是( )。
A.在C程序中無論是整數還是實數,只要在允許的范圍內都能準確無誤地表示
B.C程序由主函數組成
C.C程序由若干函數組成
D.C程序中只允許包含一個函數
10、 C語言中運算對象必須是整型的運算符是( )。
A.%
B./
C.!
D.**
11、 下列關于定點數與浮點數的敘述中錯誤的是( )。
A.在實數的浮點表示中,階碼是一個整數
B.整數是實數的特例,也可以用浮點數表示
C.實數的補碼是其對應的反碼在最后一位加1
D.相同長度的浮點數和定點數,前者可表示數的范圍要大于后者
12、 表達式'5'-'1'的值是( )。
A.整數4
B.字符4
C.表達式不合法
D.字符6
13、 有以下程序:
#include
main()
{int a[10]={1,2,3,4,5,6,7,8,9,10),*p=a;
printf(”%a\n”,*(p+2));
)
程序的輸出結果是( )。
A.3
B.4
C.1
D.2
14、 在C語言中,函數返回值的類型最終取決于( )。
A.函數定義時在函數首部所說明的函數類型
B.return語句中表達式值的類型
C.調用函數時主調函數所傳遞的實參類型
D.函數定義時形參的類型
15、 下列程序的運行結果是( )。
#includedstdio.h>
void main()
{int s=0,k;
for(k=7;k>1;k--)
{switch(k)
{case 1:
case 4:
case 7:
s++:
break;
case 2:
case 3:
case 6:break;
case 0:
case 5:
s+=2:
break;
))
print[(”S=%d”,s);
}
A.S=3
B.s=4
C.s=5
D.無輸出結果
16、 沒x為jnt型變量,則執行以下語句后,X的值為( )。
x=10;x=x-=x-X:
A.10
B.20
C.40
D.30
17、 有以下程序:
#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
18、 若程序中有宏定義行:#define N 100,則以下敘述中正確的是( )。
A.宏定義行中定義了標識符N的值為整數100
B.在編譯程序對C源程序進行預處理時用100替換標識符N
C.對C源程序進行編譯時用100替換標識符N
D.在運行時用100替換標識符N
19、 合法的八進制數是( )。
A.0
B.028
C.-077
D.01.0
20、 以下選項中不合法的用戶標識符是( )。
A._123
B.printf
C.A$
D.Dim
二、程序填空題(共18分)
41、
str是一個由數字和字母字符組成的字符串,由變量num傳人字符串長度。請補充函數proc(),該函數的功能是:把字符串str中的數字字符轉換成數字并存放到整型數組1,b中,函數返回數組bh的長度。
例如.str=”abc123de45f967”.結果為:1234567。
注意:部分源程序給出如下。
請勿改動main()函數和其他函數中的任何內容.僅在函數proc()的橫線上填入所編寫的若干表達式或語句。
試題程序:
#include
#define M 80
int bb[M];
int proc(char str[].int bh[],int num)
{
int i.n=0;
for(i=0;i {
if( 【1】 )
{
bb[n]=【2】;
n++:
)
return 【3】 ;
}
void main()
{
char str[M];
int num=0.n,i:
printf(”Enter a string:n”);
gets(str);
while(str[num])
num++o
n=proc(str,bb,num);
prinlf(”\nbb=”);
for(i=0;i printf(”%d”,bb[i]);
)
三、程序改錯題(共24分)
42、
下列給定程序中函數proc的功能是:取出長整型變量s中偶數位上的數,依次構成一個新數放在t中。例如,當s中的數為123456789時,t中的數為2468。請修改程序中的錯誤,使它能得出正確的結果。
注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。
試題程序:
#include
#include
#include
//****found****
void proc(1ong s,long t)
{long s1=10;
s/=10:
*t=s;
//****found****
while(s<0)
{ s=s/100;
*t=s*s1+*t;
s1=s1*10:
}
void main()
{long S,t;
system(”CLs”);
printf(”\nPlease enter s:”);
scanf(”%ld”,&s);
proc(s,&t):
printf(”The result is:%ld\\n”,t);
}
【計算機等級c語言程序設計試題】相關文章:
計算機C語言試題及答案08-10
計算機等級考試二級C語言考點08-26
2017年計算機等級考試C語言常見考點08-30
全國計算機c語言程序設計題庫201708-28
C語言程序設計學習技巧08-30
2017年全國計算機c語言試題及答案08-28