服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C/C++ - 从头学习C语言之for语句和循环嵌套

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

2022-09-07 15:13极致猎手 C/C++

这篇文章主要为大家详细介绍了C语言之for语句和循环嵌套,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

for语句:

前言:

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

  • 初始化计数器
  • 循环条件
  • 更新计数器
?
1
2
3
4
5
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是循环调整表达式

流程图:

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

灵活运用:

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

示例:

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

?
1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
 int main()
 {
   int count;
   for(count=0;count<10;count++)
   {
     printf("孙哥真牛逼!\n");
  }
  return 0;

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

  • 素数☞在大于1的自然数中,除了1和此数自身外,无法被其他自然数整除的数。
  • 关于素数的求法有很多,这里我们用比较朴素暴力的方式:迭代测试2到num/2所有整数是否能被整除(num为待测试的整数),如果没有出现能被整除的整数,呢么它就是素数。
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#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;
  }     

循环嵌套:

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

语句形式:

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

流程图:

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

示例:

例1:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
#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:打印九九乘法表:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#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;
}

总结

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

原文链接:https://blog.csdn.net/HICKER_BOY/article/details/122546321

延伸 · 阅读

精彩推荐
  • C/C++C++实现LeetCode(21.混合插入有序链表)

    C++实现LeetCode(21.混合插入有序链表)

    这篇文章主要介绍了C++实现LeetCode(21.混合插入有序链表),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下...

    Grandyang8162021-11-25
  • C/C++c++ string的erase删除方法

    c++ string的erase删除方法

    这篇文章主要介绍了c++ string的erase删除方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    _icrazy_10522021-10-14
  • C/C++C++ EnterCriticalSection简单使用

    C++ EnterCriticalSection简单使用

    线程锁在多线程中可以控制线程的执行顺序,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    ytouch4502021-12-16
  • C/C++C++ namespace相关语法实例分析

    C++ namespace相关语法实例分析

    这篇文章主要介绍了C++ namespace相关语法实例分析,对C++初学者有很好的参考借鉴价值,需要的朋友可以参考下...

    C++教程网8732021-01-29
  • C/C++设计模式中的备忘录模式解析及相关C++实例应用

    设计模式中的备忘录模式解析及相关C++实例应用

    这篇文章主要介绍了设计模式中的备忘录模式解析及相关C++实例应用,备忘录模式也经常被用来在命令模式中维护可以撤销(Undo)操作的状态,需要的朋友可以...

    mafuli0077592021-03-26
  • C/C++C语言实现数字游戏

    C语言实现数字游戏

    这篇文章主要为大家详细介绍了C语言实现数字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    weixin_442527907622021-08-12
  • C/C++C++开发:为什么多线程读写shared_ptr要加锁的详细介绍

    C++开发:为什么多线程读写shared_ptr要加锁的详细介绍

    本篇文章介绍了,在C++中为什么多线程读写shared_ptr要加锁的详细说明。需要的朋友参考下...

    C++教程网5252020-11-22
  • C/C++C++求阶乘的两种方法

    C++求阶乘的两种方法

    这篇文章主要介绍了C++求阶乘的两种方法,有需要的朋友可以参考一下...

    C++教程网6002021-01-11