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

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

服务器之家 - 编程语言 - C/C++ - C语言中循环语句练习实例

C语言中循环语句练习实例

2022-08-28 16:56Ll_R_lL C/C++

大家好,本篇文章主要讲的是C语言中循环语句练习实例,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下

计算n的阶乘

?
1
2
3
4
5
6
7
8
9
10
11
12
int main()
{
int i=0;
int ret=1;
scanf("%d",&i);
for(i=1;i<=n;i++)
{
ret=ret*i;
}
printf("%d\n",ret);
return 0;
}
计算1!+2!+3!+.....+10!
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int main()
{计算1!+2!+3!+.....+10!
    int i = 0;
    int j = 0;
    int sum = 0;
    int ret = 1;
    for (i = 1; i <= 3; i++)
    {
        ret = 1;
        for (j = 1; j <= i; j++)
        {
            ret = ret * j;
            
        }sum += ret;
    }
    printf("%d\n", sum);
    return 0;
}//算法效率低
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//效率高的方法
int main()
{
    int n=0;
    int sum = 0;
    int ret = 1;//不可赋初值为0,0乘以任何数都为0
 for(n=1;n<=10;n++)
 {
     ret*=n;//阶乘
     sum+=ret;//求和
 }
 printf("%d\n",sum);
 reurn 0;
 }

在一个有序数组中查找具体的某个数字n

折半查找/二分查找(前提条件是数组有序)

left mid right

arr[mid]中间元素

?
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
26
27
28
29
30
31
32
33
34
35
int main()
{
    int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
    int k=10;//查找k,k的值可以是数组中的任意数
    int sz = sizeof(arr) / sizeof(arr[0]);//40/4
 
    int left = 0;
    int right = sz - 1;//-1是因为数组下标从0开始
 
    while (left <= right)//不能漏掉=
    {
        int mid = left + (right-left) / 2;//中间元素必须放到循环里面
        //int mid = (left + right) / 2;
        if (arr[mid] < k)
        {
            left = mid + 1;
 
        }
        else if (arr[mid] > k)
        {
            right = mid - 1;
        }
        else
        {
            printf("找到了下标是:%d\n", mid);
            break;
        }
    }
    if (left > right)
    {
        printf("找不到了\n");
 
    }
    return 0;
}

编写代码,演示多个字符从两端向中间汇聚

?
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
26
27
28
29
30
31
32
#include<string.h>
#include<windows.h>
#include<stdio.h>
 
int main()
{
    //下标从0开始且减去\0所以得减去2
    //sizeof(arr1)/sizeof(arr[0])-2;//4
    //char arr[] = "abc";
    //[a b c \0]
    
    char arr1[] = "welcome to bit!!!!!";
    char arr2[] = "###################";
    
    int left = 0;
    //int right = sizeof(arr1)/sizeof(arr[0])-2;
    int right strlen(arr1)-1;
    
    while (left <= right)
    {
        arr2[left] = arr1[left];
        arr2[right] = arr1[right];
        printf("%s\n",arr2);
        Sleep(1000);//单位是毫秒
        system("cls");
        left++;
        right--;
        
    }
    printf("%s\n",arr2);
   return 0;
}

模拟用户登录情景

密码最多输入三次,,正确则提示输入成功,输入三次错误就退出程序

两个字符的比较不能使用==,应该使用strcmp

?
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
26
27
28
#include<string.h>
#include<stdio.h>
 
int main()
{
    int i = 0;
    char password[20] = {0};
    //假设正确密码是“abcdef”
    for(i = 0; i < 3; i++)
    {
        printf("请输入密码:");
        scanf("%s",passsword);
        if(strcmp(password,"abcdef")==0)
        {
            printf("密码正确\n");
            break;
        }
       else
       {
           printf("密码错误,重新输入\n");
       }
    }
    if (i == 3)
    {
        printf("三次密码均错误,退出程序\n");
    }
    return 0;
}

到此这篇关于C语言中循环语句练习实例的文章就介绍到这了,更多相关C语言循环语句内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/Ll_R_lL/article/details/122524132

延伸 · 阅读

精彩推荐
  • C/C++VC中LINK 2001 和 LINK 2009 的错误的解决方法

    VC中LINK 2001 和 LINK 2009 的错误的解决方法

    最近将两个开源C++项目编译成windows版本的时候遇到很多问题,编译的时候总是报错,报的最多的是无法解析的外部符号”,经过近3天的折腾总算都通过了...

    薰衣草的旋律6572021-09-28
  • C/C++OpenCV绘制正多边形的方法

    OpenCV绘制正多边形的方法

    这篇文章主要为大家详细介绍了OpenCV绘制正多边形的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    激萌小宅4002021-07-17
  • C/C++mingw编译的windows命令行贪吃蛇示例

    mingw编译的windows命令行贪吃蛇示例

    这篇文章主要介绍了mingw编译的windows命令行贪吃蛇示例,需要的朋友可以参考下...

    C语言程序设计4742021-01-19
  • C/C++C语言实现简单的图书管理系统

    C语言实现简单的图书管理系统

    这篇文章主要为大家详细介绍了C语言实现简单的图书管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    Sriven9562021-10-27
  • C/C++c语言内存泄漏严重的解决方法

    c语言内存泄漏严重的解决方法

    这篇文章主要介绍了c语言内存泄漏的解决方法,帮助大家更好的理解和使用c语言开发,感兴趣的朋友可以了解下...

    华为云开发者社区7082021-09-27
  • C/C++基于C语言实现推箱子游戏

    基于C语言实现推箱子游戏

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

    每木昔月11812021-08-19
  • C/C++华为面试题答案找出最大长度子字符串

    华为面试题答案找出最大长度子字符串

    华为面试题:找出最大长度子字符串,打印并且返回长度。 例如 str = "abc123abcd234abcdefgha324adsdawqdasdaseqqwe345abchded",看下面的代码实现吧...

    C语言教程网9232021-01-11
  • C/C++C++中临时对象的常见产生情况及其解决的方案

    C++中临时对象的常见产生情况及其解决的方案

    这篇文章主要是探讨常见的临时对象产生的情况,及其如何避免和解决这种临时对象产生的方式。具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    呋喃吖10922022-01-05