【发布时间】:2021-02-16 17:51:55
【问题描述】:
#include<stdio.h>
void TOH(int,char,char,char);
int n;
void main()
{
printf("How many plates?");
scanf("%d",&n);
TOH(n,'A','B','C');
}
if (n==1)
printf("A -> B \n");
if (n==2) {
printf("A->C \n");
printf("A->B \n");
printf("C->B \n");
}
void TOH(int n,char x,char y,char z)
{
if(n>2)
{
TOH(n-1,x,z,y);
printf("\n%c -> %c",x,y);
TOH(n-1,z,y,x);
}
}
我有输出错误:
turnuri.c:12:1: error: expected identifier or '('
if (n==1)
^
turnuri.c:15:1: error: expected identifier or '('
if (n==2) {
^
1 warning and 2 errors generated.
为什么?谢谢
【问题讨论】:
-
从逻辑上讲,你希望这些 if 什么时候执行??