问题 填空题

下面程序的输出结果是 【16】
#include<stdio.h>
main()
static char a[]="language" ,b[]="program";
char*ptrl=a,*ptr2=b;
int k;
for(k=0;k<7;k++)
if(*(ptrl+k)==*(ptr2+k))
printf("%c",*(ptrl+k));

答案

参考答案:ga

解析:[命题目的] 考查了用字符指针处理字符串的方法。
[解题要点] 用字符指针处理字符串,首先要使指针指向这个字符串,即题中的ptr1=a和ptr2=b。然后就是通过指针的移动可以引用到字符串中的每一个字符。题中的*(ptr1+k)是使指针ptr1向后移动k个位置,然后取出指向的字符。
[考点链接] 用字符数组作为字符串和用指针指向的一个字符串之间的区别。

多项选择题
单项选择题