pdqn.net
当前位置:首页 >> C语言输入一个正整数 >>

C语言输入一个正整数

源程序如下: #include <stdio.h> int main() { int n,i,j,sum=1,t; scanf("%d", &n); for(i=1;i<=n;i++) { t=1; for(j=1;j<=i;j++) { t *= 2; //每次计算2 ^ i 出来 } sum += t; //sum加上算出来的2 ^ i } printf("%d\n", sum); return 0; }

可以通过数组保存正整数的从最低位到最高位的每一位数值,之后输出数组元素即可.具体实现方法可以参考如下程序:#include<stdio.h> void main() { int num, a[10], i, k=0; printf("请输入一个正整数:"); scanf("%d", &num); // 分离正整数的每一位,并存放到数组a中 while(num>0) { a[k++] = num%10; // 将正整数的最低位保存到数组a中 num /= 10; // 将正整数的次低位变为最低位 } // 输出数组的每个元素,即实现逆序输出正整数 for(i=0; i<k; i++) printf("%d", a[i]); }

#include int main() { int n,sum=0; printf("请输入一个整数:"); scanf("%d",&n); while(n) { sum = sum+n%10; n /= 10; } printf("%d",sum); }

思路:求一个正整数n的位数可以先定义一个变量num,并初始化为0,依次把该整数n除以10,直到其为0为止,并且每除一次10,变量num的个数就自加1,最后num的值就是该整数n的位数.参考代码:#include <stdio.h> int main() { int n,num=0; scanf("%d",&n); while(n){ num++; n/=10; } printf("%d\n",num); return 0; }/* 输出:1234566*/

#include <stdio.h> int main() { int x,sum=0,t; printf("请输入一个正整数:"); scanf("%d",&x); while(x!=0) { t=x%10; x=x/10; sum+=t; } printf("该数的各位数字之和:%d",sum); }

代码:#include <stdio.h> int sum(int n){ int s = 0; while(n>0){ s += n%10; n/=10; } return s; } int main(){ int n; printf("请输入一个正整数:"); scanf("%d", &n); printf("输入的数为: %d , 其各位之和为: %d\n", n, sum(n)); return 0; } 输出:请输入一个正整数:12345 输入的数为: 12345 , 其各位之和为: 15 请按任意键继续. . .

按照你的逻辑,你算的是1-2/3-3/5-4/7-5/9-6/11-…… 帮你修改一下#include void main() { int n,tmp=1; float sum=1,a; scanf("%d",&n); for(float i=2;i { a=i/(2*i-1); sum+=tmp*a; tmp = -tmp; } printf("前n项之和=%f\n",sum); }

1、 b=a[0]; c=a[n-1];放在for(i=0; i

int i = scanf(); int j = 0; if(i/10 != 0) { do { j+=i%10; i=i/10; }while(i/10 == 0) j=j+i; }else { j=i; } printf("",j); 大概给你个思路,因为我这没有C的编译器.

void print(int n) { while(n!=0){ printf("%d",n%10); n=n/10; } } 这是实现函数,再在main()函数里调用即可;

网站首页 | 网站地图
All rights reserved Powered by www.pdqn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com