分析程序,写出运行结果 #include "stdio.h" main() {struct num {int x;int y;}sa[]={{2,32},{8,16},{4,48}}; struct num *p=sa+1; int x; x=p->y/sa[0].x*++p->x; printf("x=%d p->x=%d",x,p->x); }
举一反三
- 有如下定义: struct { int x; char *y; }sa[2]={{1,"ab"},{2,"cd"}},*p=sa; 则:表达式 ++p->x 的值是 。
- 中国大学MOOC: 有如下定义: struct { int x; char *y; }sa[2]={{1,ab},{2,cd}},*p=sa; 则:表达式 ++p->x 的值是 。
- 有以下程序#include <;stdio.h>;struct tt{int x;struct tt *y;}s[3]={1,0,2,0,3,0};main(){struct tt *p=s+1;p->;y=s;p=p->;y;printf("%d\n",p->;x);}程序运行后的输出结果是 A: 2,3 B: 2,1 C: 1,2 D: 3,1
- 分析以下程序的运行结果#include <;stdio.h>;main( ){ int a[ ]={1, 2, 3, 4, 5, 6};int x, y, *p;p = &a[0];x = *(p+2);y = *(p+4);printf(“*p=%d, x=%d, y=%d\n”, *p, x, y);}
- #include [stdio.h]main( ){ int a[ ]={1, 2, 3, 4, 5, 6}; int x, y, *p; p = &a[0]; x = *(p+2); y = *(p+4); printf(“*p=%d, x=%d, y=%d\n”, *p, x, y);} 运行结果为_____________