C#经典编程100道——流程控制(持续更新中)
顺序结构选择结构if结构使用goto 允许玩5次 猜打了或者猜小了 猜对了 对应的提示 不合法输入的提示 不在1-100的提示Random rnd new(); int randomNumber rnd.Next(1, 101); int count 0; Console.WriteLine(欢迎来到猜字游戏允许玩家玩5次); Console.WriteLine(randomNumber); InputNumber: if (count 5) { Console.WriteLine(你5次机会已用完); return; } Console.Write(请输入数字); string? inputNumber Console.ReadLine(); if (!int.TryParse(inputNumber, out int number)) { Console.WriteLine(输入格式错误,请输入数字); goto InputNumber; } if (number 1 || number 100) { Console.WriteLine(输入数字不在范围请输入1-100数字); goto InputNumber; } if (number randomNumber) { Console.WriteLine(猜大了); count; Console.WriteLine($你还有{5 - count}次机会); goto InputNumber; } else if (number randomNumber) { Console.WriteLine(猜小了); count; Console.WriteLine($你还有{5 - count}次机会); goto InputNumber; } else { Console.WriteLine(猜对了); }switch结构要求用户输入一个年份和月份1-12然后输出该月的天数考虑闰年Console.Write(请输入年份); if (!int.TryParse(Console.ReadLine(), out int year) || year 1) { Console.WriteLine(年份输入无效); return; } Console.Write(请输入月份1-12); if(!int.TryParse(Console.ReadLine(), out int month) || month 1 || month 12) { Console.WriteLine(年份输入无效); return; } int days; switch (month) { case 4: case 6: case 9: case 11: days 30 ; break; case 2: bool isLeep (year % 4 0 year % 100 ! 0) || (year % 400 0); days isLeep ? 29 : 28; break; default: days31; break; } Console.WriteLine(${year}年{month}月有{days}天);用户输入两个数字判断两个数的大小并输出较大的数字Console.Write(请输入第一个数字: ); if(!int.TryParse(Console.ReadLine(),out int num1)) { Console.WriteLine(输入格式错误请输入第一个数字); return; } Console.Write(请输入第二个数字: ); if (!int.TryParse(Console.ReadLine(), out int num2)) { Console.WriteLine(输入格式错误请输入第二个数字); return; }// 使用 switch 语句判断较大数字 switch (num1 num2) { case true: Console.WriteLine($较大的数字是: {num1}); break; case false: Console.WriteLine($较大的数字是: {num2}); break; default: Console.WriteLine($两者相等均为{num1}); break; }循环结构for循环计算0-100之间的奇数和、偶数和int sumOdd 0; int sumEven 0; for (int i 1; i 100; i 2) sumOdd i; for (int i 0; i 100; i 2) sumEven i; Console.WriteLine($奇数和为{sumOdd},偶数和为{sumEven});获取100之间能够被5整除的所有的数for (int i 5; i 100; i 5) Console.WriteLine(${i}能被5整除);计算10 * 9 * 8 ... *1的结果StringBuilder sb new StringBuilder(); int factorial 1; for (int i 10; i 1; i--) { factorial * i; sb.Append(i);//拼接数字 //不是最后一位就加乘号 if (i 1) { sb.Append(*); } } Console.WriteLine(${sb}{factorial});求 1 - 1000 以内所有的完美数除自身以外所有因子之和等于这个数就是完美数。StringBuilder sb new(); for (int i 1; i 1000; i) { int sum 0; int sqrt(int)Math.Sqrt(i); for (int j 1; j sqrt; j) { if (i % j 0) { int factor i / j; sum j;//加上小因数 if (factor ! j factor ! i)//避免重复加平方根和自身 { sum factor; } } } if (sum i) { sb.Append(${i} ); } } Console.WriteLine($1-1000之间的完美数是{sb});while循环目标是搬砖500个第一次搬砖1个后面因为更加熟练每次递增一倍1、2、4、8、16.32 64 128 256.., 搬砖500个需要多少次int total 0; int times 0; int brick 1;//第一次搬1个 while (total 500) { total brick; times; brick * 2;//数量翻倍 } Console.WriteLine($搬够500个砖一共需要{total});有一个学校现在有8个人每年学院增长23%几年后学员可以达到100人int years 0; double people 8; double rate 1.23; while (people 100) { people * rate; years; } Console.WriteLine($需要{years}年学员人数可以达到100人);用户输入10个数字计算10个数字的总和、平均值int count 1; double sum 0; while (count 10) { Console.Write($请输入第{count}数字); string? input Console.ReadLine(); //输入合法才累加 if (!double.TryParse(input, out double num)) { Console.WriteLine(输入格式错误请输入数字); } else { sum num; count; } } //计算平均值 double avg sum / 10; Console.WriteLine($总和为{sum}); Console.WriteLine($平均数为{avg:F2});让用户输入一系列数字直到用户输入 0 为止。然后程序计算这些数字的平均值并输出double sum 0; int count 0; while (true) { Console.WriteLine(请输入数字(输入0结束)); string? input Console.ReadLine(); if (!double.TryParse(input, out double number)) { Console.WriteLine(输入格式错误请输入数字); continue; } if (number 0) break; sum number; count; } if (count 0) { Console.WriteLine(未输入任何有效数字无法计算平均值); } else { Console.WriteLine($总和:{sum:F2}); Console.WriteLine($平均值:{sum / count:F2}); }使用 while 循环判断用户输入的数字是否为素数。素数是指只能被 1 和它本身整除的数字。while (true) { bool isPrime true; Console.Write(请输入一个数字(输入非数字退出)); string? input Console.ReadLine(); if (!int.TryParse(input, out int num)) { Console.WriteLine(输入无效程序结束); break; } if (num 2) { isPrime false; } else { int i 2; while (i * i num) { if (num % i 0) { isPrime false; break; } i; } } Console.WriteLine(isPrime ? ${num}是素数\n : ${num}不是素数\n); }3个可乐瓶可以换一瓶可乐现在有364瓶可乐。问一共可以喝多少瓶可乐剩下几个空瓶?//空瓶 int num 364; //剩余的空瓶 int coke 0; //喝了多少瓶 int drink 364; while (num 3) { num (num coke) / 3; coke (num coke) % 3; drink num; } Console.WriteLine($喝了{drink}瓶剩余{numcoke}个空瓶子);do...while循环(使用do while) 用户输入一个正整数 n程序输出斐波那契数列的前 n 项int a 1, b 1; int i 0; int n; do { Console.WriteLine(请输入一个正整数n); } while (!int.TryParse(Console.ReadLine(), out n) || n 0); do { Console.Write(a ); int t a b; a b; b t; i; } while (i n);

