当前位置: 首页 > news >正文

C 语言学习-04【结构化程序设计】

1、单分支结构语句

用单分支结构进行奇偶判断:

#include <stdio.h>int main() {int num;printf("Please enter an integer: ");scanf("%d", &num);if (num % 2 != 0) {printf("%d is odd! \n", num);}if (num % 2 == 0) {printf("%d is even! \n", num);}return 0;
}
  • 运行结果:
    在这里插入图片描述

2、双分支结构语句

用双分支结构进行奇偶判断:

#include <stdio.h>int main() {int num;printf("Please enter an integer: ");scanf("%d", &num);if (num % 2 != 0) {printf("%d is odd! \n", num);} else {printf("%d is even! \n", num);}return 0;
}
  • 运行结果:
    在这里插入图片描述

3、多分支结构语句

用多分支结构进行学生成绩的判断:

#include <stdio.h>int main() {int score;printf("Please enter score: ");scanf("%d", &score);if (score >= 90) {printf("A\n");} else if (score >= 80) {printf("good\n");} else if (score >= 70) {printf("medium\n"); } else if (score >= 60) {printf("pass\n");} else {printf("fail");}return 0;
}
  • 运行结果:
    在这里插入图片描述

4、分支语句的嵌套

判断某学生成绩 score 是否及格:

#include <stdio.h>int main() {int score;printf("Please enter score: ");scanf("%d", &score);if (score >= 60) {if (score >= 90) {printf("A\n");} else {printf("pass\n");}} else {printf("fail\n");}return 0;
}
  • 运行结果:
    在这里插入图片描述

5、switch 选择语句

输入一个简单的四则运算表达式,包含两个实数和一个运算符,输出计算结果:

#include <stdio.h>int main() {char op;double x, y;printf("Please enter an expression: ");scanf("%lf %c %lf", &x, &op, &y);switch (op) {case '+':printf("The expression results in: %.2f\n", x + y);break;case '-':printf("The expression results in: %.2f\n", x - y);break;case '*':printf("The expression results in: %.2f\n", x * y);break;case '/':printf("The expression results in: %.2f\n", x / y);break;default:printf("Operator error! \n");}return 0;
}
  • 运算结果:
    在这里插入图片描述

6、while 循环结构与执行流程

用 while 循环语句计算输入的 10 个整数和奇数的和:

#include <stdio.h>int main() {int num;int i = 1, sum = 0;int count = 0;printf("Please enter 10 integers at a time: ");while (i <= 10) {scanf("%d", &num);if (num % 2 != 0) {sum += num;count++;}i++;}if (count == 0) {printf("There are no odd numbers in the data!");} else {printf("Odd numbers are: %d\n", count);printf("Odd sum: %d", sum);}return 0;
}
  • 运算结果:
    在这里插入图片描述

7、for 循环语句与执行流程

打印出所有”水仙花数“:

#include <stdio.h>int main() {int a, b, c;int i;for (i = 100; i < 1000; i++) {a = i % 10;b = (i / 10) % 10;c = i / 100;if (a * a * a + b * b * b + c * c * c == i) {printf("%d\t", i);}}return 0;
}
  • 运行结果:
    在这里插入图片描述

用嵌套 for 循环方式计算 1 到 100 的素数和:

#include <stdio.h>int main() {int sum = 0, i = 0, j = 0;int count;printf("The prime numbers from 1 to 100 are: ");for (i = 2; i <= 100; i++) {count = 0;for (j = 2; j <= i / 2; j++) {if (i % j == 0) {count++;break;}}if (count == 0) {printf("%d ", i);sum += i;}}printf("\nThe sum of primes from 1 to 100 is: %d", sum);return 0;
}
  • 运算结果:
    在这里插入图片描述
    images%5Cimage-20241107233301176.png&pos_id=img-piAAi8Jj-1731048018050)

8、do-while 循环结果与执行流程

计算两个数的最大公约数

#include <stdio.h>int main() {int m, n, r, t;int m1, n1;printf("Please enter the first number: ");scanf("%d", &m);printf("Please enter the second number: ");scanf("%d", &n);m1 = m;n1 = n;if (m < n) {t = m;m = n;n = t;}do {r = m % n;m = n;n = r;} while (r != 0);printf("The greatest common divisor of %d and %d is %d\n", m1, n1, m);return 0;
}
  • 运行结果:
    在这里插入图片描述

