关于C语言goto用法的问题

这是我的源代码,经过检验part:和while之间的那一大段语句是没有错误的,但是一编译以后显示我中间那里出现了一大堆错误,所以我判断问题出现在goto语句的运用上面//... 这是我的源代码,经过检验 part:和 while 之间的那一大段语句是没有错误的,但是一编译以后显示我中间那里出现了一大堆错误,所以我判断问题出现在goto语句的运用上面

// homework6_1.c——的士计价器
#include<stdio.h>
#include<stdlib.h>
#define NAME 21
struct taxi
{
char city[NAME];
int sta_price;//用double类型好像会产生错误?回头尝试一下
int sta_kilo;
int spe_time[4];
int add_percent;
};

void main(void)
{
part:char judge;
struct taxi myself;
printf("请告诉我你所在的城市名:(汉字)\n");
gets(myself.city);
printf("请告诉我你所在城市的士的起步价:\n");
scanf("%d", &myself.sta_price);
printf("请告诉我起步价里面包含多少公里:\n");
scanf("%d", &myself.sta_kilo);
printf("请告诉我夜晚需要加收服务费的时间(格式:xx:xx~xx:xx):\n");
scanf("%d:%d~%d:%d", &myself.spe_time[0], &myself.spe_time[1], &myself.spe_time[2], &myself.spe_time[3]); //0、2是小时;1、3是分钟
printf("请告诉我每公里要加收百分之几的服务费:\n"); //记得运用时要除以100
scanf("%d",&myself.add_percent);

printf("现在我复述一遍,你看看对吗?(对的请输入\"Y\",有误请输入\"N\")\n");
printf("你在");
puts(myself.city);
printf("\n"); //城市核对
printf("你所在城市的士的起步价:%d\n", myself.sta_price); //起步价核对
printf("起步价所包含的公里数:%d\n", myself.sta_kilo); //起步价包含公里数核对
printf("你那边需要加收服务费的时间是:%02d:%02d~%02d:%02d\n", myself.spe_time[0], myself.spe_time[1], myself.spe_time[2], myself.spe_time[3]);
//时间核对
printf("每公里加收服务费的份额是:%d%%\n", myself.add_percent);

while((judge = getchar()) != 'Y')
goto part;
展开
 我来答
__Bruce_Wang__
2016-11-17 · TA获得超过668个赞
知道小有建树答主
回答量:419
采纳率:25%
帮助的人:343万
展开全部
把part向下移动两行,到这里,
char judge;
struct taxi myself;
part: printf("请告诉我你所在的城市名:(汉字)\n");
....
追问
为什么这样子就没错呢
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式