Null2016301500094 2017-05-18 15:04 采纳率: 0%
浏览 810

我这个程序中为什么只有一个函数调用会出错?

#include
#include

void function1();
void function2();
void function3();
void function4();
void function5();
#define teams 20
#define germany 18

int main()
{
void(*f[5])(void) = { function1,function2,function3,function4,function5 };
int choice;
printf("欢迎使用欧洲足球五大联赛球队身价查询器\n");
printf("1:西班牙足球甲级联赛\n2:英格兰足球超级联赛\n3:德国足球甲级联赛\n4:意大利足球甲级联赛\n5:法国足球甲级联赛");
printf("\n请输入1~5,0表示退出\n");
scanf_s("%d", &choice);
while (choice >= 1 && choice < 6)
{
(*f[choice-1])();
printf("\n请输入1~5,0表示退出\n");
scanf_s("%d", &choice);
}
system("PAUSE");
return 0;
}

int choose(int max, char *menu_list[])
{
int choice;
int n = 1;
for (n = 1; n <= max; n++)
printf("\t%d. %s\n", n, menu_list[n-1]);
printf("请输入球队的身价排名:");
for (;;)
{
scanf_s("%d", &choice);
if (choice > 0 && choice <= max)
break;
printf("请在1~%d间输入正确的排名:", max);
}
return choice;
}

void function1(void)
{
printf("您所选择的联赛为西班牙足球甲级联赛\n");
char *name[teams] = {"皇家马德里","巴塞罗那","马德里竞技","塞维利亚","巴伦西亚",
"比利亚雷亚尔","毕尔巴鄂竞技","皇家社会","维戈塞尔塔","马拉加"
,"拉斯帕尔马斯","西班牙人","拉科鲁尼亚","皇家贝蒂斯","阿拉维斯",
"格兰纳达","埃瓦尔","希洪竞技","莱加内斯","奥萨苏纳"};
char *price[teams] = {"76480万","75800万","50150万","23600万","18500万"
,"17400万","15730万","11460万","10560万","7750万","7000万",
"6830万","6580万","6440万","6210万","5700万","5390万","4870万","4310万","3890万"};
int choice;
choice = choose(teams, name);
printf("您选择的是身价排名第%)的球队%s,总身价为%s", choice, name[choice - 1], price[choice - 1]);
}

void function2(void)
{
printf("您所选择的联赛为英格兰足球超级联赛\n");
char *name[teams] = {"曼彻斯特城","切尔西","阿森纳","曼彻斯特联","托特纳姆热刺",
"利物浦","埃弗顿","南安普顿","西汉姆联","莱斯特城"
,"水晶宫","斯托克城","斯旺西","沃特福德","赫尔城",
"伯恩茅斯","桑德兰","米德尔斯堡","西布罗姆维奇","伯恩利"};
char *price[teams] = {"52525万","51500万","49250万","46600万","42900万",
"37220万","25210万","23050万","20945万","20530万","18650万",
"16825万","12760万","12725万","11285万","10600万"
,"10200万","9950万","9560万","8500万"};
int choice;
choice = choose(teams, name);
printf("您选择的是身家排名第%d的球队%s,总身价为%s", choice, name[choice - 1], price[choice - 1]);
}

void function3(void)
{
printf("您所选择的联赛为德国足球甲级联赛\n");
char *name[germany] = {"拜仁慕尼黑","多特蒙德","勒沃库森","沙尔克04","门兴格拉德巴赫"
,"沃尔夫斯堡","莱比锡红牛","霍芬海姆","科隆","柏林赫塔"
,"美因茨","汉堡","云达不莱梅","法兰克福","奥格斯堡"
,"弗莱堡","因戈尔施塔特","达姆施塔特"};
char *price[germany] = {"56615万","37635万","27395万","21663万","16355万","15400万",
"12393万 ","10163万","9930万","8630万","7973万",
"7575万","6980万","6855万","6273万","5868万","3455万","2150万"};
int choice;
choice = choose(germany, name);
printf("您选择的是身价排名第%d的球队%s,总身价为%s", choice, name[choice - 1], price[choice - 1]);
}

void function4(void)
{
printf("您所选择的联赛为意大利足球甲级联赛\n");
char *name[teams] = {"尤文图斯","那不勒斯","国际米兰","罗马","AC米兰","佛罗伦萨",
"拉齐奥","都灵","亚特兰大","萨索洛",
"桑普多利亚","乌迪内斯","热那亚","博洛尼亚","卡利亚里","恩波利",
"切沃","佩斯卡拉","巴勒莫","克罗托内"};
char *price[teams] = {"45080万","33278万","32950万","30600万","22490万","17415万",
"17360万","13180万","10905万","10260万","9180万",
"8610万","7878万","6573万","5145万","3953万",
"3803万","3778万","3115万","2455万"};
int choice;
choice = choose(teams, name);
printf("您选择的是身家排名第%d的球队%s,总身价为%s", choice, name[choice - 1], price[choice - 1]);
}

void function5(void)
{
printf("您所选择的联赛为法国足球甲级联赛\n");
char *name[teams] = {"巴黎圣日耳曼","里昂","摩纳哥","尼斯","马赛",
"圣埃蒂安","波尔多","图卢兹","里尔","雷恩"
,"洛里昂","南特","昂热","蒙彼利埃","甘冈",
"梅斯","卡昂","巴斯蒂亚","南锡","第戎"};
char *price[teams] = {"46540万","20080万","19780万","11418万","10860万","7845万",
"6805万","6330万","5545万","5320万","4660万",
"4280万","4025万","3830万","3775万","3315万","3255万",
"2955万","2230万","2193万"};
int choice;
choice = choose(teams, name);
printf("您选择的是身价排名第%d的球队%s,总身价为%s", choice, name[choice - 1], price[choice - 1]);
}
当选择西甲时会报错,但是选择其他联赛就正常。哪位大神能够解释一下

  • 写回答

2条回答 默认 最新

  • markxiaokeng 2017-05-18 15:28
    关注
    printf("您选择的是身价排名第%)的球队%s,总身价为%s", choice, name[choice - 1], price[choice - 1]);
    

    改成 printf("您选择的是身价排名第%d)的球队%s,总身价为%s", choice, name[choice - 1], price[choice - 1]);

    评论

报告相同问题?

悬赏问题

  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法