从头学习C语言之for语句和循环嵌套

 更新时间:2022年01月27日 10:27:39   作者:极致猎手  
这篇文章主要为大家详细介绍了C语言之for语句和循环嵌套,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

for语句:

前言:

循环的基本结构离不开三个基本动作:

  • 初始化计数器
  • 循环条件
  • 更新计数器
int count=0;
while(count<10)
{
	printf("fishc!\n);
	count=count+1;

注意事项:

1.C99允许再for语句的表达式1中定义变量(在for循环里定义的变量出了循环就不能用了),

如:for(int i=0;i<100;i++)

2.在编译时要加上-std=c99,

如:gcc -std=c99 text11_2.c && ./a.out

语句形式:

…//其他语句
for(表达式1;表达式2;表达式3)
循环体
…///其他语句

执行顺序:

  • 1.初始化
  • 2.循环条件判断
  • 3.执行循环内容
  • 4.调整条件
  • 5.234循环进行,判断为错则停止循环

三个表达式用分号隔开,其中:

  • 表达式1是循环初始化表达式
  • 表达式2是循环条件表达式
  • 表达式3是循环调整表达式

流程图:

在这里插入图片描述

灵活运用:

  • 表达式1,表达式2和表达式3可以按照需要进行省略(但分号不能省):
  • for(;表达式2;表达式3)
  • for(表达式1;表达式2;)
  • for(表达式1; ; )
  • for(; ; )

示例:

例1:打印十次"孙哥真牛逼"

   #include <stdio.h>
   int main()
   {
     int count;
     for(count=0;count<10;count++)
     {
       printf("孙哥真牛逼!\n");
    }
    return 0;
  }  

例2:判断一个数是否为素数:

  • 素数☞在大于1的自然数中,除了1和此数自身外,无法被其他自然数整除的数。
  • 关于素数的求法有很多,这里我们用比较朴素暴力的方式:迭代测试2到num/2所有整数是否能被整除(num为待测试的整数),如果没有出现能被整除的整数,呢么它就是素数。
 #include<stdio.h>
 int main()
 {
   int i,num;
   _Bool flag=1;
   printf("请输入一个整数来判断是否为素数。");
   scanf("%d",&num);
   for(i=2;i<num/2;i++)
   {
        if(num%i==0)
        {
          flag=0;
        }
     }
     if(flag)
     {
       printf("%d是一个素数!\n",num);
     }
     else 
     {
       printf("%d不是一个素数!\n",num);
     }
    
     return 0;
   }      

循环嵌套:

C 语言允许在一个循环内使用另一个循环。

语句形式:

…//其他语句
for(表达式1;表达式2;表达式3)
{
for(表达式1;表达式2;表达式3)
{
循环体
}
}

流程图:

在这里插入图片描述

示例:

例1:

   #include<stdio.h>
   int main()
   {
     int i,j;
     for(i=0;i<3;i++)
     {
      for(j=0;j<3;j++)
      {
        printf("i=%d,j=%d\n",i,j);
      }
    }
    return 0;
  }              

例2:打印九九乘法表:

   #include<stdio.h>
   int main()
  {
    int i,j;
    for(j=1;j<10;j++)
    {
      for(i=1;i<=j;i++)
      {
        printf("%d*%d=%-2d\t",i,j,i*j);//%-2d:将结果以两位数的形式展现。
      }
    putchar('\n');//用putchar('\n')将光标移到下一行。                                                        
    }
    return 0;
  }

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!     

相关文章

  • C语言之地址传递和引用传递的问题

    C语言之地址传递和引用传递的问题

    这篇文章主要介绍了C语言之地址传递和引用传递的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • C++使用一个栈实现另一个栈的排序算法示例

    C++使用一个栈实现另一个栈的排序算法示例

    这篇文章主要介绍了C++使用一个栈实现另一个栈的排序算法,结合实例形式分析了C++借助辅助栈实现栈排序算法的相关操作技巧,需要的朋友可以参考下
    2017-05-05
  • C语言学籍管理系统源代码

    C语言学籍管理系统源代码

    这篇文章主要为大家详细介绍了C语言学籍管理系统源代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • CMake语法及CMakeList.txt简单使用小结

    CMake语法及CMakeList.txt简单使用小结

    Cmake主要用于开发跨平台的C++项目,本文主要介绍了CMake语法及CMakeList.txt简单使用小结,具有一定的参考价值,感兴趣的可以了解一下
    2022-05-05
  • opencv2实现10张图像上下左右拼接融合

    opencv2实现10张图像上下左右拼接融合

    这篇文章主要为大家详细介绍了opencv2实现10张图像上下左右拼接融合,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • C++ static函数调用问题小结

    C++ static函数调用问题小结

    静态成员变量是在程序编译时分配空间,而在程序结束时释放空间,这篇文章主要介绍了C++ static函数调用问题小结,需要的朋友可以参考下
    2024-03-03
  • 基于C语言实现个人通讯录管理系统

    基于C语言实现个人通讯录管理系统

    这篇文章主要为大家详细介绍了基于C语言实现个人通讯录管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • C++冒泡排序及其优化算法

    C++冒泡排序及其优化算法

    这篇文章主要为大家介绍了C++冒泡排序及其优化算法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2021-11-11
  • C++中的String的常用函数用法(最新推荐)

    C++中的String的常用函数用法(最新推荐)

    这篇文章主要介绍了C++中的String的常用函数用法总结,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-02-02
  • C++面试八股文之位运算问题详解

    C++面试八股文之位运算问题详解

    这篇文章主要为大家介绍了C++面试八股文之位运算的问题解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06

最新评论