结构程序中的结构无法启动

  • 本文关键字:结构 启动 程序 c
  • 更新时间 :
  • 英文 :


我试图在结构程序中制作一个结构,该结构将定位房屋并测量其建造时间和面积。

我收到此错误。

[错误] 'izgradnja' 没有名为 'povrsina' 的成员

#include<stdio.h>
#include<string.h>
typedef struct {
char drzava[30];
char grad[30];
char adresa[50];
char tip[10];
int brojsoba;
int brojradnika;
struct povrsina {
int sirina;
int duzina;
int povrsinasobe;
};
}izgradnja;
main() {
int i,n,j;
printf("Koliko objekata cemo obraditi:");
scanf("%d",&n);
izgradnja objekat[n];
for(i=0;i<n;i++) {
printf("Unesite drzavu u kojoj je Vasa kuca:");
gets(objekat[i].drzava);
printf("Unesite grad u kojoj je Vasa kuca:");
gets(objekat[i].grad);
printf("Unesite adresu:");
gets(objekat[i].adresa);
printf("Da li gradite kucu ili stan:");
gets(objekat[i].tip);
printf("Koliko ima soba?");
scanf("%d",&objekat[i].brojsoba);
for(j=0;j<objekat[i].brojsoba;j++) {
printf("Unesite sirinu i duzinu:");
scanf("%d%d",&objekat[i].povrsina.sirina,&objekat[i].povrsina.duzina);
objekat[i].povrsina.povrsinasobe = objekat[i].povrsina.sirina * objekat[i].povrsina.duzina;
}
printf("Unesite broj radnika koji radi na kuci:");
scanf("%d",&objekat[i].brojradnika);
}
}

有几种方法可以解决它,但这应该有效:

typedef struct {
char drzava[30];
char grad[30];
char adresa[50];
char tip[10];
int brojsoba;
int brojradnika;
struct {
int sirina;
int duzina;
int povrsinasobe;
} povrsina;
} izgradnja;

或者只是拆分:

typedef struct {
int sirina;
int duzina;
int povrsinasobe;
} Povrsina;
typedef struct {
char drzava[30];
char grad[30];
char adresa[50];
char tip[10];
int brojsoba;
int brojradnika;
Povrsina povrsina;
} izgradnja;

相关内容

最新更新