控制语句v5-v10

v5 goto-while语句

   

同样的代码用if循环来写,或者是用goto语句来写

开头添加for语句,添加了循环终止条件

这个loop也可以换名字,换成_loop也可以

把多个函数的出口集中到一处去

v6  while ,do while

肯定会做一次,之后再条件判断

打印所有的水仙花数

分析:怎么打印出所有的水仙花数?

       首先定义一个初始值为100的变量,之后一个个判断,再一个个递增,问题是

         1.判断完了之后放在哪里呢?又怎么把这些数都打印出来呢?利用循环打印出来就好,每一个符合条件的水仙花数,都打印出来,那个printf放在循环内部

         2.三位数的个位,百位,十位又怎么表示呢?百位和个位思考正确,十位需要多思考一步,我们可以用几个变量来过渡。

#include <stdio.h>

int main(int agrc,const *char argv[]){
     int num=100;
     int count=0;
   while(num>=100 && num<1000){
    if( num=((num/100)*(num/10)*(num%100)_{
          count++;
   }else{
           num++;    
    }
   printf("%");
  }

num/100 算出百位数字是多少,记为变量a

num%10 算出个位数字是多少,记为变量c

num/10%10 算出十位数字,记为变量b

水仙花数代码:

#include <stdio.h>

int main(int agrc,const *char argv[]){
     int num=100;
     int a,b,c;
     while(num<1000){//这边写<=999或者是<1000都正确
      
       a=num/100;
       b=num/10%10;
       c=num%100;
     if(a*a*a+b*b*b+c*c*c==num)
        printf("%d\n",n);
        num++;
       }
   return 0;
  }

v7 for语句

i=1为表达式1,可省略,但是应该在循环之前就赋值

i<=100为表达式2,省略了将陷入死循环

i++ 为表达式3,可省略,但是省略了要在循环体中增加使循环变量值改变的语句

利用for循环打印九九乘法表

   

两个循环语句就是可以进入双重循环,可以打印出这种乘法表的行和列

  for(i=0;i<=8;i++)

     for(j=0;i>=j;j++)

       printf("i*j=%d"); ×        printf( "%d*%d=%d\t", j,i,i*j);

第一个错误,是列*行,第二个错误,打印出来的每一个字母都要加格式控制符

99乘法表代码

#include <stdio.h>

int main(int argc,char *argv[])
 {
   int i,j;
   for(i=0;i<=9;i++){
     for(j=1;j<=i;j++)
        printf("%d*%d=%d",j,i,i*j);
    puts("");
      }
    return 0
}

程序运行结果

 

先把不加横线的打印出来,再加横线,就是在j的二重循环的时候分开写

v9-v10  循环辅助语句

break跳出循环语句的代码示例(!!!只是跳出一层循环)

怎么用代码判断素数?这句话说的不准确,只是说怎么判断,应该说在键盘上输入一个数,我们应该判断他是不是素数?是,则打印是的,不是则打印不是,用键盘上输入的数挨个除以从2开始的数。

contiue 结束本次循环,而break结束本轮循环

比如像这边当遇到一个数对3取余能为0的情况下,就结束本轮循环,跳到下一个,如果没有取到0,就打印出来,这边是continue的含义。

如果continue换成break的话,则到能够和3取余为0的情况下,就直接退出了,不再往下循环了。

利用break和continue辅助判断素数的程序,输入#,则结束程序

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值