一道初学者C语言问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 14:39:11
main()
{int c1,c2,c3,c4,c5;
printf("please input:")
scanf("%d%d%d%d%d",&c1,&c2,&c3,&c4,&c5);
if(c5=!0)printf("5:\n%d%d%d%d%d",c5,c4,c3,c2,c1);
else {if(c4=!0)printf("4:\n%d%d%d%d",c4,c3,c2,c1);
else {if(c3=!0)printf("3:\n%d%d%d%",c3,c2,c1);
else {if(c2=!0)printf("2:\n%d%d",c2,c1);
else printf("1:\n",c1);}}}}
怎么输入12345时,不是5:54321呢?我的思路就是想让它判断我输入几位数后(五位内),回车后能截止,但结果不能;运行是五个54321,可我只要一个,而且想输入321后同样能运行。
问题补充:我是想得到一个数的倒序,如我输入"12345"得到"54321",输入"789"得到"987".

//=!改成!=才是不等于

//如果你想倒序输出的话,需要对输入的数字进行排序
main()
{int c1,c2,c3,c4,c5;
printf("please input:")
scanf("%d%d%d%d%d",&c1,&c2,&c3,&c4,&c5);
if(c5!=0)printf("5:\n%d%d%d%d%d",c5,c4,c3,c2,c1);
else {if(c4!=0)printf("4:\n%d%d%d%d",c4,c3,c2,c1);
else {if(c3!=0)printf("3:\n%d%d%d%",c3,c2,c1);
else {if(c2!=0)printf("2:\n%d%d",c2,c1);
else printf("1:\n",c1);}}}}

c5=!0
上面这个是什么东东。
你是不是想写c5!=0
你的写法变成给c5赋值了。