用C语言求平方根的问题

请问如何使用C语言,在不使用像sqrt之类的以定义命令的情况下只用FOR,IF和DO...WHILE来求出一个数字的平方根?谢谢... 请问如何使用C语言,在不使用像sqrt之类的以定义命令的情况下只用FOR,IF和DO...WHILE来求出一个数字的平方根?谢谢 展开
 我来答
在往返静候94
2011-12-10 · 超过27用户采纳过TA的回答
知道答主
回答量:123
采纳率:0%
帮助的人:52.7万
展开全部
我有你想要的答案,全部给你吧:
1. 输入两个数如果是大于0的数就算出评分根,小于0就输出绝对值。(用IF语句)
2. #include "stdio.h"
3. #include "math.h"
4. void main()
5. {
6. int a,b,c;
7.
8. scanf("%d%d",&a,&b);
9. if(a<0&&b<0)
10. {
11. printf("%d%d",a,b);}
12. else
13. { c=a+b;
14. printf("%d",c);}
15.
16. getch();
17.
18. }
19.
20.
21.
22. 键盘输入任意的一个数字【0-5】,输出它对应的英文单词。(用swich语句)
23. void main()
24. {
25. int a;
26. scanf("%d",&a);
27. switch(a)
28. { case 0:printf("zero");break;
29. case 1:printf("one");break;
30. case 2:printf("two");break;
31. case 3:printf("three");break;
32. case 4:printf("four");break;
33. case 5:printf("five");break;
34.
35. }
36. getch();
37.
38. }
39. 用switch语句编写程序,根据键盘输入的月份,输出对应季度,如输入3,则输出“春季”
40. void main()
41. {
42. int a;
43. scanf("%d",&a);
44. switch(a)
45. {
46. case 1:printf("winter");break;
47. case 2:printf("winter");break;
48. case 3:printf("spring");break;
49. case 4:printf("spring");break;
50. case 5:printf("spring");break;
51. case 6:printf("summer");break;
52. case 7:printf("summer");break;
53. case 8:printf("summer");break;
54. case 9:printf("autumn");break;
55. case 10:printf("autumn");break;
56. case 11:printf("autumn");break;
57. case 12:printf("winter");break;
58. default:printf("Please enter the digital\n \nsingle-digit");
59.
60. }
61. getch();
62.
63. }
64. 编写计算器程序。用户输入运算数和四则运算符,输出计算结果。(用swith语句,需要3个变量,一个是字符型变量存放运算符,两个用于运算的整型变量)
65. void main()
66. {
67. int a,b,d;
68.
69. char c;
70. printf("Please input operator\nFor example '+' '-' '*' '/'\n");
71. scanf("%c",&c);
72. printf("Please input number\n");
73. scanf("%d%d",&a,&b);
74. switch(c)
75. {
76. case '+':
77. d=a+b;break;
78. case '-':
79. d=a-b;break;
80. case '*':
81. d=a*b;break;
82. case '/':
83. d=a/b;break;
84. default: break;
85. }
86.
87. printf("%d",d);
88. getch();
89.
90. }
简单版以下的计算器:
void main()
{
int a,b,d;
char c;

scanf("%c",&c);
scanf("%d%d",&a,&b);
switch(c)
{case '+': d=a+b; ;break;
case '-': d=a-b; ;break;
case '*': d=a*b; ;break;
case '/': d=a/b; ;break;
default: break;
}
printf("%d",d);
getch();
}

91. 编写程序,要求:输入学生某科成绩,输出其等级。成绩【90,100】为A等,成绩【80,89】为B等,成绩【60-79】为C等,60分以下为D等。
92. void main()
93. {
94. int a;
95. scanf("%d",&a);
96. switch(a/10)
97. { case 6: printf("C") ;break;
98. case 7: printf("c") ;break;
99. case 8: printf("B") ;break;
100. case 9: printf("A") ;break;
101. case 10: printf("A") ;break;
102. default: printf("Not qualified D "); break;
103. }
104.
105. getch();
106. }

全部自己做的。
ivaniren
推荐于2017-10-05 · TA获得超过1471个赞
知道小有建树答主
回答量:1088
采纳率:0%
帮助的人:0
展开全部
#include "stdio.h"
int main()
{
double a;
double x=1.0;
printf("please input a double\n");
scanf("%lf",&a);
if (a<0) printf("error!\n");
else
while(x*x-a<-0.000001||x*x-a>0.000001) //呵呵精度连绝对值函数都不用了啊
{
x=(a/x+x)/2.0;
}
printf("%lf\n",x);
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xeu
2008-06-01 · TA获得超过864个赞
知道小有建树答主
回答量:833
采纳率:40%
帮助的人:687万
展开全部
不用sqrt之类的函数,求一个数的平方根,也就是求一个数的二分之一次方,我们自己写一个幂函数,然后在主函数中调用,指数为0.5,这样
#include<stdio.h>
void main()
{
float s(float a,float b);
float a;
scanf("%f",&a);
printf("%f\n",s(a,0.5));

}
float s(float a,float b)
{
if(b==0)
return 1;
else
return a*s(b-1);

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式