在c语言中的do while用do-while循环计算1+2+.....+100的和

C语言程序设计,计算1+1/2+1/3+…+1/99+1/100的和(注意:1/2、1/3…1/10_学习帮助 - QQ志乐园
您的当前位置: &
C语言程序设计,计算1+1/2+1/3+…+1/99+1/100的和(注意:1/2、1/3…1/100,是数学中的分数)
来源: |人气:983 ℃|时间: 09:35:34
为了解决用户可能碰到关于"C语言程序设计,计算1+1/2+1/3+…+1/99+1/100的和(注意:1/2、1/3…1/100,是数学中的分数)"相关的问题,志乐园经过收集整理为用户提供相关的解决办法,请注意,解决办法仅供参考,不代表本网同意其意见,如有任何问题请与本网联系。"C语言程序设计,计算1+1/2+1/3+…+1/99+1/100的和(注意:1/2、1/3…1/100,是数学中的分数)"相关的详细问题如下:
#include&stdio.h&
void main()
{


int i=1;

result+=1.0/i;

i++;

}while(i&=100);

printf(&result=%f&,result);
}
简单解释一下: 整个式子的值不是整型,变量result定为float型,用到一个计数变量i,初始值赋值为1。 这里用到do-while循环。当然上面的人用的for循环语句也正确啦。由于是用手机回答的,所以缩进格式方面注意下吧。#include&stdio.h&double sum(int n){//1/k(前n项的和)&double s=0;&for(int i=1;i&=n;i++){&s+=1.0/i;&}&}void main(){&printf("1+1/2+1/3+…+1/99+1/100=%f n",sum(100));}for(int i=1;i&=100:i++){& int temp=i;& temp+=}这是分母,分子就是100,打印分子和分母,中间加个/符号。
你是学c语言的不?
新人,求全解代码!
&&&&&&&&&&&& int temp = 0;&&&&&& ////////////&&&&&& /////分母&&&&&& /////////////&&&&&& for (i = 1; i &= 100; i++)&&&&&& {&&&&&&&&&& temp =i+&&&&&& }&&&&&& ///////////&&&&&& ///分子就是100个1相加,就等于100&&&&&& //////////&&&& printf("jieguoshi ",temp/100)//我只有C#环境,printf自己想一下,就是打印分子和分母,中间加个/符号。#include &stdio.h&#include &stdlib.h&double sum(int n)//递归实现{ if(n == 1)& {
return 1.0; } else {
return sum(n-1)+1.0/n; }}int main(){
summary = sum(100); printf("%1.4fn",summary); system("PAUSE"); return 0;}
||||点击排行2038人阅读
、期待与您交流!
&&&&&& 循环结构也就是反复执行一段指令,直到满足某个条件为止。相同的食物从不同的角度理解,九可以得到不同的结论。循环结构还可以理解为:在给定的条件成立时,反复地执行相应的程序,直到给定的条件不成立为止。
&&&&&& 循环语句也可以分为两大类:一类是入口循环语句,一类是结束条件循环语句。入口循环语句是先判断循环条件再循环;结束条件循环语句的先执行一次循环体,再判断循环条件。
&&&&&& C语言中有三种循环语句:while、do...while和for循环语句。循环结构式结构化程序设计的基本结构之一,因此,熟练掌握循环结构是程序设计的基本要求。
1、while语句
while语句的一般形式:
while(表达式)
&&&&&& 其中,表达式是循环条件,语句为循环体。
while循环执行流程
&&&&&& while语句首先检验一个条件,也就是括号中的表达式。当条件为真时,就执行紧跟其后的语句或者语句块。每执行一遍循环,程序都将回到while语句处,重新检验条件是否满足。如果一开始条件就不满足的话,则跳过循环体里的语句,直接执行后面的程序代码。如果第一次检验时条件满足,那么在第一次或其后的循环过程中,必须有是的条件为假的操作,否则,循环无法终止。
&&&&&& while语句的意思就是当......(表达式)就......(语句),当符合条件时,就会执行while后面的语句:当不符合条件时,便不会执行while语句。书写时要注意其格式,不要在while后加分号,以免造成错误。
使用while语句应注意以下几点:
(1)while语句中的表达式一般是关系表达式或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
(2)循环体若包括一个以上的语句,则必须用{}括起来,组成复合语句。如果忽略了花括号的用途,语句块没有用花括号括起来,则while语句的范围只到while后面的第一个分号处结束,程序就会得不到预计的结果。
(3)注意循环条件的选择,以避免死循环。如果循环体中没有其他终止循环的手段,因此该循环将无休止地进行下去。
(4)允许while语句的循环体又是while语句,从而形成双重循环。
2、for循环语句在C语言中是最为常见的循环语句,其功能强大,而且用法灵活。
for语句的一般形式为:
for(表达式1(循环变量赋初值);表达式2(循环条件);表达式3(循环变量))
&&&&&& 每条for语句包含三个用分号隔开的表达式,这三个表达式可以是任意形式的表达四,大多数情况下都是用于对for循环的控制。for循环语句和while循环语句在语法上要求有一点相同,就是若在循环体内需要多条语句进行描述时,必须用花括号将多条语句括在一起,形成一条复合语句。
for循环执行流程
&&&&&& for循环中,语句的执行过程如下:
(1)先计算表达式1的值;
(2)然后计算表达式2的值,如果表达式2为真(非0),则执行一次循环体;否则,跳出循环,执行步骤5;
(3)计算表达式3的值;
(4)跳转回第2步,循环执行;
(5)循环结束,执行for循环下面的相应语句。
&&&&&& for循环三个表达式和语句块的作用如下:
&&&&&& 表达式1:用来完成标量的初始化,一般是一个赋值表达式,是用来控制循环的变量,所以称之为循环变量,表达式1称之为循环变量赋初值。
&&&&&& 表达式2:其作用主要是进行判断。表达式2的作用和while循环语句中表达式的作用大致相同。若判断为真,则执行循环体,否则跳出循环。每次执行完循环体都会再次判断表达式2的值,以此决定是否继续执行循环。
&&&&&& 表达式3:其主要功能为修改变量的值,使变量的值作出相应的改变,从而使循环程序逐渐接近结束条件,每执行一次循环体,都会相应地执行此表达式,对变量作出相应的修改。
&&&&&& 语句块:前面所说的循环体其实就是语句块,循环体可以是一条语句,或者是一条复合语句,最应该注意的就是复合语句的花括号“{}”问题。
&&&&&& 使用for循环应注意以下几点:
(1)省略表达式1时,其后的分号不能省略,当表达式1省略时,一般都需要在for循环语句之前给变量赋初值;
(2)省略表达式2时,即不判断循环条件,循环将无终止地进行下去,也就是默认表达式2始终为真;
(3)省略表达式3时,应该另外设法保证循环能正常结束,否则程序会无终止地循环下去。
3、do...while是C语言三种循环语句其中之一。
do...while语句的一般形式为:
while(表达式);
&&&&&& 其中语句是循环体,表达式是循环条件。
do...while循环执行流程
&&&&&& do...while语句首先执行一次循环体语句中的内容,然后判断表达式。当表达式的值为真时,返回重新执行循环体语句。循环执行,直到表达式的判断为假时止,此时循环结束。
&&&&&& 使用do...while循环应注意以下几点:
(1)在使用do...while语句时,条件要放在while关键字后面的括号里,最后必须加上一个分号;
(2)do...while语句也可以组成多重循环,而且也可以和while语句相互嵌套;
(3)在do和while之间的循环体由多个语句组成时,也必须用{}括起来,组成一个复合语句;
(4)do...while和while语句相互替换时,要注意修改循环控制条件。先执行一次循环体,再判断条件。
4、while与do...while的区别:
&&&&&& while语句和do...while语句的区别在于:do...while语句是先执行一次循环体,然后再判断。因此do...while语句至少要执行一次循环体。而while是先判断后执行,如果条件不成立或不满足,则一次循环体也不执行。
5、通过使用三种不同的循环计算从1加到100的值来表现for循环、while循环和do...while循环各自的特点。
&&&&&& 利用while循环计算从1加到100的和:
#include &stdio.h&
int main(int argc, const char * argv[]) {
int i = 1,sum = 0;
while (i &= 100) {
printf(&从1加到100的和是:%d\n&,sum);
&&&&&& 利用for循环计算从1加到100的和:
#include &stdio.h&
int main(int argc, const char * argv[]) {
int sum = 0;
for (int i=1; i&=100; i++) {
printf(&从1加到100的和是:%d\n&,sum);
&&&&&& 利用do...while循环计算从1加到100的和:
#include &stdio.h&
int main(int argc, const char * argv[]) {
int i = 1,sum = 0;
} while (i&=100);
printf(&从1加到100的和是:%d\n&,sum);
&&&&以上三种循环的打印结果都是5050,由此可知三种循环的最终结果是一样的,只是实现的过程和思路略有差别。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:4265次
排名:千里之外
原创:14篇使用循环计算1-2+3-4+5-6+....-100的值
代码为啥不可以这样:#include &stdio.h&int main(){
int sum = 0;
//定义计算结果变量sum
int i = 1;
//定义循环数字变量i
int flag = 1; //定义符号状态变量flag
//使用while循环
while(i&=100)
sum=sum+(flag-i);
printf("sum=%d\n",sum);
写下你的评论...
写下你的评论...
写下你的评论...
写下你的评论...
Copyright (C)
All Rights Reserved | 京ICP备 号-2

我要回帖

更多关于 c语言 宏 do while 的文章

 

随机推荐