相关新闻

VMware安装CentOS 7.9完整实战指南

VMware安装CentOS 7.9完整实战指南

1. 为什么现在还要手把手教VMware装Linux?这事儿没你想得那么简单 我带过三届高校Linux实训课,也给二十多家中小企业的运维团队做过虚拟化环境搭建培训。每次开课前问学员:“谁在VMware里成功装过CentOS?”举手的不到三分之一&…

2026/9/26 8:05:09 阅读更多 →
Apex Amp 高级用法实战:梯度裁剪、多模型/多优化器/多损失训练与自定义数据批处理

Apex Amp 高级用法实战:梯度裁剪、多模型/多优化器/多损失训练与自定义数据批处理

人工智能大模型音乐生成音频预训练 【免费下载链接】jukebox Code for the paper "Jukebox: A Generative Model for Music" 项目地址: https://gitcode.com/gh_mirrors/ju/jukebox 点击查看 免费下载 本文以 advanced.rst 为主线,系统讲解 A…

2026/9/26 8:05:09 阅读更多 →
VMware安装卡在虚拟网络驱动?排查与解决全攻略

VMware安装卡在虚拟网络驱动?排查与解决全攻略

1. 卡在“正在安装虚拟网络驱动程序”到底卡住了什么装 VMware Workstation 的时候,进度条走到“正在安装虚拟网络驱动程序”这一步突然不动了,等十分钟、半小时还是那个界面,点取消又取消不掉,强杀进程之后重装还是卡在同一个位置…

2026/9/26 8:04:08 阅读更多 →

最新新闻

数智码力:普通人学Python,不必追求独立开发项目,会“改造脚本”就够用

数智码力:普通人学Python,不必追求独立开发项目,会“改造脚本”就够用

