

1、单选题:
若有说明:int *p1, *p2,m=5,n;以下均是正确赋值语句的选项是 。
选项:
A: p1=&m; p2=&p1;
B: p1=&m; *p2=*p1
C: p1=&m; p2=p1;
D: p1=&m; *p1=*p2;
答案: 【 p1=&m; p2=p1;】
2、单选题:
以下叙述中正确的是 。
选项:
A: 指针定义后,可以指向同类型的任何变量。
B: 指针定义后,可以指向任何类型变量。
C: 指针定义后,可以用整型数据为指针初始化。
D: 指针定义后,只能指向一个变量。
答案: 【 指针定义后,可以指向同类型的任何变量。】
3、单选题:
变量的指针,其含义是指该变量的 。
选项:
A: 值
B: 地址
C: 名
D: 一个标志
答案: 【 地址】
1、单选题:
如果有定义int a[30], *p=a; 则数组a中下标为i的元素的地址为 。
选项:
A: p+i*2
B: p+(i-1)*2
C: p+(i-1)
D: p+i
答案: 【 p+i】
2、单选题:
若有如下定义,则________是对数组元素的正确的引用。int a[10] , *p=a;
选项:
A: *&a[10]
B: *&a[0]
C: *(p-11)
D: *(a+11)
答案: 【 *&a[0]】
3、单选题:
若有定义:int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;则数值不为3的表达式是 。
选项:
A: x[3]
B: p1=x+3,*p1++
C: p1=x+2,*(p1++)
D: p1=x+2,*++p1
答案: 【 p1=x+2,*(p1++)】
1、单选题:
下面函数的功能是 。strlen1(char *s )
{ char *p=s;
while(*p!=‘’) p++;
return p-s;
}
选项:
A: 字符串反向
B: 字符串比较
C: 字符串连接
D: 字符串求长度
答案: 【 字符串求长度】
2、单选题:
已知int a[ ]={1,3,5,7},y,*p=a;为了使变量y的值为3,下列语句正确的是 。
选项:
A: y=++*p++;
B: y=++(*p++);
C: y=(++*p)++;
D: y=(*++p)++;
答案: 【 y=(*++p)++;】
3、单选题:
下面函数的功能是 。void ( char *s1, char *s2)
{ while(*s2++=*s1++);
}
选项:
A: 字符串反向
B: 字符串比较
C: 字符串连接
D: 字符串复制
答案: 【 字符串复制】
1、单选题:
运行以下程序时输入HELLO WORLD<CR>( <CR>代表Enter 键),则输出的结果是( )#include "stdio.h"
char fun ( char *c )
{ if ( *c < = ‘Z’ & & *c > = ‘A’) *c – =’A’-‘a’;
return *c;
}
int main( )
{ char s[81] , *p=s;
gets(s);
while(*p)
{ *p=fun(p); putchar(*p); p++; }
putchar ( “ n “ );
return 0;
}
选项:
A: heLLO wORld
B: hello world
C: HELLO WORLD
D: Hello World
答案: 【 hello world】
2、单选题:
以下程序输出的结果是( ) #include " stdio.h"
#include "string.h"
void fun ( char *w, int m )
{ char s, *p1 , *p2 ;
p1=w; p2=w+m-1;
while(p1<p2)
{ s=*p1++; *p1=*p2– ; *p2=s; }
}
main( )
{ char a[ ]="1234567";
fun ( a , strlen(a) );
puts(a);
}
选项:
A: 7654321
B: 1711717
C: 1711771
D: 7177171
答案: 【 1711717】
3、单选题:
库函数strcpy用以复制字符串。若有以下定义和语句: char str1[ ]="GREETING",str2[8],*str3,*str4="GREETING";则对库函数strcpy的不正确调用是 ( )
选项:
A: strcpy(str2,"HELLO2");
B: strcpy(str3,"HELLO3");
C: strcpy(str4,"HELLO4");
D: 都不正确
答案: 【 strcpy(str3,"HELLO3"); 】
1、单选题:
下面程序的运行结果是( )int main( )
{ int aa[3][3]={{2},{4},{6}},i,*p=&aa[0][0];
for(i=0;i<2;i++)
{ if(i==0) aa[i][i+1]=*p+1;
else ++p;
printf("%d",*p);
}
printf("n");
return 0;
}
选项:
A: 23
B: 26
C: 33
D: 36
答案: 【 23】
2、单选题:
若有定义语句int (*p)[M]; 其中的标识符是( )
选项:
A: M个指向整型变量的指针
B: 指向M个整型变量的函数指针
C: 一个指向具有M个整型元素的一维数组指针
D: 具有M个指针元素的一维指针数组,每个元素都只能指向整型量
答案: 【 一个指向具有M个整型元素的一维数组指针 】
3、单选题:
下面程序的运行结果是( )int main( ){ int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int (*p)[4]=a,i,j,k=0; for(i=0;i<3;i++) for(j=0;j<2;j++) k+=*(*(p+i)+j); printf("%dn",k);return 0;}
选项:
A: 60
B: 68
C: 99
D: 108
答案: 【 60】
备案号:冀ICP备20010840号 2020-2099辉辉网络科技 All Rights Reserved