举一反三
- 有如下定义: 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);} 运行结果为_____________
内容
- 0
以下程序输出结果是____。struct student{short int x ; short int *y;} *p ;short int dt[4]={ 10 , 20 , 30 , 40 };struct student a[4]={50,&dt[0],60,&dt[1],70 ,&dt[2],80,&dt[3]} ;...p=a;printf("%d ",++p->x); printf("%d ",(++p)->x); printf("%d\n",++(*p->y)); }
- 1
有下列程序: #include<stdio.h> struct ord int x,y;)dt[2]=1,2,3,4; main() struct ord*p=dt; printf("%d,",++p->x);printf("%d,",++p->y); 程序的运行结果是( )。 A: 1,2 B: 2,3 C: 3,4 D: 4,1
- 2
有如下定义: struct { int x; char *y; }sa[2]={{1,"ab"},{2,"cd"}},*p=sa; 则:语句:printf("%s",(++p)->y); 的输出是 。
- 3
设有以下程序 struct st { int x; int *y;} ; main() { int a, b, dt[4]={ 10,20,30,40 }; struct st aa[4]={ 50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]},*p; p = aa; a = (++p)->x; b= ++(*p->y); } 程序运行后,a=______,b=______。
- 4
struct {int x; char *y;}tab={1,"ab"},*p=tab; 则:表达式p->;x的结果为【1】。