2.这是利用定时器T0定时1ms来实现数码管动态显示的。用查询法,1ms到显示一位,实现你说的间隔1ms显示。
3.数码管的位控是用译码器74LS138的。
4.虽然是书上的程序,但现在的有关单片机的书,真是良莠不齐,这也只是叫一段代码吧,是最烂的程序。电影每年都评最烂片吗,这可评上最烂程序啦!
注意你的程序习惯,格式很重要,方便别人读..int fun(int t[],int n)
{
int i,m
if(n==1)
return t[0]
else
if(n%3==0)
{
m=fun(t,n-1)
return m
}
}
main()
{
int a[]={11,4,6,3,8,2,3,5,9,2}
printf("%d\n",fun(a,10))
}
你的程序调式通没?你的fun函数有返回值的错误..当n!=1而且n%3!=0,就没有返回值,而且也不会循环调用fun函数.
fun(a,10)调用fun函数,就是n=10,这个时候n!=1而且n%3!=0,你单步调试下会发现问题..两个if是都没进去,你的函数相当于没调用,我是不知道你为什么会得到个3..
理论上讲应该通不了的.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)