1.实例4-16 使用while循环结构编程求1~100的和
#include <stdio.h>
int main()
{
int i=1,sum=0; //在循环前给sum和i赋值
while (i<=100)
{
sum=sum+i;
i++; //i=i+1应该与其等价
}
printf("1加到100的和为:%d\n",sum);
return 0;
}
2.实例4-17从键盘接收一串字符,将其中的小写字母输入,并统计当前输入的总字符个数
#include <stdio.h>
int main()
{
int i = 0; //用于记录字符的个数
char ch;
while((ch=getchar())!='\n') // \n为回车
{
if(ch>='a'&&ch<='z')
printf("%c",ch);
i++;
}
printf("\n从键盘一共输入了%d个字符\n",i);
return 0;
}
1.getchar()函数从键盘上读入一个字符,并显示该字符(回显)【敲什么键盘上就会显示什么】,但只有第一个字符作为函数的返回值
2.将getchar()放入while循环当中就可以实现缓冲区中多个字符的清除
3.实例4-18
#include <stdio.h>
int main()
{
int n;
printf("请输入一个整数 n:");
scanf("%d",&n);
while(n==0)
{
printf("输入错误,请重新输入:");
scanf("%d",&n);
}
if(n>0)
printf("%d是一个正数\n",n);
else
printf("%d是一个负数\n",n);
return 0;
}
4.实例4-19使用do…while循环结构编程求1~100的所有奇数的和
#include <stdio.h>
int main()
{
int i=1,sum=0;
do
{
sum+=i;
i=i+2;
}while(i<=100);
printf("100以内的所有奇数的累加和为:%d\n",sum);
return 0;
}
5.实例4-21使用do…while循环,求Π的近似值,要求最后一项的绝对值小于10的负6
#include <stdio.h>
#include <math.h> //要调用绝对值函数fabs()
int main()
{
int sign=1;
float i=1.0,sum=0.0;
float item =1;
do
{
sum=sum+item;
i=i+2;
sign=-sign; //保证一正一负
item=1/i*sign;
} while(fabs(1/i)>=1e-6); //1e-6科学计数法
printf("pi=%f\n",sum*4); //printf,后面可以sum*4,study一下
return 0;
}
C语言中fabs()函数是返回某一个值的绝对值的一个函数
6.实例4-23用for循环语句求1~100所有偶数的和
#include <stdio.h>
int main()
{
int i,sum=0;
for(i=2;i<=100;i+=2)
sum+=i;
printf("100以内的所有偶数的累加和为:%d\n",sum);
return 0;
}
7.使用for循环语句求Fibonacci(斐波那契)数列:1,1,2,3,5,8,…的前40项,F1=1,F2=2,Fn=Fn-1+Fn-2(n>=3)
#include <stdio.h>
int main()
{
int i,f1=1,f2=1;; //定义循环变量i,用于控制循环的次数 定义变量f1,f2,分别表示数列的相邻两项
for(i=1;i<=20;i++) //每次求出数列中的两个数,故循环结构条件为i<=20
{
printf("%12d %12d",f1,f2);
if(i%2==0) //这个if语句大概是为了输出的结果好看
printf("\n");
f1=f1+f2;
f2=f2+f1;
}
return 0;
}
%md:m是指定的输出字段的宽度,如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出
8.实例4-25使用for语句编写求n!
#include <stdio.h>
int main()
{
int n,i;
int factorial=1;
printf("\n请输入一个整数n:\n");
scanf("%d",&n);
for(i=1;i<=n;i++)
factorial*=i;
printf("\n%d!=%d\n",n,factorial);
return 0;
}
心得
笑死了,笔记写了一个实例就想来写心得
浅浅采纳一下某人的建议,写点小注释(主打一个try)