目录: 标题| 题干| 答案| 搜索| 相关
问题

有以下程序 #include <string.h> main() {char


有以下程序 #include <string.h> main() {char str[][20]={"Hello","Beijing"},*p=str; printf("%d ",strlen(p+20)); } 程序运行后的输出结果是

  • A0
  • B5
  • C7
  • D20
参考答案
参考解析:

解析:二维数组的初始化及库函数strlen()的应用,主函数中定义了一个二维字符数组并初始化,初始化后的结果为str[0]=“Hello”、str[1]=“Beijing”,然后定义一个字符指针变量p并让它指向数组的首地址,即指向str[0],而在C语言中无论是一维还是多维数组,其元素在内存中都是顺序存放的,故p+20后指针指向str[1],所以strlen(p +20);返回的是str[1]中的字符串的长度,即Beijing的长度为7,所以最后输出的值为7。

分类:其他
相关推荐

1、有以下程序#include <stdio.h>main() {

有以下程序#include <stdio.h>main() { char b=2; printf("%dn", b=b<<3);}程序的运行结果是A.4 B.8 C.16 D.2000A4 B8 C16 D2000

2、有以下程序 #include <stdio.h> main()

有以下程序#include <stdio.h>main(){char c1=&rsquo;1&rsquo;,c2=&rsquo;2&rsquo;;c1=getchar();c2=getchar();putchar(c1);putchar(c2);}当运行时输入:a<回...

3、有以下程序: #include<stdio.h> main() { char

有以下程序: #include<stdio.h> main() { char c[6]; int i=0; for(j<6;c[i]=getchar(),i++); for(i=0,i<6;i++)putchar(c[i]); printf(" "); } 如果从键盘上输...

4、有以下程序#include "stdio.h"main(){ struct

有以下程序#include "stdio.h"main(){ struct date { int number; float fenzhi; char name; }stu; printf("%dn",sizeof(stu));} 程序的运行结果是A.3 B.5C.7 D.8A3 B5C7 D8

5、有以下程序: #include<stdio.h> main(){ char

有以下程序: #include<stdio.h> main(){ char c[6]; int i=0; for(;i<6;c[i]=getchar(),i++); for(i=0;i<6; i++)putchar(c[i]); printf(" "); } 如果从键...

6、有以下程序#include <string.h>struct S

有以下程序#include <string.h>struct STU{ int num; float TotalScore; };void f(struct STU p){ struct STU s[2]={{1047,530},{1048,531}}; p.num = s[1].num...