#include<stdio.h>
int main()
{
int a,b,c,*d=0,*e=0;
scanf("%d/%d",&a,&b);
if(b==0)printf("no");
else if(a==1||b==1){
printf("%d/%d",a,b);
}
else {
for(c=1;*d==1||*d==a||*d==1/c;c++){
*d=a/c;
}
for(c=1;*e==1||*e==b||*e==1/c;c++){
*e=b/c;
}
printf("%d/%d",*d,*e);
}
return 0;
}
为什么一调试就崩溃
指针要分配空间
*d= new int,*e= new int;
*d = 0 并没有分配空间
??
意思是要加一个new int?
@ccccc三: 是的,在赋值之前new int,之后也可以。
d 和 e 要malloc分配内存。你这样会段错误的