想知道程序哪里出问题了,为什么没有输出

想知道程序哪里出问题了,为什么没有输出,第1张

首先,那个scanf里面要用&,楼主输错了。

再有,那个转义符号\n是不是写错了?

最后,printf时,那个&x,楼主是想输出什么?是x的值还是x的存放地址?

楼主改:scanf("%d,%d,%d",&a,&b,&x);改:printf("%d\n",x);就没有问题,如果输入2,0,4,则输出3;如果printf("%d\n",&x);不改,我初次运行为-38,这应该是内存地址,每次运行应该都不同。

你的求回文素数的C语言程序,我帮你改完了,你看看吧(改动的地方见注释)

#include<stdioh>

int main()

{

 int i,j,c=1,result,n=1,v,h,b,l,a[100000]={0};

 scanf("%d%d",&h,&b);

 if(h>=5 && h<=b && b<=100000)//这里把||改成&&

 {

  for(h;h<=b;h++)

  {

   l=h;

   n=1;//这里加一句,保证每个数h,n都初始化为1

   for(i=2;i<=l-1;i++)

   {

    result=l%i;

    if(result==0)

    {

     n=0;

     break;

    }

   }

   if(n==1)

   {

    c=1;//这里加一句,保证每个n==1的数h,c都初始化为1

    i=0;//这里把for-i循环改成while-i循环

    while(l!=0)

    {

     a[i]=l%10;

     l=l/10;

     i++;

    }

    v=i-1;

    for(j=0,v;j<v;j++,v--)//这里把j!=v;改成j<v;

    {

     if(a[j]!=a[v]) c=0;

    }

    if(c==1) printf("%d\n",h);

   }

  }

  

 }

 return 0;

}

原因就是你的输入函数写的有问题,你的格式控制列表是这样写的:"a=%f,b=%f,c=%f\n",把后面的字符'\n'去掉就可以了,这样程序就能正常运行了。否则无论输入多少个'\n'(回车都不好使的),因为scanf函数输入的时候会自动忽略换行符,但是你的格式控制列表中却要求必须输入一个换行。所以会出现问题,至于为什么输入别的字符就可以了,应该是输入了其他字符后scanf函数就直接返回了(但不是返回出错)。

这个和PLC里边的程序有关系。

一般自动程序,会有很多的安全及条件判断。

自动程序无输出,估计是你的设备有些条件没有达到自动要求。

所认在自动状态下,程序屏蔽了输出功能。

如果你在你的程序结束的地方加个输入语句,或者加上头文件#include<stdlibh>,然后程序结束的地方加上system("pause");语句,程序执行完就不会立刻退出,可以看到结果。

另外,你可以在cmd中运行你的程序,不需要修改就可以看到结果。按Win(就是windows徽标那个键)+R打开运行,然后输入cmd,回车,打开了cmd窗口,把你的程序拖到cmd窗口里,回车运行就可以了

以上就是关于想知道程序哪里出问题了,为什么没有输出全部的内容,包括:想知道程序哪里出问题了,为什么没有输出、为什么程序没有输出啊啊啊啊啊。执行框输入以后就没有输出。。、c语言程序运行后没有输出结果只有光标向下移动了,如果再随便输入一些数字再Enter建就出结果,为什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10623384.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存