而且,如果我在if前先声明它,则if语句里面的赋值给不到它里面
#include
typedef struct zhigong{
int xiaoshi;
int fen;
}Z;
void main()
{
int n,b;
printf("n,b<60");
scanf("%d %d",&n,&b);
if(b==59){
Z w ={n+1,00};
}
else
{
Z w ={n,b+1};
}
printf("%d%d",w.xiaoshi,w.fen);
}
作用域问题,命名的w作用域仅限于if,else内部,出去就自动回收,所以打印的时候应该会显示未定义或者没找到,最简单的办法就是打印放到花括号内部,当然最常规的扩大w的作用域或者生存期