C语言 输入一个正整数 求位数 用dowhile

刚学C语言没多久 求各位指教
#include <stdio.h>
int main()
{
int n,num=0;
printf("input n:");
scanf("%d",&n);
if(n=0)
printf("num=1");

do{

n/10;
num++;
}while(n!=0);

printf("num=%d",num);
return 0;
}

if(n=0) 这里要用 n==0,初学常见的问题。


int main()
{

 int n,num=0;
 printf("input n:");
 scanf("%d",&n);
 if(n<=0) {
   n = 1;
 } else {
   do{
  
  n /= 10; 
  num++;
   }while(n>0);
 }
 
 printf("num=%d",num);
 return 0;

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-10-31

改两个地方:

    if(n = 0) 改为 if(n == 0)

    n/10 改为 n /= 10

第2个回答  2014-10-31
你的n/10有什么用呢??
n = n / 10;才行啊

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网