int main()
{ int a,b,c
char op
scanf("%d%c%d",&a,&op,&b)
switch(op)
{ case '+':
c=a+b
break
case '-':
c=a-b
break
case '*':
c=a*b
break
case '/':
c=a/b
break
default:
printf("Error!\n")
return 0
}
printf("%d%c%d=%d\n",a,op,b,c)
return 0
}
这个貌似没有简单的办法,我知道的好像就一种:程序首先要确定目标数字所在范围,然后根据声明一个变量(计算机产生),之后和你设定的数字进行比较,如果大就在范围的下线和变量之间求中值然后再反复——简单来说就是:设定int a,b,min,max//a,b,min,max分别为设定的值、计算机初始值,范围的最小最大值假定是0-9999之间的一个数字,b的初值是0,a是你自己输入的,那么如果你输入1234,程序先判定0<1234,因此取0-9999的中值4999和1234比较,4999>1234,因此取0和4999的中值再进行比较,如此反复,可能还需要其他变量,你可以自己看着多声明几个,纯属个人理解,呵呵下面的资料可看一下C语言实现数字信号处理算法
http://wenku.baidu.com/view/eb6e24c52cc58bd63186bd02.html
数字信号处理C语言程序集》
scilab,octave是C语言实现的开源的类matlab软件,里面有许多c语言实现的数字信号处理的算法,可以研究一下。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)