|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码目的是实现输入一个数,把它的每个数位标记到数组里,想问问大家代码有什么问题呀(用在51单片机上的,不知道是不是这段代码出了问题)麻烦了!- int Pow(int a, int b)
- {
- int c = a;
-
- if(b==0)
- {
- a = 1;
- }
- while(b)
- {
- a = a * c;
- b--;
- }
- return a;
- }
- int* counter(unsigned long int count)
- {
- unsigned long int a;//a从0开始+1直到==count,从而计算count每一位上的数字
- int number[8], b, dight = 7;//b作临时计数变量,计算每一位的大小并赋值给数组
-
- while(dight+1)
- {
- for(a=Pow(10,dight+1),b=1;a=a-Pow(10,dight),b++;a>=0)
- {
- if(a < count)
- {
- count -= a;
- number[dight] = (10 - b);
- break;
- }
- }
- dight--;
- }
-
- return number;
- }
- void main()
- {
- bit flag = 1;
- int checker, timer[8], num;//timer储存counter中的数组,num临时计数
- int *pa = counter(20);//pa储存数组地址
- for(num=0;num++,pa+=4;num<=7)
- {
- timer[num] = *pa;
-
- }
-
- for(num=0;num++;num<=7)
- {
- if(timer[num] == 0 && flag == 1)
- {
- checker = num;
- flag = 0;
- }
- if(timer[num] != 0 && flag == 0)
- {
- flag = 1;
- }
- }
- }
复制代码 |
|