9、循环结构嵌套

九九乘法表的打印:

#include <stdio.h>int main() {int i = 0, j = 0;printf("*");for (i = 1; i <= 9; i++) {printf("%8d", i);}printf("\n");for (i = 1; i <= 9; i++) {printf("%d", i);for (j = 1; j <= i; j++) {printf("%3d*%d=%2d", i, j, i * j);}printf("\n");}return 0;
}
  • 运行结果:
    在这里插入图片描述

10、辅助语句 break 和 continue

输入大于 2 的整数,判断该数是否为素数:

#include <stdio.h>int main() {int m, i, flag;flag = 1;printf("Please enter an integer greater than 2: ");scanf("%d", &m);for (i = 2; i < m; i++) {if (m % i == 0) {flag = 0;break;}}if (flag) {printf("%d is prime number! \n", m);} else {printf("%d is not prime number! \n", m);}return 0;
}
  • 运行结果为
    在这里插入图片描述

判断 1800 年到 2024 年之间的所有闰年并输出:

#include <stdio.h>int main() {int year;for (year = 1800; year <= 2024; year++) {if (!(year % 4 == 0 && year % 100 != 0 || year % 400 == 0)) {continue;}printf("%d ", year);if (year % 10 == 0) {printf("\n");}}return 0;
}
  • 运行结果:
    在这里插入图片描述

11、改良的计算器

改良版实现四则运算功能的计算器:

#include <stdio.h>int main() {double displayed_value;double new_entry;char command_character;printf("Improved computer program\n");printf("Tip: (number> )Enter number, (command> )Enter Operator +、-、*、/\n");printf("number> ");scanf("%lf", &displayed_value);getchar();printf("command> ");scanf("%c", &command_character);while (command_character != 'Q') {switch (command_character) {case 'c':case 'C':scanf("%lf", &displayed_value);break;case '+':printf("number> ");scanf("%lf", &new_entry);displayed_value += new_entry;break;case '-':printf("number> ");scanf("%lf", &new_entry);displayed_value -= new_entry;break;case 'x':case 'X':case '*':printf("number> ");scanf("%lf", &new_entry);displayed_value *= new_entry;break;case '/':printf("number> ");scanf("%lf", &new_entry);while (new_entry == 0) {printf("Divisor cannot be 0, please re-enter! \n");printf("number> ");scanf("%lf", &new_entry);}displayed_value /= new_entry;break;default:printf("Invalid input, please re-enter the command type! \n");}printf("Value: %lf\n", displayed_value);getchar();printf("command> ");scanf("%c", &command_character);}return 0;
}
  • 运算结果:
    在这里插入图片描述

相关文章:

C 语言学习-04【结构化程序设计】

1、单分支结构语句 用单分支结构进行奇偶判断&#xff1a; #include <stdio.h>int main() {int num;printf("Please enter an integer: ");scanf("%d", &num);if (num % 2 ! 0) {printf("%d is odd! \n", num);}if (num % 2 0) {prin…...

机器视觉:轮廓匹配算法原理

轮廓匹配的模板变量主要包括模板图像&#xff08;Template&#xff09;和待检测图像&#xff08;Source Image&#xff09; 在轮廓匹配中&#xff0c;模板变量主要包括一下几个关键部分&#xff1a; ‌模板图像&#xff08;Template&#xff09;‌&#xff1a;这是进行匹配的…...

动力商城-02 环境搭建

1.父工程必须满足&#xff1a;1.1删除src目录 1.2pom 2.依赖继承 //里面的依赖&#xff0c;后代无条件继承<dependencies></dependencies>//里面的依赖&#xff0c;后代想要继承&#xff0c;得自己声明需要使用&#xff0c;可以不写版本号&#xff0c;自动继承&l…...

【react】Redux基础用法

1. Redux基础用法 Redux 是一个用于 JavaScript 应用的状态管理库&#xff0c;它不依赖于任何 UI库&#xff0c;但常用于与 React 框架配合使用。它提供了一种集中式的状态管理方式&#xff0c;将应用的所有状态保存在一个单一的全局 Store&#xff08;存储&#xff09;中&…...

