char s[20] = “abcd”; char *sp = s; sp++; puts(strcat(sp, “ABCD”));
查看答案
以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是( )。 main() { int *p, *q, a, b; p = &a; printf(“input a: “); scanf(“%d”, *p); ……; }
A. *p表示是指针变量p的地址
B. *p表示的是变量a的值,而不是变量a的地址
C. *p表示的是指针变量p的值
D. *p只能用来说明p是一个指针变量
已有如下说明: float *p, m = 3.14; 且需要使指针变量p指向变量m,则正确的赋值语句是( )。
A. p = m;
B. p = &m
C. *p = m;
D. *p = &m;
下面程序段的运行结果是( )。 char *s = “abcde”; s += 2; printf(“%d”, s);
A. cde
B. 字符’c’
C. 字符’c’的地址
D. 不确定输出结果
设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的语句是( )。
A. c = *p1 + *p2;
B. p2 = c;
C. p1 = p2;
D. c = *p1 * (*p2);