1.s1和s1已正確定義并分別指向兩個字符串,若要求:當s1所指串大于s2所指串時,執(zhí)行語句S;則以下選項中正確的是()
A)if(s1>s2)S;
B)if(strcmp(s1,s2))S;
C)if(strcmp(s2,s1)>0)S;
D)if(strcmp(s1,s2)>0)S;
2.設(shè)有定義語句intx[6]={2,4,6,8,5,7},*p=x,i;要求依次輸出x數(shù)組6個元素中的值,不能完成此操作的語句是()
A)for(i=0;i<6;i++)printf("%2d",*(p++));
B)for(i=0;i<6,i++)printf("%2d",*(p+i));
C)for(i=0;i<6;i++)printf("%2d",*p++);
D)for(i=0;i<6;i++)printf("%2d",(*p)++);
3.以下程序的輸出結(jié)果是()
#include
main()
{int a[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL;
*q=*(q+5);
printf("%d%d\n",*p,*q);
}
A)運行后報錯
B)66
C)611
D)510
4.設(shè)有以下定義和語句int a[3][2]={1,2,3,4,5,6},*p[3];
p[0]=a[1];
則*(p[0]+1)所代表的數(shù)組元素是()
A)a[0][1]
B)a[1][0]
C)a[1][1]
D)a[1][2]
5.以下程序的輸出結(jié)果是()
main()
{char str[][10]={"china","Beijing"},*p=str;
printf("%s\n",p+10);
}
A)China
B)Beijing
C)ng
D)ing
6.Examda提示: 以下程序的輸出結(jié)果是()
main()
{char s[]="ABCD",*p;
for(p=s+1;p }
A)ABCD
BCD
CD
D
B)A
B
C
D
C)B
C
D
D)BCD
CD
D
7.在函數(shù)調(diào)用過程中,如果函數(shù)funA調(diào)用了函數(shù)funB,函數(shù)funB Examda提示: 又調(diào)用了函數(shù)funA,則()
A)稱為函數(shù)的直接遞歸調(diào)用
B)稱為函數(shù)的間接遞歸調(diào)用
C)稱為函數(shù)的循環(huán)調(diào)用
D)C語言中不允許這樣的遞歸調(diào)用
8.已有定義:int i,a[10],*p;,則合法的賦值語句是()
A)p=10;
B)p=a[5]
C)p=a[2]+2;
D)p=a+2;
9.以下敘述中正確的是()
A)局部變量說明為static的存儲類,其生存期將得到延長
B)全局變量說明為static存儲類,其作用域?qū)⒈粩U大
C)任何存儲類的變量在未賦初值時,其值都是不確定的
D)形參可以使用的存儲類說明符與局部變量完全相同
10.設(shè)有定義語句:char c1=2,c2=2;,則以下表達式中值為零的是()
A)c1^c2
B)c1&c2
C)~c2
D)c1|c2
答案:1.D 2.D 3.A 4.C 5.B 6.D 7.B 8.D 9.A 10.A
A)if(s1>s2)S;
B)if(strcmp(s1,s2))S;
C)if(strcmp(s2,s1)>0)S;
D)if(strcmp(s1,s2)>0)S;
2.設(shè)有定義語句intx[6]={2,4,6,8,5,7},*p=x,i;要求依次輸出x數(shù)組6個元素中的值,不能完成此操作的語句是()
A)for(i=0;i<6;i++)printf("%2d",*(p++));
B)for(i=0;i<6,i++)printf("%2d",*(p+i));
C)for(i=0;i<6;i++)printf("%2d",*p++);
D)for(i=0;i<6;i++)printf("%2d",(*p)++);
3.以下程序的輸出結(jié)果是()
#include
main()
{int a[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL;
*q=*(q+5);
printf("%d%d\n",*p,*q);
}
A)運行后報錯
B)66
C)611
D)510
4.設(shè)有以下定義和語句int a[3][2]={1,2,3,4,5,6},*p[3];
p[0]=a[1];
則*(p[0]+1)所代表的數(shù)組元素是()
A)a[0][1]
B)a[1][0]
C)a[1][1]
D)a[1][2]
5.以下程序的輸出結(jié)果是()
main()
{char str[][10]={"china","Beijing"},*p=str;
printf("%s\n",p+10);
}
A)China
B)Beijing
C)ng
D)ing
6.Examda提示: 以下程序的輸出結(jié)果是()
main()
{char s[]="ABCD",*p;
for(p=s+1;p
A)ABCD
BCD
CD
D
B)A
B
C
D
C)B
C
D
D)BCD
CD
D
7.在函數(shù)調(diào)用過程中,如果函數(shù)funA調(diào)用了函數(shù)funB,函數(shù)funB Examda提示: 又調(diào)用了函數(shù)funA,則()
A)稱為函數(shù)的直接遞歸調(diào)用
B)稱為函數(shù)的間接遞歸調(diào)用
C)稱為函數(shù)的循環(huán)調(diào)用
D)C語言中不允許這樣的遞歸調(diào)用
8.已有定義:int i,a[10],*p;,則合法的賦值語句是()
A)p=10;
B)p=a[5]
C)p=a[2]+2;
D)p=a+2;
9.以下敘述中正確的是()
A)局部變量說明為static的存儲類,其生存期將得到延長
B)全局變量說明為static存儲類,其作用域?qū)⒈粩U大
C)任何存儲類的變量在未賦初值時,其值都是不確定的
D)形參可以使用的存儲類說明符與局部變量完全相同
10.設(shè)有定義語句:char c1=2,c2=2;,則以下表達式中值為零的是()
A)c1^c2
B)c1&c2
C)~c2
D)c1|c2
答案:1.D 2.D 3.A 4.C 5.B 6.D 7.B 8.D 9.A 10.A