使用Python分析股票价格数据并计算移动平均线的实用指南

使用Python分析股票价格数据并计算移动平均线的实用指南 在金融市场中,移动平均线(Moving Average, MA)是一种常用的技术分析工具,用于平滑价格数据,帮助投资者识别趋势。本文将详细介绍如何使用Python分析股票价格数据,并计算移动平均线。我们将通过一个实际的案例来演…...

如何解决FPS低的问题?代码优化方法有哪些?

如果你是一名游戏开发者&#xff0c;或者对电脑性能有所追求的用户&#xff0c;那么你一定遇到过帧率&#xff08;FPS&#xff09;低的问题。帧率低会导致游戏卡顿、画面不流畅等问题&#xff0c;极大地影响了用户体验。本文将从代码层面探讨FPS低的原因&#xff0c;并提供一些…...

QT信号和槽与自定义的信号和槽

QT信号和槽与自定义的信号和槽 1.概述 这篇文章介绍下QT信号和槽的入门知识&#xff0c;通过一个案例介绍如何创建信号和槽&#xff0c;并调用他们。 2.信号和槽使用 下面通过点击按钮关闭窗口的案例介绍如何使用信号和槽。 创建按钮 在widget.cpp文件中创建按钮代码如下 …...

LC:二分查找——杂记

文章目录 268. 丢失的数字162. 寻找峰值 268. 丢失的数字 LC将此题归类为二分查找&#xff0c;并且为简单题&#xff0c;下面记一下自己对这道题目的思考。 题目链接&#xff1a;268.丢失的数字 第一次看到这个题目&#xff0c;虽然标注的为简单&#xff0c;但肯定不能直接排…...

GA/T1400视图库平台EasyCVR多品牌摄像机视频平台前端监控摄像头镜头的基础知识

在现代安全监控系统中&#xff0c;摄像机镜头作为捕捉图像的关键组件&#xff0c;其选择和应用直接影响到监控图像的质量和系统的整体性能。随着技术的发展&#xff0c;摄像机镜头的种类和功能也在不断扩展&#xff0c;以适应各种复杂的监控环境和需求。对于相机成像来讲&#…...

【C++】踏上C++的学习之旅(六):深入“类和对象“世界,掌握编程的黄金法则(一)

文章目录 前言1. "面向过程"和"面向对象"的碰撞1.1 面向过程1.2 面向对象 2. "类"的引入3. "类"的定义3.1 &#x1f349;语法展示&#xff1a;3.2 "类"的两种定义方式3.3 "类"的命名规则 4. 类的访问限定符以及封…...

【物联网技术】ESP8266 WIFI模块在STA模式下作为TCP客户端上电自动进入透传数据模式

前言:讲解如何在ESP8266 WIFI模块在STA模式下作为TCP客户端与网络调试助手(TCP服务器)上电自动进入透传数据模式,而不需重新再发指令配置进入透传模式。 演示视频: ESP8266 WIFI模块在STA模式下作为TCP客户端上电自动进入透传数据模式 wifi模块在STA模式下作为TCP客户端相…...

重构代码之用委托替代继承

在代码重构中&#xff0c;用委托替代继承 是一种用于改善代码设计和提高灵活性的重要技术。它的核心思想是&#xff0c;将子类与父类的直接继承关系转换为委托关系&#xff0c;即子类不再直接继承父类&#xff0c;而是通过持有父类的实例来访问所需的功能。 一、为什么需要用委…...

软件设计师下午题UML15分

一、涉及到的图及对应关系 二、例题 1.用例图和类图的例题 解析及答案 2.状态图和类图的例题 3.通信图和类图例题 例题...

css background-image背景图片轮播

1、CSS背景样式有以下几种&#xff1a; 背景颜色&#xff08;background-color&#xff09;&#xff1a;设置元素的背景颜色。背景图片&#xff08;background-image&#xff09;&#xff1a;设置元素的背景图片。背景重复&#xff08;background-repeat&#xff09;&#xff…...

java---认识异常(详解)

还有大家来到权权的博客~欢迎大家对我的博客提出意见哦&#xff0c;有错误会及时改进的~点击进入我的博客主页 目录 一、异常的概念及体系结构1.1 异常的概念1.2 异常的体系结构1.3异常的分类 二、异常的处理2.1防御式编程2.2 异常的抛出2.3 异常的捕获2.3.1异常声明throws2.3.…...

