代码: 全选
#include <stdio.h>
void Hanoi(int n);
void _Hanoi(int n, char a, char c);
int main(int ac, char **av)
{
int n;
scanf("%d", &n);
Hanoi(n);
return 0;
}
void Hanoi(int n)
{
_Hanoi(n, 'A', 'C');
}
void _Hanoi(int n, char a, char c)
{
if(1 == n)
printf("%c->%c\n", a, c);
else
{
_Hanoi(n - 1, a, 'B');
printf("%c->%c\n", a, 'C');
_Hanoi(n - 1, 'B', c);
}
}
代码: 全选
liking@vm9:~$ gcc -O2 -o hanoi hanoi.c
hanoi.c: In function ‘main’:
hanoi.c:9:7: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d", &n);
^
按理说scanf的返回值多数情况下是忽略了的啊,怎么会这么苛刻地弹出警告呢?希望大家解释下。