给出下述源程序的运行结果。 #include <iostream.h> struct abc{ int a, *b; }*p; int x[] = {6,7}, y[] = {8,9}; void main() { abc a[] = {20, x, 30, y}; p = a; cout << *p->b << endl; cout << (*p).a << endl; 第 3 页 (共 4 页) cout << (++p)->a << endl; cout << ++(*p).a << endl; }
时间: 2023-07-15 07:10:14 浏览: 94
该程序存在以下问题:
1. 头文件应为 #include <iostream>
2. 结构体成员变量应该有类型说明符,即 int a, *b;
3. main 函数的返回值类型应该为 int。
4. 缺少头文件,无法使用 cout。
5. 语句缺少分号。
修改后的程序如下:
```c++
#include <iostream>
struct abc {
int a;
int* b;
} *p;
int x[] = {6, 7}, y[] = {8, 9};
int main() {
abc a[] = {{20, x}, {30, y}};
p = a;
std::cout << *(p->b) << std::endl;
std::cout << (*p).a << std::endl;
std::cout << (++p)->a << std::endl;
std::cout << ++(*p).a << std::endl;
return 0;
}
```
运行结果:
```
6
20
30
31
```
阅读全文