printf的“”在,的外面了
这样改
#include
int main()
{
int i,j,k;
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for(k=1;k<5;k++)
{
if((i!=j)&&(i!=k)&&(k!=j))
printf("%d%d%d\n",i,j,k);
}
return 0;
}
错误出在这条语句:printf("%9d %9d %9d,"i,j,k); 变量i之前应该有个逗号,即你的逗号位置错误了,应该改为 :printf("%9d%9d%9d",i,j,k);
另外就是此处你的程序并没有达到要求,可以作如下修改:
#include
void main()
{
int i,j,k;
int count=0;
for(i=1;i<5;i++)
{
for(j=1;j<5;j++)
{
for(k=1;k<5;k++)
{
if((i!=j)&&(i!=k)&&(k!=j))
{
printf("%d%d%d\t",i,j,k);
count++;
if(count%3==0)
{
printf("\n");//每一行只输出三个所需要的数据
}
}
}
}
}
printf("能组成互不相同且不重复的三位数个数:%d\n",count);
}
输出结果为:
123 124 132
134 142 143
213 214 231
234 241 243
312 314 321
324 341 342
412 413 421
423 431 432
能组成互不相同且不重复的三位数个数:24
Press any key to continue
个人建议每个循环和if语句后边都需要加上{},增强程序的可读性和易维护,好的变成习惯非常重要
printf("%9d %9d %9d,"i,j,k);} //第一个逗号放到引号里边了,放出来就行了:
printf("%9d %9d %9d",i,j,k);}
printf("%9d %9d %9d,"i,j,k);改成 printf("%9d%9d%9d",i,j,k);,不过你的输出有问题,改成printf("%d%d%d\n",i,j,k);
希望能帮到你。。另外说一下,就是开始编程的时候老是出现细节错误,你的慢慢来,多敲敲代码就ok咯!嘿嘿
#include
int main()
{
int i,j,k;
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for(k=1;k<5;k++)
{
if((i!=j)&&(i!=k)&&(k!=j))
printf("%d%d%d\n",i,j,k);
}
return 1;
}