有以下程序 #include <stdio.h> main( ) { int i, *ptr; int array[4] = {0,1}; for (ptr=array, i=0; i<3; i++, ptr++)

admin2021-02-25  14

问题 有以下程序
#include   <stdio.h>
main( )
{
    int  i, *ptr;
    int  array[4] = {0,1};
    for (ptr=array, i=0; i<3; i++, ptr++)
    {
        if (*ptr == 0)
            putchar(’#’);
        else
            putchar(’M’ + *ptr);
    }
    printf("\n");
}
程序运行后的输出结果是

选项 A、MO#
B、#F#
C、MMM
D、#N#

答案D

解析 for语句中把array数组首地址值赋给ptr,ptr++表示每次执行完循环体后,ptr指向下一数组元素,当指针指向值为0时,输出#,否则’M’再加上指针对应数组值进行输出,当*ptr=1时,’M’+1=’N’,结果输出为#N#,答案为D选项。
转载请注明原文地址:https://jikaoti.com/ti/yrz0FFFM
0

最新回复(0)