官方網(wǎng)站如何做外貿seo推廣招聘
Ⅰ? 易錯題
1.設有double p;,為變量p聲明一個引用名稱rp,則定義語句為?double& rp=p;
2.已知‘A’一‘Z’的ASCII碼為65—90,當執(zhí)行“char ch=14*5+2;cout<<ch<<endl;”語句序列后得到的輸出結H? ?,72對應ASCII碼中的字符’H’
3.變量分為全局和局部兩種,____變量沒有賦初值時,其值是不確定的.?局部變量沒有賦初值時,其值是不確定的。
4.?如果要把PI聲明為值為3.14159類型為雙精度實數(shù)的符號常量,該聲明語句是___。
可以使用C++中的const關鍵字來聲明一個符號常量,其語法為:const 數(shù)據(jù)類型 常量名 = 常量值;
const double PI = 3.14159;
5.?現(xiàn)在有以下語句: ?? struct MyBitType ??? {??char a[3]; ?????? int b[3]; ?????? float c[2]; ????? };//int占四個字節(jié) ??? int sz=sizeof(MyBitType); 則執(zhí)行后,變量sz的值將得到(?? )。 A、16? B、8?? ? ?C、27????D、31
執(zhí)行后,變量sz的值將得到B、8。 MyBitType中有三個char類型,占用3個字節(jié);三個int類型,占用12個字節(jié);兩個float類型,占用8個字節(jié)。所以總共占用23個字節(jié),但由于內存對齊的原因,需要將其舍入為8的倍數(shù),所以sz的值為8。
6.結構體變量S實際所占內存的大小為(? ? )字節(jié)。 A、sizeof(S)?B、strlen(S) C、結構體中最長成員的長度?????? D、結構體中最短成員的長度
答案是A、sizeof(S)。在C語言中,可以使用sizeof運算符來計算結構體變量所占的內存大小,其返回值單位為字節(jié)。而strlen函數(shù)是用來計算字符串長度的,不適用于計算結構體變量大小。結構體中最長成員的長度和最短成員的長度也不能代表整個結構體變量所占內存的大小。
7.在函數(shù)說明時,下列( )項是不必要的。 A、函數(shù)的類型 B、函數(shù)參數(shù)類型和名字 C、函數(shù)名字 D、返回值表達式
在函數(shù)說明時,不必要提供函數(shù)的類型,因為已經(jīng)確定為函數(shù)類型。因此選項A不必要。
8.下列標識符中,( )不是局部變量。 A、register類 B、外部static類 C、auto類 D、函數(shù)形參
A、register類、C、auto類和D、函數(shù)形參都是局部變量,只存在于它們所在的函數(shù)或代碼塊中。
B、外部static類則是全局變量,但是其作用域被限定在定義該變量的文件內,不同于一般的全局變量。
9.C++中的組合符號是“::”,它被稱為作用域解析符,用于指定命名空間、類、結構體、枚舉、函數(shù)等的作用域。具體來說,使用“::”可以訪問命名空間中的成員,類中的靜態(tài)成員,類的成員函數(shù)和全局作用域中的函數(shù)。
例如,如果有一個名為MyNamespace的命名空間,其中包含一個名為MyFunction的函數(shù)和一個名為MyClass的類,我們可以使用“::”來訪問它們的作用域:
MyNamespace::MyFunction(); // 訪問命名空間中的函數(shù)
MyNamespace::MyClass::MyStaticMember; // 訪問類中的靜態(tài)成員
MyNamespace::MyClass myObject; // 創(chuàng)建類對象
myObject.MyMemberFunction(); // 調用對象的成員函數(shù)
Ⅱ? ? C語言基礎選擇題精選?
1、以下說法中正確的是(C)(2分)
A、C語言程序總是從第一個的函數(shù)開始執(zhí)行
B、在C語言程序中,要調用的函數(shù)必須在main()函數(shù)中定義
C、C語言程序總是從main()函數(shù)開始執(zhí)行
D、C語言程序中的main()函數(shù)必須放在程序的開始部分
?2、一個算法應該具有“確定性”等五個特性,下面對另外4個特性的描述中錯誤的是(B)(2分)
A、有零個或多個輸入 ?????
B、有零個或多個輸出
C、有窮性
D、可行性
?3、以下選項中,不合法常量的是 (B)(2分)
A、1.234e04 ?B、1.234e0.4 ?
C、1.234e+4 ?D、1.234e0
?4、C語言中最簡單的數(shù)據(jù)類型包括(B)(2分)
A、整型、實型、邏輯型 ???B、整型、實型、字符型
C、整型、字符型、邏輯型 ??D、整型、實型、邏輯型、字符型 ?
5、能正確表示邏輯關系:“10≥=a≥=0”的C語言表達式是 (D)(2分)
A、 10>=a>=0 ?B、 a>=0 and a<=10
C、 a>=0||a<=10 D、 a>=0&&a<=10
?6、設a和b均為double型變量,且a=5.5、b=2.5,則表達式(int)a+b/b的值是(D)(2分)
A、 6.500000 ??????B、 6 ????????
C、 5.500000 ??????????D、 6.000000
?7、x、y、z被定義為int型變量,若從鍵盤給x、y、z輸入數(shù)據(jù),正確的輸入語句是 (B)(2分)
A、 INPUT x、y、z; ?B、 scanf("%d%d%d",&x,&y,&z); ?
C、 scanf("%d%d%d",x,y,z); ?D、 read("%d%d%d",&x,&y,&z); ?
8、若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;則執(zhí)行后,c3中的值是(A)(2分)
A、 0 ?B、 0.5 ?
C、 1 ?D、 2
?9、設char ch='A';則ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是( ?B ??)。 ?????(2分)
A、A B、a
C、Z D、z
?10、設 int ?x=1, y=1; 表達式(!x||y--)的值是( ?B ?)。(2分)
A、0 ?B、1 C、2 D、-1
11.執(zhí)行程序段int a=-1,b=4,k;k=(++a<0)&&!(b--<=0);printf(“%d %d %d\n”,k,a,b);后的輸出結果是( ?D ) 。 ?????????????(2分)
A、1 0 4 ?B、1 0 3 ?
C、0 0 3 ?D、0 0 4 ?
12、程序段 ??int ?x=3; ??do ?{ printf(“%d”,x-=2); ?} ??while (!(--x));的輸出結果是( ??C ?)。(2分)
A、1 ?B、3 ?0 C、1 ?-2 D、死循環(huán)
15、語句int k=1; while (k++<10);執(zhí)行后,變量k的值是( ?B )。(2分)
A、10 ?B、11 C、9 ?D、無限循環(huán),值不定
?
16、程序 int i,sum; ?for(i=1;i<=3;sum++)sum+=i; ??printf(“%d\n”,sum); 的執(zhí)行結果是( ?C ??)。(2分)
A、6 ?B、3 C、不確定 D、0
?
17、以下對二維整形數(shù)組a的正確說明是( ??C)。(2分)
A、int a[3][]; B、float a(3,4);
C、double a[1][4]; D、float a(3)(4)
?
18、若已定義char s[10];在下面表達式中不能表示s[1]的地址的是(B ??)。 (2分)
A、s+1 ?B、s++ ?
C、&s[0]+1 ?D、&s[1]
19、對兩個字符數(shù)組a和b進行初始化char a[ ]="ABCDEF"; ?char ?b[ ]={'A','B','C','D','E','F'}; 則以下敘述正確的是(D ??) 。 (2分)
A、a與b數(shù)組完全相同 B、a與b長度相同 ??
C、a和b中都存放字符串 D、a數(shù)組比b數(shù)組長度長
?
20、有說明:char *language[]={"FORTRAN","BASIC","PASCAL","JAVA","C"};則表達式*language[1]>*language[2]比較的是( A )
A、字符B和字符P ?????????????B、字符串FORTRAN和字符串BASIC
C、字符F和字符B ?????????????D、字符串BASIC和字符串PASCAL
21、C語言程序由函數(shù)組成,它的( ?B)。(2分)
A、主函數(shù)必須在其它函數(shù)之前,函數(shù)內可以嵌套定義函數(shù)
B、主函數(shù)可以在其它函數(shù)之后,函數(shù)內不可以嵌套定義函數(shù)
C、主函數(shù)必須在其它函數(shù)之前,函數(shù)內不可以嵌套定義函數(shù)
D、主函數(shù)必須在其它函數(shù)之后,函數(shù)內可以嵌套定義函數(shù)
?22、在C語言中,若需一變量只在本文件中所有函數(shù)使用,則該變量的存儲類別是( D )。(2分)
A、extern ?B、registerC、auto D、static
?23、已知:int a[]={1,2,3,4,5,6},*p=a;則值為3的表達式是 ( ??A ?)。 ???????????.(2分)
A、p+=2,*(p++) ????????B、p+=2,*++p ???????
C、p+=3,*p++ ??????D、p+=2,++*p
?
24、設有說明語句“struct stu{ ?int a; ?float b;}stutype;”,則敘述不正確的是(C )(2分)
A、struct是結構體類型的關鍵字。 B、struct stu是用戶定義的結構體類型。
C、stutype是用戶定義的結構體變量名。 D、a和b都是結構體變量。
25、下列關于文件指針的描述中,錯誤的是(D )(2分)
A、文件指針是由文件類型FILE定義的。 B、文件指針是指向內存某個單元的地址值。
C、文件指針是用來對文件操作的標識。 D、文件指針在一個程序中只能有一個。
26、以下敘述中正確的是(B)(2分)
?A、C語言的源程序不必通過編譯就可以直接運行
?B、C語言中的每條可執(zhí)行語句最終都將被轉換成二進制的機器指令
?C、C源程序經(jīng)編譯形成的二進制代碼可以直接運行
?D、C語言中的函數(shù)不可以單獨進行編譯
27、以下敘述中正確的是 (C)(2分)
?A、用C語言實現(xiàn)的算法必須要有輸入和輸出操作
?B、用C語言實現(xiàn)的算法可以沒有輸出但必須要有輸入
?C、用C程序實現(xiàn)的算法可以沒有輸入但必須要有輸出
?D、用C程序實現(xiàn)的算法可以既沒有輸入也沒有輸出
28、C語言中, 下列字符常量合法的是(A)(2分)
?A、'\t' ?B、"A" ?C、65 ?D、A
?
29、下列關于賦值運算符的表述中,錯誤的是(C)(2分)
?A、賦值運算符優(yōu)先級高于逗號運算符
?B、賦值運算符的結合性是從左至右
C、賦值運算符是雙目運算符
?D、賦值運算符可在表達式中連用
?
31、以下不是關鍵字的是(C)(2分)
?A、continue B、char C、If D、default
32、設x,y為浮點型變量,合法賦值語句是(A)(2分)
?A、x=8+y; ??B、(float)3 ; ????C、y=(x%2)/10 ; ???D、*x=10;
?
33、已定義ch為字符型變量,以下賦值語句中錯誤的是(B)(2分)
?A、 ch='\'; ????B、 ch=62+3; ?????C、 ch=' '; ????D、 ch='\xaa';
?
38、c語言中( ?D ?)。(2分)
?A、不能使用do-while語句構成的循環(huán)
?B、do-while語句構成的循環(huán)必須用break語句才能退出
?C、do—whiLe語句構成的循環(huán),當while語句中的表達式值為非零時結束循環(huán) ???????????D、do—while語句構成的循環(huán),當while語句中的表達式值為零時結束循環(huán)
39、設j為int型變量,則for(j=10;j>3;j--) {if (j%3) ?j--; --j;--j;printf(“%d ???”,j); }的執(zhí)行結果是( ?A ?)。 ?(2分
A、7 ???4B、4 ???7 C、5 ???6D、1 ???3
?
41、以下正確的定義語句是( ?D )。(2分)
?A、int a[1][4]={1,2,3,4,5};
?B、float x[3][]={{1},{2},{3}};
C、long b[2][3]={{1},{1,2},{1,2,3}};
?D、double y[][3]={0};
43、在C語言中,引用數(shù)組元素時,其數(shù)組下標的數(shù)據(jù)類型允許是( C )。(2分)
?A、整型常量
?B、整型表達式
C、整型常量或整型表達式
?D、任何類型的表達式
?
44、若有說明:int a[][3]={1,2,3,4,5,6,7};則a數(shù)組第一維的大小是( B ?)。(2分)
?A、2? ?B、3? ? C、4? ? ?D、無確定值
int *f()表示這個函數(shù)的功能是:返回一個地址.
int(*f)():表示 這是一個函數(shù)的指針.它要指向一個函數(shù)才能有用.指向一個函數(shù)之后可以用它來代替該函數(shù).之后使用這個指針相當于使用該函數(shù).
int *a[];是一個指針數(shù)組啦...表示數(shù)組中的每一個元素都是一個指針,可以指向一個int類型的數(shù)值.
int (*a)[]這是一個指向多維數(shù)組的指針變量.
46、函數(shù)調用結束后,形式參數(shù)(C ?)。(2分)
?A、繼續(xù)占用相同大小的內存B、占用的內存減小 C、釋放內存 D、不確定
47、已知:int a,*p=&a;則下列函數(shù)調用中錯誤的是( D ???)。(2分)
?A、scanf("%d",&a) B、scanf("%d",p); C、printf("%d",a); ??D、printf("%d",p);
48、枚舉類型首元素默認值和兩個相鄰元素之間默認的差值分別是(C )(2分)
?A、1,0 B、1,1 C、0,1D、0,0
?
49、語句“fseek(fp,100L,2);”的功能是(C )(2分)
?A、將fp所指向文件的位置指針移至距文件首100個字節(jié)。 ?
B、將fp所指向文件的位置指針移至距文件尾100個字節(jié)。
??C、將fp所指向文件的位置指針移至距當前位置指針的文件首方向100個字節(jié)。 ?
D、將fp所指向文件的位置指針移至距當前位置 指針的文件尾方向100個字節(jié)。
50、以下敘述錯誤的是(D)(2分)
?A、一個C程序總是從main函數(shù)開始執(zhí)行的;
?B、C程序書寫格式自由,一行內可以寫幾個語句,一個語句可以分寫在多行上;
?C、每個語句和數(shù)據(jù)定義的最后必須有一個分號;
?D、C語言本身有輸入輸出語句。
52、下面不正確的字符串常量是(A)(2分)
?A、 'abc' ???B、 "12'12" ?????C、 "0" ?????D、 " ?"
53、已知各變量的類型說明如下:int k,a,b=1; unsigned long w=5;則以下不符合C語言語法的表達式是(A)(2分)
?A、 k=b+2=w ???B、 w+= -2 ??C、 k=(a=2,b=3,a+b) ????D、 a+=a-=(b=4)*(a=3)
?
54、執(zhí)行下列語句int x=10,y=3;printf("%d\n",y=x/y);后的輸出是(C)(2分)
?A、 0 B、 1 ?C、 3 D、 不確定的值
55、若執(zhí)行以下程序段: int ?a=0, b=0, c=0;c=(a-=a-5), (a=b, b+3); printf(“%d,%d,%d\n”,a, b, c); 其輸出結果是(B)(2分)
?A、0,0,-10 B、0,0,5 ??C、-10,3,-10 ?D、3,3,-10
?
58、條件運算符的結合方向是( ?A ??)。(2分)
?A、自右至左; B、自左至右; C、任意; D、前后順序;
59、對于程序段int x=-1; do { x=x*x; }while(!x);說法正確的是( ?C ?)。(2分)
?A、是死循環(huán) B、循環(huán)執(zhí)行兩次 C、循環(huán)執(zhí)行一次 ?D、有語法錯誤
?
?
62、以下對一維整形數(shù)組a進行正確初始化的語句是( ?C )。(2分)
?A、int a[10]=(0,0,0,0,0); ?B、int a[10]={}; C、int a[]={0};D、int a[10]={10*1};
64、以下能對二維整形數(shù)組a進行正確初始化的語句是( ?D )。(2分)
?A、int a[2][3]={0}; ???????????????????????????B、int a[][3]={{1,2},{0}};
?C、int a[2][3]={{1,2},{3,4},{5,6}}; ????D、int a[][3]={1,2,3,4,5,6};
?
65、程序char c[5]={‘a’,’b’,’\0’,’c’c,’\0’}; printf(“%s”,c);}的運行結果是( D ?)。(2分)
?A、'a''b'B、ab ?C、ab cD、ab
?
67、在定義語句int *f();中,標識符f代表的是( D )。(2分)
?A、一個用于指向整型數(shù)據(jù)的指針變量
?B、一個用于指向一維數(shù)組的行指針
?C、一個用于指向函數(shù)的指針變量
?D、一個返回值為指針型的函數(shù)名
68、設p1和p2是指向同一個字符串的指針變量,e為字符變量,則以下不能正確執(zhí)行的賦值語句是(B)。(2分)
?A、c=*p1+*p2;B、p2=c C、p1=p2 D、c=*p1*(*p2);
69、C語言結構體類型變量在程序執(zhí)行期間(A )(2分)
?A、所有成員一直駐留在內存中。
?B、只有一個成員駐留在內存中。 ??????????????????????
?C、部分成員駐留在內存中。
?D、沒有成員駐留在內存中。
85、判斷字符串a是否大于b,應當使用( D ?)。(2分)
?A、if (a>b)B、if (strcmp(a,b)) C、if (strcmp(b,a)>0)D、if (strcmp(a,b)>0)
?
?
86、若已定義char s[2][40]={"china","English"};則在下面表達式中能表示字符‘E’的地址的是( B ?)。 (2分)
?A、&s[2][1] ??????B、s[1] ????C、&s[1]D、&(s[1]+1)
87、關于局部變量,下列說法正確的是 ( ?D ??)。(2分)
?A、 定義該變量的程序文件中的函數(shù)都可以訪問。
?B、 定義該變量的函數(shù)中的定義處以下的任何語句都可以訪問。
?C、 定義該變量的復合語句的定義處以下的任何語句都可以訪問。 ?D、 局部變量可用于函數(shù)之間傳遞數(shù)據(jù)。
?
88、程序char ?a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5; printf(“%d”,*--p);的輸出結果是( ?????C ???)。(2分)
?A、非法 ??B、a[4]的地址 ???????C、5 ?????????????D、3
?
90、下列正確定義一個文件指針pm的語句是(C )(2分)
?A、FILE pm;B、file *pm; C、FILE *pm;D、file pm;
?
94、以下敘述中正確的是( C)(2分)
?A、在C程序中,無論是整數(shù)還是實數(shù),只要在允許的范圍內都能準確無誤的表示。 ?B、C程序由主函數(shù)組成
C、C程序由函數(shù)組成
?D、C程序由函數(shù)和過程組成
100、以下關于運算符優(yōu)先順序的描述中正確的是( ?C ???)。(2分)
?A、關系運算符<算術運算符<賦值運算符<邏輯與運算符
?B、邏輯與運算符<關系運算符<算術運算符<賦值運算符
C、賦值運算符<邏輯與運算符<關系運算符<算術運算符
?D、算術運算符<關系運算符<賦值運算符<邏輯與運算符
?
108、若有char a[80],b[80];則正確的是( ?D )。 (2分)
?A、puts(a,b);B、printf("%s,%s",a[ ],b[ ]); C、putchar(a,b); D、puts(a);puts(b);
?
109、若已定義char s[10];在下面表達式中不能表示s[1]的地址的是( B ?)。 (2分)
?A、s+1 B、s++ ?C、&s[0]+1 D、&s[1]
?
?
110、若有說明:int ?a[3][4];則數(shù)組a中各元素( C ?)。(2分)
?A、可在程序的運行階段得到初值0
?B、可在程序的編譯階段得到初值0 C、不能得到確定的初值
?D、可在程序的編譯或運行階段得到初值0
?
112、有程序 char s[]=”ABCD”, *P; for(p=s+1; p<s+4; p++) ?printf (“%s ”,p); 程序的輸出結果是( ??????D ???) 。 ????????????????????(2分)
?A、ABCD BCD CD D B、A B C D ???C、B C D ????????????D、BCD CD D
?
Ⅲ? ? 建議?
刷題過程中可對照課本復習鞏固相關知識點.