程序中若有以下的说明定义和语句: #include #include struet STR { char nHm[10];int S;}; main() { struet STR t,*p; P=

admin2020-07-28  40

问题 程序中若有以下的说明定义和语句:
    #include
    #include
    struet STR
    {  char nHm[10];int S;};
    main()
    {  struet STR t,*p;
    P=&t:
    }
    }
    则不能给变量t的s成员赋整数99,给num成员赋空串的语句组是(    )。

选项 A、(*P).s=99;(*p).Rum Rm.“”;
B、P一>s=99;P一>num[0]=0;
C、(*p).s=99;P一>num[0]:‘\0’;
D、P一>s=99;strcpy((*p).num,“”);

答案A

解析 结构体变量使用“.”运算符引用结构体成员变量,结构体指针使用“一>”运算符引川结构体成员变量,main函数中声明结构体STR变量t,和结构体STR指针*p,并将t的地址赋给p,所以使用p访问成员变量时,使用“一>”运算符;使用*p访问成员变量时,使用“.”运算符。另外,由于成员变量num是字符数组,所以不能直接进行赋值,若要对num赋空字符串值,可以把num中第一个元素赋值为0或‘\0’,或者使用strcpy复制函数将空字符串“”复制到num中,故选项B、c、D正确,选项A错误,因此答案为A。
转载请注明原文地址:https://jikaoti.com/ti/iSD0FFFM
0

相关试题推荐
最新回复(0)