dev c++程序停止
everyhour?\n");scanf("%d",speed);time=distance/speed;printf("%s,yourtripof%.2fmilesat...
every hour?\n"); scanf("%d",speed); time=distance/speed; printf("%s,your trip of %.2f miles at %d mph will take %.2f hours\n",name,distance,speed,time); return 0; } 一运行到最后一个输出的时候就是输入完speed的时候就显示停止工作,用的是dev c++
展开
1个回答
展开全部
scanf("%d",speed); 中speed没有加取地址符号&,导致访问了不该访问的内存,程序崩溃。
更多追问追答
追问
加了之后还是显示停止工作 我吧time=distance/speed这个单独搞出来一个程序 运行的时候还是这样 这个到底是什么问题
追答
name是不是char*或者char数组?数组有没有开足?
附上参考代码(你的题目描述中代码不全,前面的提示只能随便写了):
#include<cstdio>
int main() {
char name[21];//只能输入不包含空格、不可见字符、控制字符的20个及以内的Ascii码字符组成的名字,如果要支持空格可以用gets函数
int speed;
float distance,time;
printf("name?\n");
scanf("%s",name);
printf("miles?\n");
scanf("%f",&distance);
printf("miles every hour?\n");
scanf("%d",&speed);
time=distance/speed;
printf("%s, your trip of %.2f miles at %d mph will take %.2f hours.\n",name,distance,speed,time);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询