c程序设计 循环结构程序设计for

for 循环
语法:
for(表达式1;表达式2;表达式3)
{
循环体
}
执行:首先执行表达式 1,然后判断表达式2是否成立,如果成立执行循环体,执行表达式3,然后继续判断表达式2是否成立,执行循环体…
如果表达式2不成立则结束循环
表达式2为循环条件
表达式1只执行一次,通常为循环变量赋初值
表达式3通常为循环变量的改变
表达式1;表达式2;表达式3全部可以省略,但是分号不能省略
2逗号运算符(,)
作用:分隔符,可以将多个表达式,通过逗号,连接成一个逗号表达式
for(i=1,sum=0;1<101;sum+=i,i++)
逗号表达式求解:至左至右来计算每一个表达式,并且将最后一个表达式的值,(最右边表达式的值)作为整个逗号表达式的值,在实际编程时,很少使用逗号表达式的值。
3:循环的嵌套:外循环执行一次,内循环执行一轮

输入一行字符,分别统计其中英文字母,空格,数字,和其它字符的个数

#include"stdio.h"
int main()
{
int t1,t2,t3,t4;
char c;
t1=t2=t3=t4=0;
//int t1=t2=0;不能直接这样定义,因为t1=t2=0这种表达式是从右到左的,也就是先执行t2=0,再执行t1=t2,相当于只定义了t1,而t2在没定义之前就在使用了
while((c=getchar())/*得到一个运行一次*/!='\n')
{
if(c>='a'&&c<='z'||c>='A'&&c<='Z')
t1++;
else if(c>='1'&&c<'10')
t2++;
else if(c==' ') t3++;//注意是等于等于
else t4++;
}
printf("t1=%d t2=%d t3=%d t4=%d",t1,t2,t3,t4);
}

输出所有水仙花数,所谓水仙花数是指一个3位数,其各位数字立方和等于该数本身,例如,153是水仙花数=111+555+333

#include"stdio.h"
int main()
{
int x=100,x1,x2,x3;
do
{
x3=x/100;//x3为百位数
x2=x/10%10;//x2为十位数
x1=x%10;//x1为个位数
if(x3*x3*x3+x2*x2*x2+x1*x1*x1==x)
printf("%d\n",x);
x++;
}while(x<=999);
}

求素数:某个数n除1和它本身外,不能被其它正整数,整除的数为素数,n除任何一个数余数都不为零

for循环

#include"stdio.h"
int main()
{
int j,i;
for(i=2;i<=100;i++)
{
int t=1;
for(j=2;j<i/2;j++)
{
if(i%j==0)
{
t=0;
break;
}
}
if(t==1)
printf("%d ",i);
}
}

while嵌套for循环

 #include"stdio.h"
int main()
{
int j,i;
i=2;
while(i<=100)
{
int t=1;
for(j=2;j<i/2;j++)
{
if(i%j==0)
{
t=0;
break;
}
}
if(t==1)
printf("%d ",i);
i++;
}
}

while循环

#include"stdio.h"
int main()
{
int i=2,j=2;//j=2不能只写在这里,因为每次循环j的指都要为2
while(i<=100)
{
int t=1;
j=2;//j要从2重新算起
while(j<i/2)
{
if(i%j==0)
{
t=0;
break;
}
j++;
}
if(t==1)
printf("%d ",i);
i++;
}
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值