首页 > 干部教育培训
题目内容 (请给出正确答案)
[主观题]

有以下程序:#include <string.h>main(){charp[]={'a','b','c'},q[10]={'a','b','c'};printf("%d

有以下程序: #include <string.h> main() { char p[]={'a','b','c'},q[10]={'a','b','c'}; printf("%d %d\n",strlen(p),strlen(q)); } 以下叙述中正确的是()。

A.在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3

B.由于p数组中没有字符串结束符,长度不能确定;但q数组中字符串长度为3

C.由于q数组中没有字符串结束符,长度不能确定;但p数组中字符串长度为3

D.由于p和q数组中都没有字符串结束符,故长度都不能确定

答案
收藏

B
解析:使用初始化列表对字符数组赋初值,系统不会自动为其添加字符串结束符,使用字符串初始化时才会自动添加,所以选项A是错的。数组长度在未指定的情况下由初始化列表项中数据的个数决定,若已指定且初始化项数不足时,多出部分会自动初始化为0,0等价于宁符串结束符'\0'。所以选项B是正确的,C和D都是错误的。本题应该选B。

如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“有以下程序:#include <string.h>main(…”相关的问题
第1题
阅读如下代码:public class X5_3_3 extends Hide {int x = 200;public static void main(Stri

A.100

B.200

C.程序错误

D.300

点击查看答案
第2题
有以下程序 include<stdio.h> main() {chara=4; printf(%dha,a=a<<1); )A.8B.16C.40D.4

有以下程序 include<stdio.h> main() {chara=4; printf(%dha,a=a<<1); )

A.8

B.16

C.40

D.4

点击查看答案
第3题
有以下程序: include<stclio.h> main() { char c; while((c=getchar())!=?)pu

有以下程序: include<stclio.h> main() { char c; while((c=getchar())!=?)putchar(--c); } 程序运行时,如果从键盘输入:Y?N?<回车>,则输出结果为【 】。

点击查看答案
第4题
有以下程序 include<stdio.h> main(){ inta=3; printf(%d\n,(a+=a-=a*a));} 程序运行后

有以下程序 include<stdio.h> main(){ inta=3; printf(%d\n,(a+=a-=a*a));} 程序运行后的输出结果是

A.9

B.0

C.3

D.-12

点击查看答案
第5题
有以下程序: include <stdio.h> main() { char c; while((c=getchar())!=?)

有以下程序: include <stdio.h> main() { char c; while((c=getchar())!=?) putchar(--c); } 程序运行时,如果从键盘输入Y?N?<回车>,则输出结果为【 】。

点击查看答案
第6题
有以下程序(strcat函数用以连接两个字符串) include<stdio.h> include<string.h> main()

有以下程序(strcat函数用以连接两个字符串) include<stdio.h> include<string.h> main() {chara[20]=abcD\OEFG\O,b[]=%s\n; strcat(a,b);printf(%s\n,a); } 程序运行后的输出结果是

A.abcDE\0FG\0UK

B.abcDUK

C.UK

D.EFGUK

点击查看答案
第7题
有以下程序 include<stdio.h> include<stdlib.h> main() {int*a,*b,*c; a=b=c=(int*)ma

有以下程序 include<stdio.h> include<stdlib.h> main() {int*a,*b,*c; a=b=c=(int*)malloc(sizeof(int)); *a=l;*b=2,*c=3; a=b: printf(%d,%d,%d\n,*a,*b,*c); } 程序运行后的输出结果是

A.2,2,3

B.3,3,3

C.1,2,3

D.1,1,3

点击查看答案
第8题
有以下程序 include<stdio.h> yoidfun(char**p) {++p;printf(%sha,*p);} main() {char*

有以下程序 include<stdio.h> yoidfun(char**p) {++p;printf(%sha,*p);} main() {char*a[]=(Morning,Aftemoon,Eyening,Night); fun(a); } 程序的运行结果是

A.ffemoon

B.Morning

C.oming

D.Afternoon

点击查看答案
第9题
有以下程序 include<stdio.h> include<string-h> yoidmain() { charstr[][20]={.One*Wo

有以下程序 include<stdio.h> include<string-h> yoidmain() { charstr[][20]={.One*World,One*Dream!),*p=str[1]; printf(%d,,strlen(p)); printf(%s\n,p); } 程序运行后的输出结果是

A.9,One*Dream!

B.10,One*Dream!

C.9,One*World

D.10,One*World

点击查看答案
第10题
有以下程序 include<stdio.h> main() {inta=2,b; b=a<<2;printf(”%d\n”,b); }A.4B.6C.8

有以下程序 include<stdio.h> main() {inta=2,b; b=a<<2;printf(”%d\n”,b); }

A.4

B.6

C.8

D.2

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改