很多新手自学Python,都被错误的学习标准误导:认为学Python的终极目标,是从零独立开发完整项目,写出专属代码。达不到这个标准,就觉得自己没学好、学无用功。其实对于99%的普通人、职场人、学生而言,完全不需…

2026/9/26 8:50:36 阅读更多 →
llama.cpp KV缓存量化实战:降低71%显存的关键技术

llama.cpp KV缓存量化实战:降低71%显存的关键技术

1. 项目概述:为什么“KV量化”成了llama.cpp长上下文落地的生死线最近两周,我在给一个嵌入式边缘设备部署7B级别大模型时,连续踩了三次显存墙——不是GPU爆显存,而是Android端用llama.cpp跑4K上下文直接OOM。直到我把-kv参数从默认…

2026/9/26 8:50:36 阅读更多 →
WorkBuddy Enterprise企业级Agent平台:从超级个体到超级团队的落地实践

WorkBuddy Enterprise企业级Agent平台:从超级个体到超级团队的落地实践

1. 从「超级个体」到「超级团队」:这个平台到底在解决什么问题 第一次看到「WorkBuddy Enterprise」这个名字,我脑子里蹦出来的第一个念头是:腾讯云终于把 CodeBuddy 那套东西往企业级方向推了。如果你最近半年一直在关注 AI Agent 这个赛道&…

2026/9/26 8:50:36 阅读更多 →
达芬奇稳定工作流配置指南:硬件适配、GPU加速与许可证管理

达芬奇稳定工作流配置指南:硬件适配、GPU加速与许可证管理

1. 这不是“破解教程”,而是一套可长期稳定使用的达芬奇专业工作流配置方案 达芬奇(DaVinci Resolve)——这个名字在影视后期圈里,几乎等同于“调色天花板”和“剪辑全能王”。但凡做过3分钟以上成片的人,都绕不开它&…

2026/9/26 8:50:35 阅读更多 →
燃料电池复合能源系统三十六计:从架构选型到运维实战

燃料电池复合能源系统三十六计:从架构选型到运维实战

干过几年燃料电池复合能源系统的人都有个共同感受:整个系统里最让人头疼的不是电堆本身,而是电堆周围那一圈“配角”——锂电池充放电策略对不对、DC/DC选型留了多少裕量、冬天冷却液能不能拉起来、故障码出现之后保护动作顺序合不合理。所谓复合能源&am…

2026/9/26 8:50:35 阅读更多 →
MySQL 5.7.22 生产部署指南:兼容性、安全初始化与 systemd 管理

MySQL 5.7.22 生产部署指南:兼容性、安全初始化与 systemd 管理

简介:本资源为MySQL 5.7.22官方Windows 32位安装包(mysql-5.7.22-win32),面向数据库初学者、运维人员及中小型项目开发者,用于快速部署稳定可靠的开源关系型数据库环境。压缩包共365个文件,含83个动态链接库…

2026/9/26 8:49:35 阅读更多 →

日新闻

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、…

2026/9/26 0:00:25 阅读更多 →
学校官网模拟全流程实践:从页面布局到后端接口与部署

学校官网模拟全流程实践:从页面布局到后端接口与部署

如果你正在找一门 Web 大作业的题目,或者刚开始接触 Web 前端开发想做点能拿来展示的东西,“学校官网模拟”几乎是最稳的选择。题目看着简单,但要把导航、新闻列表、轮播 Banner、二级页面、后台数据都串起来,其实已经把前端布局、…

2026/9/26 0:00:25 阅读更多 →
超级玛丽游戏源码C++:从零搭建横版跳跃游戏工程

超级玛丽游戏源码C++:从零搭建横版跳跃游戏工程

简介:这是一份面向游戏开发初学者与C进阶学习者的超级玛丽(超级马里奥)游戏源码,基于C面向对象编程实现,适合想通过经典项目理解游戏主循环、角色类设计、地图关卡加载与物理碰撞检测的读者参考。压缩包共49个文件&…

2026/9/26 0:00:25 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/25 19:27:14 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/25 11:15:26 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/25 20:29:09 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/25 20:29:43 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/25 20:29:31 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/25 19:27:26 阅读更多 →