编写函数fun(),求s 共n项),a和n的值在1—9之间。例如a=3,n=5,则表达式为:s = 3+33+333+3333+33333。在主函数中输入a和n的值,通过调用fun函数完成计算。
编写一个函数count(),统计一个数中位值为零的个数以及位值为1的个数。若输入111001,则输出位值为零的个数为2,位值为1的个数为4。
这两题该怎么写啊,调用函数不太行
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 旭日初扬 2022-11-26 10:56关注
#include <stdio.h> #include <stdlib.h> #include "math.h" // 编写函数fun(),求s 共n项),a和n的值在1—9之间。例如a=3,n=5,则表达式为:s = 3+33+333+3333+33333。在主函数中输入a和n的值,通过调用fun函数完成计算。 void fun(int x,int y); int main() { int a,n; printf("请输入两个数:\n"); scanf("%d",&a); scanf("%d",&n); fun(a,n); return 1; } // x操作数 y项数 void fun(int x,int y) { // 9999 99999 十六机制:3B9A C9FF 二进制 11 1011 1001 1010 1100 1001 1111 1111 unsigned int s=0,temp=0,temp1=0,z,k,t; unsigned int a[y]; if(x>0&&x<9) // a 取值1~9-+ { /* a=3,n=5 s=3+33+333+3333+33333 设输入的数为z 即s=z+zz+zzz+zzzz+zzzzz z+z(10+1)+z(100+10+1)+z(1000+100+10+1)+z(10000+1000+100+10+1) 即s= z*1+z*11+z*111+z*1111+z*11111 即s=a([10的n-1次方]+1)的递归 a为输入的操作数 n为循环次数 */ for(z=1;z<=y;z++) // 每一项的 { temp+=x*(pow(10,z-1)); k=temp; printf("输出k:%d\n",k); k=0; s+=temp; } // printf("%d",s); printf("输出s:%d",s); }else{ printf("输入出错请重新输入"); } } ![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/365193134966137.PNG "#left")
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 虚幻5 UE美术毛发渲染
- ¥15 CVRP 图论 物流运输优化
- ¥15 Tableau online 嵌入ppt失败
- ¥100 支付宝网页转账系统不识别账号
- ¥15 基于单片机的靶位控制系统
- ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度
- ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测