news 2026/9/3 1:23:32

C语言中循环语句的一些简单运用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C语言中循环语句的一些简单运用

这段代码演示了C语言中循环语句的几种实际应用,包括计算阶乘,二分法查找,以及字符顺序演示。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <Windows.h>//内涵延时函数
#include <stdlib.h>//包含系统命令函数
#include <string.h>//包含与字符串相关的函数
int main()
{
//想办法(编程思维)+写代码(语法)

//计算i的阶乘
printf("1.计算10的阶乘\n");
int i=10;
int i_i=1;
for (;i > 0;i--)
{
i_i*=i;
}
printf("%d\n\n",i_i);

//1到10的阶乘相加
printf("2.计算1到10的阶乘相加\n");
int n=0,sum=0,s = 1;
int k=10;
for (;k > 0;k--)
{
for (n=k;n > 0;n--)
{
s*=n;
}
sum+=s;
s=1;
}

printf("%d\n\n",sum);

//在有序数组中查找具体的某个数字num
printf("3.在有序数组中查找具体的某个数字num\n");
int arr[] = {0,1,2,3,4,5,6,7,8,9};
int num=5;
i=0;
int sz=sizeof(arr)/sizeof(arr[0]);
for (;i < sz;i++)
{
if(num==arr[i])
{
printf("%d ",arr[i]);
printf("下标是%d\n\n",i);
break;
}
}
if (i == sz)
{
printf("找不到\n");
}

//有序数组的二分法查找提高效率
printf("4.在有序数组中使用二分法查找具体的某个数字num\n");
//首先找到中间元素;比较,需要比较几次?
int mid;
num=7;
int left=0;
int right= (sizeof(arr) / sizeof(arr[0]))-1;
while (left<=right)
{
mid=(left+right)/2;
if (arr[mid] < num)
{
left=mid+1;
}
else if (arr[mid] > num)
{
right=mid-1;
}
else
{
printf("find it,下标是%d\n",mid);
break;
}
if (left > right)
{
printf("404 not found\n");
}
}

for (i = 5;i > 0;i--)
{
printf("\n 即将演示字符:%d\n",i);
Sleep(1000);
}
system("cls");//清屏
//演示字符
char arr1[]="ciallo ciallo ciallo!!!";
char arr2[]="#######################";
int min=0;
int max=sizeof(arr1)/sizeof(arr1[0])-2;
//数组的末尾是\0,比strlen()方法算多1,且下标应再减1
for (;min <= max;min++, max--)
{
arr2[min]=arr1[min];
arr2[max]=arr1[max];
printf("%s\n",arr2);
Sleep(500);
system("cls");
}
if (strcmp(arr1, arr2)==0)
//strcmp()用于比较两个字符串是否相等,相等返回值为0
//当然,这行代码是多余的
{
printf("%s\n", arr2);
}

return 0;
}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/31 9:50:25

Excalidraw旋转与缩放:自由调整图形角度大小

Excalidraw 中的旋转与缩放&#xff1a;如何让手绘白板“动”起来 在一场远程产品评审会上&#xff0c;团队正用 Excalidraw 绘制系统架构图。突然有人指出&#xff1a;“这个微服务之间的调用箭头太僵硬了&#xff0c;像是被钉死在网格上。” 另一位成员回应&#xff1a;“如果…

作者头像 李华
网站建设 2026/9/2 20:09:54

C# 集合全面指南:种类、遍历、用法与注意事项

一、C# 集合概述C# 中的集合是用于存储和管理一组相关对象的特殊类&#xff0c;它们提供了比数组更强大的功能&#xff0c;如动态大小调整、排序、搜索等。二、集合的主要种类1. 非泛型集合 (System.Collections)// 已过时&#xff0c;不推荐在新项目中使用 ArrayList list ne…

作者头像 李华
网站建设 2026/9/3 0:12:35

Excalidraw动画功能揭秘:让你的图表动起来

Excalidraw动画功能揭秘&#xff1a;让你的图表动起来 在远程协作和敏捷开发成为常态的今天&#xff0c;如何让一个想法迅速被团队理解&#xff0c;往往决定了项目的推进效率。一张清晰的手绘草图&#xff0c;有时比十页PPT更有力。而当这张草图不仅能画出来&#xff0c;还能“…

作者头像 李华
网站建设 2026/9/2 13:48:53

Excalidraw错误排查手册:常见问题及解决方案

Excalidraw 错误排查手册&#xff1a;常见问题与实战解决方案 在现代技术团队的日常协作中&#xff0c;一张随手可画的“草图”往往比一份精雕细琢的PPT更能激发灵感。尤其在远程办公常态化、敏捷迭代加速的背景下&#xff0c;可视化表达已成为沟通效率的关键瓶颈之一。正是在这…

作者头像 李华
网站建设 2026/9/2 2:38:32

【C++】优选算法必修篇之双指针实战:快乐数 盛水最多的容器

1 1.3 题目示例 1.4 算法思路 首先在反复计算平方和过程中&#xff0c;数字会变化但是不会一直增大&#xff0c;这是为什么&#xff1f; 当一个数足够大的时候&#xff0c;比如999&#xff0c;它的平方和会小于原数&#xff0c;所以最终会进入一个人循环。比如4 → 16 → 37 →…

作者头像 李华
网站建设 2026/9/2 4:46:41

【C++】玩转模板:进阶之路

一、非类型模板参数1. 认识模板参数分为类类型形参和非类型形参。类类型模板参数&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的参数类型名称。非类型模板参数&#xff1a;就是用一个常量作为类(函数)模板的一个参数&#xff0c;在类(函数)模板中可…

作者头像 李华