设位段的空间分配由右到左,下面程序执行后的输出结果是( )。#include<;stdio.h>;struct packed { unsigned a:2; unsigned b:2; unsigned c:3; int i;} data ;int main(){ data.a=2; data.b=3; printf("%d",data.a+data.b); return 0;}
A: 语法错
B: 2
C: 5
D: 3
A: 语法错
B: 2
C: 5
D: 3
举一反三
- 设位段的空间分配由右到左,下面程序执行后的输出结果是( )。#include[stdio.h]struct packed { unsigned a:2; unsigned b:2; unsigned c:3; int i;} data ;int main(){ data.a=2; data.b=3; printf("%d",data.a+data.b); return 0;} A: 语法错 B: 2 C: 5 D: 3
- 有如下程序 #include intchange(int*data) { *data=*data%2; return(*data)+1; } main() { intdata=12; change(&data); printf("%d,",data); data=change(&data); printf("%d,",data); } 程序运行后的输出结果是()
- 有如下程序#include [stdio.h] int change(int* data){ *data= *data % 2; return (*data)+ 1; } void main(){ int data = 12; change(&data); printf("%d,", data); data = change(&data); printf("%d,",data); }程序运行后的输出结果是( )。 A: 0,0, B: 1,2, C: 12,13, D: 0,1,
- 有如下程序 #include int test(int *data) { return --(*data); } main() { int data = 12; test(&data); printf("%d,", data); data = test(&data); printf("%d,", data); } 程序运行后的输出结果是
- 以下程序运行后的输出结果是()。 #include<stdio.h> struct S { int a, b; } data[2]={10, 100, 20, 200}; void main() { struct S p=data[1]; printf("%d", ++(p.a)); }