谭浩强第四版9.12例题求解
#include<stdio.h>void main()
{
enum Color{red,yellow,green,blue,black};
enum Color i,j,k,pri;
int n,loop;
n = 0;
for(i = red;i <= black;i++)
{
for(j = red;j <= black;j++)
if(i != j)
{
for(k = red;k <= black;k++)
{
if((k != i) && (k != j))
{
n = n + 1;
printf("%-4d",n);
for(loop = 1;loop <= 3;loop++)
{
switch(loop)
{
case 1:pri = i;break;
case 2:pri = j;break;
case 3:pri = k;break;
default:break;
}
switch(pri)
{
case red:printf("%-10s","red");break;
case yellow:printf("%-10s","yellow");break;
case green:printf("%-10s","green");break;
case blue:printf("%-10s","blue");break;
case black:printf("%-10s","black");break;
default:break;
}
}
printf("\n");
}
}
}
}
printf("total:%5d\n",n);
}这是怎么回事,已经跟书上代码一样了。 i,j k应该不是枚举变量你看你是不是抄错了
Krant5 发表于 2016-8-22 23:09
i,j k应该不是枚举变量你看你是不是抄错了
绝对没抄错,是这样。你可以搜索他这例题看下
这本书有的地方写得不太好
最好别这么用
反正C++是不支持的,除非你重载++
据说有的C编译器能支持,我也没试过
也许Turbo C能通过,记得这本书出来的年代Turbo C用得比较多
页:
[1]