c语言选择题10道

1、设int*p,I;以下正确合理的语句是()。A、*p=10;B、i=p;C、i=*p;D、i=2*p+1;2、设chars[10];intI;以下引用数组s中元素正确... 1、设 int *p , I ;以下正确合理的语句是( )。
A、*p=10;
B、i=p;
C、i=*p;
D、i=2*p+1;

2、设 char s[10] ; int I ; 以下引用数组 s 中元素正确的表达式是( )。

A、S(i+2);
B、*(s+i)
C、*(&s+i)
D、*((s++)+i)

3、若有定义和语句
int **pp, *p, a=10, b=20;
pp=&p;
p=&a;
p=&b;
printf("%d,%d\n",*p,**pp);
则输出结果是( )。

A、10,20
B、10,10
C、20,10
D、20,20

4、若有定义和语句
char *s1="12345" , *s2="1234";
printf("%d\n" ,strlen(strcpy(s1,s2)));
则输出结果是( )。

A、4
B、5
C、9
D、10

5、若定义 int a[ ] ={1, 2, 3, 4, 5 , 6, 7 , 8 , 9 , 10}, *p=a ;
则值为 3 的表达式是 ( )。

A、p+=2,*(p++)
B、p+=2,*++p
C、p+=3,*p++
D、++*p

6、设有以下一段程序
char s[ ]="Hello";
char *p=s ;
执行完上面程序段后,*(p+5) 的值为 ( ) 。
A、'o'
B、'\0'
C、'o' 的地址
D、不确定的值

7、已知:int *p,a;则语句“p=&a;”中的运算符“&”的含义是。
A、位与运算
B、逻辑与运算
C、取指针内容
D、取变量地址

8、已知:int *p;使用如下语句动态申请一个int型的存储单元,应当使用。
p=________malloc(sizeof(int));
A、int
B、int *
C、(* int)
D、(int *)

9、已知:char s1[4]="12";char *ptr;则执行以下语句后的输出为。
ptr=s1;
printf("%c\n",*(ptr+1));
A、字符'2'
B、字符'1'
C、字符'2'的地址
D、不确定

10、已知:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则不能表示数组a中元素的表达式是。
A、*p
B、a[10]
C、*a
D、a[p-a]
展开
 我来答
百了个度2011
推荐于2016-07-15 · 超过17用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:47.1万
展开全部
1、设 int *p , I ;以下正确合理的语句是(B )。 //p未初始化,指向随机空间,不能赋值, 也不能提取实体。上机测试B通过,D编译错误

A、*p=10;
B、i=p;
C、i=*p;
D、i=2*p+1;

2、设 char s[10] ; int I ; 以下引用数组 s 中元素正确的表达式是(B )。 //s[]可提取或*(S+i)可提取数组中元素

A、S(i+2);
B、*(s+i)
C、*(&s+i)
D、*((s++)+i)

3、若有定义和语句
int **pp, *p, a=10, b=20;
pp=&p;
p=&a;
p=&b;
printf("%d,%d\n",*p,**pp);
则输出结果是( D)。 //这就是指针修改所指向实体的值,一重二重指针都一样

A、10,20
B、10,10
C、20,10
D、20,20

4、若有定义和语句
char *s1="12345" , *s2="1234";
printf("%d\n" ,strlen(strcpy(s1,s2)));
则输出结果是(C )。 //我自己数的,上机测试运行死机

A、4
B、5
C、9
D、10

5、若定义 int a[ ] ={1, 2, 3, 4, 5 , 6, 7 , 8 , 9 , 10}, *p=a ;
则值为 3 的表达式是 (A )。 //不解释,你懂得。

A、p+=2,*(p++)
B、p+=2,*++p
C、p+=3,*p++
D、++*p

6、设有以下一段程序
char s[ ]="Hello";
char *p=s ;
执行完上面程序段后,*(p+5) 的值为 ( B) 。 //这个上机测试结果为null或““;我只好选B了
A、'o'
B、'\0'
C、'o' 的地址
D、不确定的值

7、已知:int *p,a;则语句“p=&a;”中的运算符“&”的含义是。 (D)//取地址,不解释,你懂得
A、位与运算
B、逻辑与运算
C、取指针内容
D、取变量地址

8、已知:int *p;使用如下语句动态申请一个int型的存储单元,应当使用。
p=________malloc(sizeof(int)); (D)//不解释,你懂得
A、int
B、int *
C、(* int)
D、(int *)

9、已知:char s1[4]="12";char *ptr;则执行以下语句后的输出为。
ptr=s1;
printf("%c\n",*(ptr+1)); (A)//不解释,你懂得
A、字符'2'
B、字符'1'
C、字符'2'的地址
D、不确定

10、已知:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则不能表示数组a中元素的表达式是。 (B)//数组下标从0开始数,你懂得……
A、*p
B、a[10]
C、*a
D、a[p-a]
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式