首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include <stdio.h> #include <string.h> main() { char a[]="TEXT",*b="++",c[3]="1"; printf("%d,%d,",strlen(a),sizeo
有以下程序 #include <stdio.h> #include <string.h> main() { char a[]="TEXT",*b="++",c[3]="1"; printf("%d,%d,",strlen(a),sizeo
admin
2022-04-01
19
问题
有以下程序
#include <stdio.h>
#include <string.h>
main()
{ char a[]="TEXT",*b="++",c[3]="1";
printf("%d,%d,",strlen(a),sizeof(a));
printf("%d,%d,",strlen(b),sizeof(b));
printf("%d,%d,\n",strlen(c),sizeof(c));
}
程序运行后的输出结果是( )。
选项
A、4,5,2,4,1,3,
B、4,4,2,2,1,1,
C、5,5,3,3,2,2,
D、4,4,2,2,1,3
答案
A
解析
sizeof()是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。strlen(*char)是函数,要在运行时才能计算。参数必须是字符型指针(char*)。当数组名作为参数传入时,实际上数组就退化成指针了。它的功能是:返回字符串的长度。该字符串可以是自己定义的,也可以是内存中随机的,该函数实际完成的功能是从代表该字符串的第一个地址开始遍历,直到遇到结束符NULL,返回的长度大小不包括NULL。sizeof(a)求数组a所占空间的大小,包括字符串最后的’\0’,所以sizeof(a)=5,strlen()遇到’\0’就结束,strlen(a)=4。strlen(b)是指针指向的字符串长度,sizeof(b)是指针的大小。strlen(C)是字符串的长度,sizeof(C)是数组的长度。因此,输出4,5,2,4,1,3。故答案为A选项。
转载请注明原文地址:https://jikaoti.com/ti/hqd0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>intfuna(inta,intb){returna+b;}intfunb(inta,intb){returna-b;}intsss(int(*t)(),intx,inty){ret
若有定义语句:chars[10]="1234567\0\0";则strlen(s)的值是()。
若有以下程序#include<stdio.h>main(){intb=10,a=-11;a%=b%=4:printf("%d%d\n",a,b);}则程序的输出结果是
设栈的存储空间为S(1:50),初始状态为top=0。现经过一系列正常的入栈与退栈操作后,top=51,则栈中的元素个数为
下面选项中的程序段,没有编译错误的是
软件生命周期是指( )。
层次型、网状型和关系型数据库划分原则是()。
以下程序函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序voidflintb[],intn,intflag)main(){inti,j,t;{inta[10]={5,4,3,2,1,6,7,8,
下列排序方法中,最坏情况下比较次数最少的是
下列给定程序中函数fun的功能是:逐个比较P、q所指两个字符串对应位置上的字符,并把ASCII值大或相等的字符依次存放到c所指的数组中,形成一个新的字符串。例如,若主函数中a字符串为“aBCDeFgH”,b字符串为“Abed”,则c中的字符串应为“aBcd
随机试题
国家垄断资本主义的"经济计划化"建立的基础是()
下列不属于杜甫的作品的是()。
女性,22岁,检查时发现镜下血尿,下列哪种说法不恰当
甲乙共有店面一间,各有一半份额,产权证登记在甲一人名下。乙不在家,甲与丙签订书面租赁合同,租期四年,未办理租赁登记。当年,在丙租赁期间中,甲未通知乙、丙,就将该店面房出售给丁,并在该年的8月1日办理了所有权转移登记。某日,戊酒后驾车失控冲撞该店面,致丙所自
工程建设其他费用包括( )。
知识产权法属于哪个法律部门()。
A、 B、 C、 D、 AIPv6共有8个位段,每个位段有16个二进制数,现在题中已有3个位段,所以省略的二进制0的位数有(8—3)×16=80。
"Whatdoyouwantfromthesupermarket,Mary?""Oh,Ijustneedsometoothpasteand______."
"Home,sweethome"isaphrasethatexpressesanessentialattitudeintheUnitedStates.Whethertherealityoflifeinthefam
A、Becauseofthetechnologyprogress.B、Becauseofthecomputerrevolution.C、Becauseoftheinventionofcomputer.D、Becauseof
最新回复
(
0
)