下面程序段的运行结果是char str[]="ABC" *p=str;printf("%d\n" *(p+3));A.67 B.0 C.字符’C’的

计算机 字符,程序,地址 已帮助 人

下面程序段的运行结果是char str[]="ABC",*p=str;printf("%d\n",*(p+3));A.67 B.0 C.字符’C’的地址 D.字符’C’

热搜:下面程序的功能是输出数组s中最大元素

答案解析

难度★★☆ 搜索
  • 参考答案:B在本题中,程序段首先定义了一个字符型数组str,并将其初始化为“ABC”,然后定义一个字符型的指针变量p,使其指向数组str的首地址。然后程序运行输出语句,从输出语句的输出格式可以看出,要求输出的是一个十进制数值,而输出列表中的*(p+3)表示输出的是数组str中的第四个元素,从数组的初始化我们可以看出,其中只有三个字符元素,而输出语句则要求输出第四个元素。这里需要我们了解字符串在字符数组中的存储方式,字符串在字符数组中存储后,系统会自动给其添加一个结束标志’’,即0值。因此,在用字符数组存储字符串时,字符数组申请的空间应该是字符串的字符个数加1。根据上面的分析,我们可以知道输出的第四个元素是’’字符,它对应的十进制值是0,因此本题的正确答案是B。