小弟是个新手,今晚按老师要求编了个小程序,用以求一个整数的各位数之和以及位数,如123的各位数之和是6位数是3.由于平时疏于学习,遂花了不少时间才写出来。然而点击运行时却提示没错误但无法运行。
望各位前辈在嘲笑我连这么简单的问题都不会的同时能指点一下迷津,感激不尽……
弟所编程序如下
#include<stdio.h>
long S=0;
int Count=0;
void fun(long n)
{
int i=1,j=1;long m,t;
while(n>10^i);
{i++;}
Count=i;
do
{m=n%10^(j-1);
t=(n%10^j-m)/10^(j-1);j++;
S=S+t;}
while (i<j);
}
void mani ()
{
long n;
printf("Please input a number:");
scanf("%ld",&n);
n=n<0?(-n):n;
fun (n);
printf("count=%d,sum=%ld\n",Count,S);
}
如能指出错误所在及改正之法,那是最好,不胜感激 T T
望各位前辈在嘲笑我连这么简单的问题都不会的同时能指点一下迷津,感激不尽……
弟所编程序如下
#include<stdio.h>
long S=0;
int Count=0;
void fun(long n)
{
int i=1,j=1;long m,t;
while(n>10^i);
{i++;}
Count=i;
do
{m=n%10^(j-1);
t=(n%10^j-m)/10^(j-1);j++;
S=S+t;}
while (i<j);
}
void mani ()
{
long n;
printf("Please input a number:");
scanf("%ld",&n);
n=n<0?(-n):n;
fun (n);
printf("count=%d,sum=%ld\n",Count,S);
}
如能指出错误所在及改正之法,那是最好,不胜感激 T T
long S=0;
int Count=0;
void fun(long n)
{
int i=1,j=1;long m,t;
while(n>10^i);
{i++;}
Count=i;
do
{m=n%10^(j-1);
t=(n%10^j-m)/10^(j-1);j++;
S=S+t;}
while (i<j);
}
void main()
{
long n;
printf("Please input a number:");
scanf("%ld",&n);
n=n<0?(-n):n;
fun (n);
printf("count=%d,sum=%ld\n",Count,S);
scanf("%ld",&n);
}
do
{m=n%10^(j-1);
t=(n%10^j-m)/10^(j-1);j++;
S=S+t;}
while (i<j);代码如下:
do
{
int x=n%10;
n=n/10;
}while(n!=0)