题目内容

struct worker{char name[16];int salary;}w[2]={"betor", 12345, "bestor", 54321}, *pw=w;以下描述错误的是_____

A. 执行 printf("%d\n", w->salary); 语句后输出12345
B. 执行 printf("%d\n", w[0].salary); 语句后输出12345
C. 执行 printf("%d\n", ++pw->salary); 语句后输出54321
D. 执行 printf("%d\n", pw->salary++); 语句后输出12345

查看答案
更多问题

struct meal{int price;char time; //'m'-morning, 'n'-noon, 'd'-dinner}aday[3]={{6, 'm'}, {15, 'n'}, {12, 'd'}};void printMeal(struct meal *oneday);以下描述正确的是_____

A. aday占内存大小是15字节
B. printfMeal(aday); 该函数调用所进行的参数传递不属于"值传递"
C. 在函数printfMeal内可以修改结构体数组aday任一元素的成员
D. 用于初始化aday的初值列表中的三个内花括号不可以省略

struct grade{int usualGrade; //平时成绩int finalGrade; //期末成绩};以下关于结构体数组的初始化正确的是_____

A. struct grade myGrade[2]={91,82,93}; 将给myGrade[0]的两个成员和myGrade[1]的第一个成员赋初值
B. struct grade myGrade[2]={91,82,,93};将给myGrade[0]的两个成员和myGrade[1]的第二个成员赋初值
C. struct grade myGrade[2]={91,93};和struct grade myGrade[2]={{91},{93}}; 是等价的
D. struct grade myGrade[]={{}, {}, {}}; 该语句初值列表为空,属于语法错误

struct{int x;char pstr[16];}test = { 66,"have a try" }, *ptest = &test;以下关于结构体成员访问描述正确的是_____

A. 执行 printf("%s\n", ptest.pstr); 后输出"have a try"
B. 执行 printf("%c\n", ++*ptest->pstr); 后输出'i'
C. 执行 printf("%c\n", (*ptest->pstr)++); 后输出'i'
D. 执行 printf("%c\n", *++ptest->pstr); 后输出'v'

struct point{int x;int y;}pts[]={1,3,5,7}, *ptr;ptr=pts;以下关于结构体成员访问的描述错误的是_____

A. printf("%d\n", ptr->x); 输出1
B. printf("%d\n", *ptr.y); 输出3
C. printf("%d\n", (*(++ptr)).x); 输出5
D. printf("%d\n", (++ptr)->y); 输出7

答案查题题库