Linux基础学习笔记

Linux基础学习笔记 Linux目录结构&#xff1a; 具体的目录结构: /bin [重点] (/usr/bin 、 /usr/local/bin) • 是Binary的缩写, 这个目录存放着最经常使用的命令 /home [重点] • 存放普通用户的主目录&#xff0c;在Linux中每个用户都有一个自己的目录&#xff0c;一…...

自动泊车端到端算法 ParkingE2E 介绍

01 算法介绍 自主泊车是智能驾驶领域中的一项关键任务。传统的泊车算法通常使用基于规则的方案来实现。因为算法设计复杂&#xff0c;这些方法在复杂泊车场景中的有效性较低。 相比之下&#xff0c;基于神经网络的方法往往比基于规则的方法更加直观和多功能。通过收集大量专家…...

《手写Spring渐进式源码实践》实践笔记(第十七章 数据类型转换)

文章目录 第十七章 数据类型转换工厂设计实现背景技术背景Spring数据转换实现方式类型转换器&#xff08;Converter&#xff09;接口设计实现 业务背景 目标设计实现代码结构类图实现步骤 测试事先准备属性配置文件转换器工厂Bean测试用例测试结果&#xff1a; 总结 第十七章 数…...

W3C HTML 活动

关于W3C&#xff08;万维网联盟&#xff09;的HTML活动&#xff0c;我们可以从HTML的不同版本的发展历程中了解其主要的活跃时期和贡献。 HTML 2.0&#xff1a;这个版本的HTML是由Internet工程工作小组&#xff08;IETF&#xff09;的HTML工作组于1996年开发的。它是HTML的早期…...

机器学习—为什么我们需要激活函数

如果我们使用神经网络中每个神经元的线性激活函数&#xff0c;回想一下这个需求预测示例&#xff0c;如果对所有节点使用线性激活函数&#xff0c;在这个神经网络中&#xff0c;事实证明&#xff0c;这个大神经网络将变得与线性回归没有什么不同&#xff0c;所以这将挫败使用神…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

【Linux】shell脚本忽略错误继续执行

在 shell 脚本中&#xff0c;可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行&#xff0c;可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令&#xff0c;并忽略错误 rm somefile…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

AI书签管理工具开发全记录(十九):嵌入资源处理

1.前言 &#x1f4dd; 在上一篇文章中&#xff0c;我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源&#xff0c;方便后续将资源打包到一个可执行文件中。 2.embed介绍 &#x1f3af; Go 1.16 引入了革命性的 embed 包&#xff0c;彻底改变了静态资源管理的…...

回溯算法学习

一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...

数据库正常,但后端收不到数据原因及解决

从代码和日志来看&#xff0c;后端SQL查询确实返回了数据&#xff0c;但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离&#xff0c;并且ai辅助开发的时候&#xff0c;很容易出现前后端变量名不一致情况&#xff0c;还不报错&#xff0c;只是单…...

leetcode_69.x的平方根

题目如下 &#xff1a; 看到题 &#xff0c;我们最原始的想法就是暴力解决: for(long long i 0;i<INT_MAX;i){if(i*ix){return i;}else if((i*i>x)&&((i-1)*(i-1)<x)){return i-1;}}我们直接开始遍历&#xff0c;我们是整数的平方根&#xff0c;所以我们分两…...

Linux操作系统共享Windows操作系统的文件

目录 一、共享文件 二、挂载 一、共享文件 点击虚拟机选项-设置 点击选项&#xff0c;设置文件夹共享为总是启用&#xff0c;点击添加&#xff0c;可添加需要共享的文件夹 查询是否共享成功 ls /mnt/hgfs 如果显示Download&#xff08;这是我共享的文件夹&#xff09;&…...

Easy Excel

Easy Excel 一、依赖引入二、基本使用1. 定义实体类&#xff08;导入/导出共用&#xff09;2. 写 Excel3. 读 Excel 三、常用注解说明&#xff08;完整列表&#xff09;四、进阶&#xff1a;自定义转换器&#xff08;Converter&#xff09; 其它自定义转换器没生效 Easy Excel在…...