#include<stdio.h>int power(int,int);
main(){ int i,num,result=0; int a[10];
puts("Input the num in binery:"); scanf("%d",&num);
for(i=9;i>=0;i--) a[i]=(num/power(10,9-i))%10;
for(i=0;i<10;i++) result+=a[i]*power(2,9-i);
printf("The result is %d\n",result);
system("pause"); return 0;}
int power(int x,int n){ if(0==n) return 1; else return x*power(x,n-1);}
谢谢了
帮我解释一下这个c语言程序,谢谢
答案:2 悬赏:50 手机版
解决时间 2021-04-16 22:12
- 提问者网友:箛茗
- 2021-04-16 03:25
最佳答案
- 五星知识达人网友:胯下狙击手
- 2021-04-16 04:34
#include <stdio.h> //头文件
int power(int ,int); //声明有两个参数的函数power,其返回值为整型
main()
{
int i,num,result=0; //定义变量
int a[10]; //定义整型一维数组
puts("***"); //原样输出引号里的内容
scanf("%d",&num); //输入num的值
for(i=9;i>=0;i--) //i初始为9限制条件为i>0的自减循环
a[i]=(num/power(10,9-i))%10; //将num的值除以参数(10,9-i)调用函数power返回的值,再对10求余
for(i=0;i<10;i++)//0到10的自加循环
result+=a[i]*power(2,9-i); //通过循环计算a[i]*power随着i的变化而得到的所有数据的和
printf("The result is %d\n",result);//输出result
system("pause"); //使显示结果的画面暂停
return 0; //返回0,结束程序
}
power(int x,int y) //函数power
{
if(0==n) //如果n为0则返回1
return 1;
else
return x*power(x,n-1); //反之则循环执行该语句,直到n为0
}
}
全部回答
- 1楼网友:撞了怀
- 2021-04-16 05:53
这是代码吗?差不多是乱码了,没什么代码规范,简直不容易看啊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