C语言弱智求大神指导
发布网友
发布时间:2024-01-05 22:57
我来回答
共3个回答
热心网友
时间:2024-12-14 20:31
while (scanf("%d",&x)==1)
a[n++]=x;
这句就是数组输入,
for (i=n-1;i>=1;i--)
printf ("%d",a[i]);
printf ("%d\n",a[0]);
for循环最后i=0;a[0]不会输出,所以要再加一句追问==不是判断是否相等么?明显我输入的x不一定等于1啊。。。。。
追答while (scanf("%d",&x)==1)
int scanf;scanf返回1表示成功读入到x,跟x等不等于1没关系的,
热心网友
时间:2024-12-14 20:32
scanf("%d",&x)
读入一个整数存在x中
while (scanf("%d",&x)==1)
如果读入的数是1
a[n++]=x;
把x放入a[n]中并且n自增1
for (i=n-1;i>=1;i--)
printf ("%d",a[i]);
printf ("%d\n",a[0]);
for循环只管到了第一个printf printf ("%d",a[i]);
printf ("%d\n",a[0]);这句不在for循环内,是for循环执行完后执行的追问==不是判断是否相等么?明显我输入的x不一定等于1啊。。。。。
热心网友
时间:2024-12-14 20:32
while (scanf("%d",&x)==1)
这里面当你输入不是整型数据时scanf就出错,就不等于1,这时就结束while循环。
数是反过来输出的~~~追问==不是判断是否相等么?明显我输入的x不一定等于1啊。。。。。
追答如果输入整数,那么scanf("%d",&x)为真,也就是1,假就是0
#include"stdio.h"
void main()
{
int x;
printf("%d",scanf("%d",&x));
}
弄到你电脑里试试,输入整数为1,其它类型为0