控制语句与循环语句的使用

1:if语句

int main()
{
int a,sum=0;//sum初始值定义维持0
scanf("%d",&a);
if(a<10)
{
sum+=a;//+=相等于sum=sum+i
}
printf("d\n",a);
}

2:分层嵌套

int main()
{
int a;
scanf("%d",&a);
if(a!=0)
{
if(a>0&&a<10)
{
printf("%d\n",a);
}
}else
{
printf("%d\n",a--);
}

2:switch语句

1.    表达式不能是浮点型或字符串

2.   case后面的break可以省略,但是省略时会顺序执行,直到遇到break结束;

#include<stdio.h>

struct yue{
int year;
int month;
int day;
}data;//定义结构体存储data中的信息

int main()
{
int toatl=0;//接受月份所在天数的总和
typedef struct yue data t;//结构体名称重定义
printf(:pls input:");
scanf("%d%d%d",&t.year,&t.month,&t.day);
switch(t.month)//表达式不能为字符串或者浮点型数据
{
case 1:   break;
case 2: total=31;break;
.......
case 12: total=334;break;
default:
printf(“err”);
}
total+=t.day;//计算所在月份天数总和
if(t.year%4==0&&t.year%400==0||t.year%100!=0)//闰年判断条件
{
if(t.month>=3)//判断所在月份
{
total++;
}
printf("%d\n",total);
}

(1)只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。

(2)case标签必须是常量表达式,如42或者'4'。

(3)case标签必须是唯一性的表达式;也就是说,不允许两个case具有相同的值。

3:for循环语句的使用

for(初值;判断条件;增值或减值)

执行顺序:

首先执行表达式1进行赋值,然后判断表达式2是否成立,如果成立就进入循环执行语句块,再执行表达式3进行增值或减值然后继续判断表达式2是否成立,直到表达式2不成立退出循环

3.1:for循环嵌套的的使用:

int mian()
{
int a;
scanf("%d",&a);
for(int i=0;i<a;i++)//确定打印行数
{
for(int j=0;j<i;j++)//根据i的值确定—的打印个数
{
putchar('_');
}
for(int j=0;j<=i;j++)
{
putchar('F'-i);//打印字符F到A
}
putchar('\n);//执行完循环后以空格分隔开始下一行循环
}
return 0;
}


注释:水仙花数的实现:

思路:for循环,确定循环范围,定义三个变量接受,if判断各位立方和是否等于这个数本身

代码实现(片段)

int main()
{
int g,s,b;
for(int a=100;a<1000;a++)
{
g=a%10;
s=a/10%10;
b=a/100;
if(g*g*g+s*s*s+b*b*b==a)
{
printf("水仙花:%d:",a);
}
}
3.2:for 循环的三种变型形式:
3.2.1:
main()
{
int i=0;
for(;i<10;i++)
{
语句体1:
}

3.2.2:

int main()
{
int i=0;
for(;i<10;)
{
语句体:
i++;
}
}

3.2.3:

int main()
{
int i=0;
for(;;)//死循环
{
if(表达式)//定义if语句确定循环结束条件
{
语句体;
i++;
}else
{
break;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值