#include
int gcd(int n,int m,int y)
{
for(;n!=0;m=n,n=y)
y=m%n;
return m;
}
int gcd(int n,int m,int y);
int main(void)
{
int a,b,c=0;
printf("输入两个数:");
scanf("%d %d",&a,&b);
gcd(a,b,c);
printf("最大公约数是:%d\n",gcd(a,b,c));
return 0;
}
此程序我变量C没有初始化,就报警告。赋值0,就没事了
#include
int num_digits(int n)
{
int i=0;
while(n>0){
n=n/10;
i++;
}
return i;
}
int num_digits(int n);
int main(void)
{
int m,j;
printf("enter a number:");
scanf("%d",&m);
j=num_digits(m);
if(j==1)
printf("thera is %d digit in %d\n",j,m);
else
printf("thera are %d digits in %d\n",j,m);
return 0;
}
为什么变量m经过函数num_digits(m)后,其值没有改变?体现在输出printf()函数上,显示在屏幕上是原值