小编Tan*_*aje的帖子

将数字与指针相加

#include<stdio.h>
int main()
{  
     float a=10;
     float* p=&a;
    printf("%u\n",p);
     p=p+3;
     printf("%u",p);
}
Run Code Online (Sandbox Code Playgroud)

执行该程序后,我得到 2 个内存地址作为输出,后者的值比前者大 12。

#include<stdio.h>
int main()
{  
     float a=10;
     float* p=&a;
    printf("%u\n",p);
     p=p+3.5;
     printf("%u",p);
}
Run Code Online (Sandbox Code Playgroud)

我尝试将 3 更改为 3.5,但得到的输出具有两个地址的相同值。我预计在这两种情况下该值都会至少增加 12。可能是什么原因 ?

c pointers pointer-arithmetic

2
推荐指数
1
解决办法
1万
查看次数

c 中阶乘中尾随零的数量

我是 C 编程的新手我想找出给定数字的阶乘中尾随零的数量

{
        long int n=0,facto=1,ln=0;
        int zcount=0,i=1;
        printf("Enter a number:");
        scanf("%ld",&n);
        if(n==0)
        {
          facto=1;
        }
        else
        {
           for(i=1;i<=n;i++)
           {
              facto=facto*i;
           }
        }
        printf("%ld",facto);
        while(facto>0)
        {
           ln=facto%10;
           facto/10;
           if(ln=!0)
           { 
               break;
           }
           else
           { 
               zcount+=1;
           }
        }
        printf("Tere are Total %d Trailing zeros in given factorial",zcount);
}
Run Code Online (Sandbox Code Playgroud)

我试图计算将返回给定数字的最后一位作为余数的数字的模数,然后n/10;将删除最后一个数字。

执行程序后,输出总是将尾随零的数量显示为“0”,if(ln =! 0)即使有零也总是满足条件。

c factorial

1
推荐指数
1
解决办法
8173
查看次数

标签 统计

c ×2

factorial ×1

pointer-arithmetic ×1

pointers ×1