需要答案請加QQ:296856541 微信:aopopengzs
可做奧鵬全部院校在線作業(yè)、離線作業(yè)、畢業(yè)論文
《高級語言程序設(shè)計(jì)基礎(chǔ)X》在線平時(shí)作業(yè)3
試卷總分:100 得分:100
一、單選題 (共 25 道試題,共 100 分)
1.若有定義:int x[10], *p=x;,則*(p+5)表示( )。
A.數(shù)組元素x[5]的地址
B.數(shù)組元素x[5]的值
C.數(shù)組元素x[6]的地址
D.數(shù)組元素x[6]的值
E.選項(xiàng)內(nèi)容11
F.選項(xiàng)內(nèi)容11
G.選項(xiàng)內(nèi)容11
2.下面程序的輸出結(jié)果為( )。 main( ) { int a=1,b=0; switch(a) { case 1: switch (b) { case 0: printf("**0**"); break; case 1: printf("**1**"); break; } case 2: printf("**2**"); break; }}
A.**0**
B.**0****2**
C.**0****1****2**
D.有語法錯(cuò)誤
3.以下對指針變量的操作中,不正確的是( )。
A.int p, *q; q=&p;
B.int *p, *q; q=p=NULL;
C.int a=5, *p; *p=a;
D.int a=5, *p=&a, *q=&a; *p=*q;"
4.設(shè)有一段程序: int *var,a; a=100;var=&a;a=*var+10; 執(zhí)行上面程序段后a的值為( )。
A.120
B.110
C.100
D.90
5.若調(diào)用fputc函數(shù)輸出字符成功,則函數(shù)的返回值是( )。
A.輸出的字符
B.-1
C.0
D.EOF
6.當(dāng)說明一個(gè)共用體變量時(shí)系統(tǒng)分配給它的內(nèi)存是( )。
A.共用體中第一個(gè)成員所需內(nèi)存量
B.共用體中最后一個(gè)成員所需內(nèi)存量
C.共用體成員中占內(nèi)存量最大者所需的容量
D.共用體中各成員所需內(nèi)存量的總和
7.下面程序段的輸出結(jié)果是( )。 int a=023;printf("%d\n",--a);
A.23
B.17
C.18
D.24
8.對兩個(gè)數(shù)組a和b進(jìn)行如下初始化 char a[]="ABCDEF"; char b[]={'A','B','C','D','E','F'}; 則以下敘述正確的是( )。
A.a與b數(shù)組完全相同
B.a與b長度相同
C.a和b中都存放字符串
D.a數(shù)組比b數(shù)組長
9.判斷char型變量c1是否為大寫字母的正確表達(dá)式是( )。
A.A'<=c1<='Z'
B.(c1>='A')&(c1<='Z')
C.(c1>='A')&&(c1<='Z')
D.('A'=c1)
10.下程序( )。 main( ) { int x1=3, x2=0, x3=0; if (x1=x2+x3) printf("* * * *"); else printf("# # # #"); }
A.輸出:* * * *
B.輸出:# # #
C.#存在語法錯(cuò)誤
D.無輸出結(jié)果
11.若有定義:int x[10], *p=x;,則*(p+5)表示( )。
A.數(shù)組元素x[5]的地址
B.數(shù)組元素x[5]的值
C.數(shù)組元素x[6]的地址
D.數(shù)組元素x[6]的值
E.選項(xiàng)內(nèi)容11
F.選項(xiàng)內(nèi)容11
12.若有說明:int a[][4]={0,0};則下面不正確的敘述是( )。
A.數(shù)組a中的每個(gè)元素都可得到初值0
B.二維數(shù)組a的第1維大小為1
C.因?yàn)槎S數(shù)組a中第二維大小的值除以初值個(gè)數(shù)的商為1,故數(shù)組a的行數(shù)為1
D.只有數(shù)組元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
13.若有語句: char s1[ ]="Shenyang", s2[10],*s3, *s4="NEU_soft"; 則對庫函數(shù)strcpy調(diào)用正確的是( )。
A.strcpy(s1, s4);
B.strcpy(s2, s4);
C.strcpy(s3, s1);
D.strcpy(s4, s1);"
14.若二維數(shù)組a有m列,則計(jì)算任一元素a[i][j]在數(shù)組中位置的公式為( )。(假設(shè)a[0][0]位于數(shù)組的第一個(gè)位置上。)
A.i*m+j
B.j*m+i
C.i*m+j-1
D.i*m+j+1
15.以下程序段的運(yùn)行結(jié)果是( )。 char a[ ]="program", *p; p=a; while (*p!='g') { printf("%c", *p-32); p++; }
A.PROgram
B.PROGRAM
C.PRO
D.proGRAM
16.若有以下程序段: for (m=1; m<=100; m++) { scanf("%d", &y); if (y<0) continue; printf("%3d", m); }正確的描述是( )。
A.當(dāng)y<0時(shí)整個(gè)循環(huán)結(jié)束
B.y>=0時(shí)什么也不輸出
C.printf函數(shù)永遠(yuǎn)也不執(zhí)行
D.最多允許輸出100個(gè)非負(fù)整數(shù)
17.下列程序的輸出結(jié)果是( )。 #include void fun(); void main() { int x=1; if(x= =1) { int x=2; printf(“%d”,++x); } void fun() { printf(“%d”,x++);}
A.2,1,1
B.1,2,1
C.2,2,2
D.2,2,1"
18.以下程序段的執(zhí)行結(jié)果是( )。 int x=-3; do { printf("%d\n", x++); }while(!x);
A.-3
B.-2
C.-1
D.陷入死循環(huán)
19.下面程序( )。(每行程序前的數(shù)字為行號) 1 main{} 2 { 3 float a[10]={0.0}; 4 int i; 5 for(i=0;i<3;i++) scanf(%d",&a[i]); 6 for(i=1;i<10;i++) a[0]=a[0]+a[i]; 7 printf("%f\n",a[0]); 8 }
A.沒有錯(cuò)誤
B.第3行有錯(cuò)誤
C.第5行有錯(cuò)誤
D.第7行有錯(cuò)誤
20.若a、b、c均為int型變量,則執(zhí)行以下程序段后的輸出結(jié)果為( )。 b=(a=10,a+5,c=10); printf("a=%d,b=%d,c=%d\n",a,b,c); c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d\n",a,b,c);
A.a=10,b=15,c=10a=10,b=5,c=10
B.a=10,b=10,c=10a=10,b=5,c=10
C.a=10,b=10,c=10a=10,b=5,c=15
D.a=10,b=10,c=10a=10,b=5,c=5
21.C語言允許函數(shù)值類型的缺省定義,此時(shí)該函數(shù)值隱含的類型是( )。
A.float
B.int
C.long
D.double
22.以下程序的運(yùn)行結(jié)果是( )。 # include "stdio.h" main() { struct date { int y,m,d;} today; printf("%d\n", sizeof(struct date));}
A.2
B.3
C.6
D.出錯(cuò)
23.C語言的編譯系統(tǒng)對宏命令的處理是( )。
A.在對源程序中其它成分正式編譯之前進(jìn)行的
B.和C程序中的其它語句同時(shí)進(jìn)行的
C.在程序連接時(shí)進(jìn)行的
D.在程序運(yùn)行時(shí)進(jìn)行的
24.如果在一個(gè)函數(shù)中的復(fù)合語句中定義了一個(gè)變量,則以下正確的說法是( )。
A.該變量只在該復(fù)合語句中有效
B.該變量在該函數(shù)中有效
C.該變量在本程序范圍內(nèi)有效
D.該變量為非法變量
25.下列關(guān)于C語言的敘述錯(cuò)誤的是( )。
A.大寫字母和小寫字母的意義相同
B.不同類型的變量可以在一個(gè)表達(dá)式中
C.在賦值表達(dá)式中等號(=)左邊的變量和右邊的值可以是不同類型
D.同一個(gè)運(yùn)算符號在不同的場合可以有不同的含義