第1題
C語言源程序文件經(jīng)過C編譯程序編譯后生成的目標(biāo)文件的后綴為( )。
.exe
.c
.obj
.bas
第2題
若以下變量均是整型,且num=sum=7;則計算表達式sum=num++,sum++,++num后sum的值為( )。
7
8
9
10
第3題
已知字符'A'的ASCⅡ代碼值是65,字符變量c1的值是'A',c2的值是'D'。執(zhí)行語句printf("%d,%d",c1,c2-2);后,輸出結(jié)果是( )。
65,66
65,68
A,68
A,B
第4題
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",a,b); }
該程序的輸出結(jié)果是( )
a=1,b=1
a=1,b=0
a=2,b=2
a=2,b=1
第5題
下列程序的輸出為( )。
void main() { int y=10; while(y--); printf("y=%d\n",y); }
y=-1
y=0
y=1
while構(gòu)成無限循環(huán)
第6題
int a[10];合法的數(shù)組元素的最小下標(biāo)值為( )。
1
0
第7題
下述程序的輸出結(jié)果是( )。
void prt(int *x) { printf("%d",++*x); } main() { int y=30; prt(&y); }
32
30
29
31
第8題
file1.c中有命令,#include <file2.c>,若file2.c中有全局靜態(tài)變量a,則( )。
a在file1.c中應(yīng)用extern說明
a在file1.c中有效,不必用extern說明
a在file1.c中不生效
a在file1.c和file2.c中均不生效
第9題
設(shè)有如下函數(shù)定義:
int f(char *s) { char *p=s; while(*p!='\0') p++; return (p-s); }
如果在主程序中用下面的語句調(diào)用上述函數(shù),則輸出結(jié)果是( )。
printf("%d\n",f("goodbye!"));
3
6
第10題
下面說法中錯誤的是( )。
共用體變量的地址和它各成員的地址都是同一地址
共用體內(nèi)的成員可以是結(jié)構(gòu)變量,反之亦然
函數(shù)可以返回一個共用體變量
在任一時刻,共用體變量的各成員只有一個有效
第11題
C語言本身沒有輸入輸出語句。
正確
錯誤
第12題
關(guān)系運算符 <= 與 == 的優(yōu)先級相同。
第13題
scanf函數(shù)的一般格式為:scanf(格式控制字符串,輸入表列);。
第14題
C語言本身不提供輸入輸出語句,輸入和輸出操作是由函數(shù)來實現(xiàn)的。
第15題
條件表達式x?'a':'b'中,若x=0時,表達式的值為b。
第16題
運算符的級別由高向低依次為賦值運算符->關(guān)系運算符->算術(shù)運算符->邏輯運算符->!。
第17題
引用數(shù)組元素時,下標(biāo)可以是整型表達式或整型常量。
第18題
do-while循環(huán)由do開始,while結(jié)束,在while(表達式)后面不能加分號。
第19題
C語言數(shù)組的下標(biāo)可以從-1開始。
第20題
給數(shù)組賦初值時,初值的個數(shù)可以小于所定義的元素的個數(shù)。
第21題
定義一維數(shù)組的形式為:類型說明數(shù)組名[表達式],其中表達式可以是正整型常量表達式、字符常量表達式。
第22題
若在程序某處定義了某全局變量,但不是程序中的所有函數(shù)中都可使用它。
第23題
C語言所有函數(shù)都是外部函數(shù)。
第24題
在C語言中,程序總是從第一個函數(shù)開始執(zhí)行,最后一個函數(shù)結(jié)束。
第25題
在定義宏時,在宏名與帶參數(shù)的括弧之間不應(yīng)加空格。
第26題
C語言中,_____是程序的基本組成部分。
第27題
設(shè)(k=a=5,b=3,a*b),則表達式的值為_____。
第28題
已知a=13,b=6,a%b的十進制數(shù)值為_____。
第29題
若有以下定義,則計算表達式y(tǒng)+=y-=m*=y后的y值是_____。
int m=5,y=2;
第30題
執(zhí)行下面兩個語句,輸出的結(jié)果是_____。
char c1=97,c2=98; printf("%d %c",c1,c2);
第31題
當(dāng)a=1,b=2,c=3時,執(zhí)行以下程序段后a=_____。
if (a>c); { b=a; a=c; c=b; }
第32題
當(dāng)a=1,b=2,c=3時,執(zhí)行以下程序段后b=_____。
if (a>c) { b=a; a=c; c=b; }
第33題
int x=2,y=3,z=4;
則表達式x+(y>!z)的值為_____。
第34題
設(shè)x和y均為int型變量,則以下for循環(huán)中的scanf語句最多可執(zhí)行的次數(shù)是_____。
for (x=0,y=0;y!=123&&x<3;x++) { scanf ("%d",&y); }
第35題
static int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
其中a[1][2]的值為_____。
第36題
字符串比較的庫函數(shù)是_____,只寫函數(shù)名即可。
第37題
函數(shù)不可以進行嵌套定義,但可以進行嵌套_____。
第38題
預(yù)處理命令行都必須以_____號開始。
第39題
將函數(shù)funl的入口地址賦給指針變量p的語句是_____。
第40題
設(shè)有以下共用體類型說明和變量定義,則變量a在內(nèi)存所占字節(jié)數(shù)是 _____。
union stud { char num[6]; float s[4]; double ave; } a,*p;
第41題
功能:用函數(shù)將第2個串連接到第1個串之后,不允許使用strcat函數(shù)。
#include<stdio.h> void len_cat(char c1[],char c2[]) { int i,j; for(_____1_____); for(_____2_____) { _____3_____ } _____4_____ } void main() { char s1[80],s2[40]; void TestFunc(); gets(s1);gets(s2); len_cat(s1,s2); printf("string is: %s\n",s1); TestFunc(); } void TestFunc() { FILE *IN,*OUT; int m,n; int i[2][200]; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read File Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write File Error"); } for(n=0;n<2;n++) fscanf(IN,"%s",i[n]); len_cat(i[0],i[1]); fprintf(OUT,"%s\n",i[0]); fclose(IN); fclose(OUT); }
第42題
功能:編寫函數(shù)fun其功能是:根據(jù)整型形參m,計算如下公式的值:y=1/2!+1/4!+...+1/m!(m是偶數(shù))
#include<stdio.h> double fun(int m) { _____1_____ int i,j; double s=1; for(_____2_____) { for(_____3_____) _____4_____ _____5_____ } _____6_____ } void main() { int n; void TestFunc(); printf("Enter n: "); scanf("%d", &n); printf("\nThe result is %1f\n", fun(n)); TestFunc(); } void TestFunc() { FILE *IN,*OUT; int t; double o; int c; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read File Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write File Error"); } for(c=1;c<=5;c++) { fscanf(IN,"%d",&t); o=fun(t); fprintf(OUT,"%lf\n",o); } fclose(IN); fclose(OUT); }
選擇題(1 - 25題,共計25分) 填空題(26 - 42題,共計75分)