热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

第二章:分支结构

【例3-1】简单的猜数游戏。输入你所猜的整数(假定1~100内),与计算机产生的被猜数比较,若相等,显示猜中&

【例3-1】简单的猜数游戏。输入你所猜的整数(假定1~100内),与计算机产生的被猜数比较,若相等,显示猜中;若不等,显示与被猜数的大小关系。

/*简单的猜数游戏*/
#include

int main(void)
{
int mynumber=38;int yournumber;printf("Input your number:");scanf("%d",&yournumber);if(yournumber=mynumber)printf("Ok!you are right!\n");elseif(yournumber>mynumber)printf("Sorry!your number is bigger than my number!\n");elseprintf("Sorry!your number is smaller than my number!\n");return 0;
}

 

【例3-2】输入一个整数,判断该数是奇数还是偶数。

/*判断是奇数还是偶数*/
#include

int main(void)
{
int number;printf("Enter a number:");scanf("%d",&number);if(number%2==0){printf("The number is even.\n");}else{printf("The number is odd.\n");}return 0;
}

 

【例3-3】输入一个正整数n,再输入n个学生的成绩,计算平均分,并统计不及格成绩的学生人数。

/* 输入一批学生的成绩,计算平均分,并统计不及格成绩的学生人数*/
#include

int main(void)
{
int count,i,n;double grade,total;printf("Enter n:");scanf("%d",&n);total&#61;0;count&#61;0;for(i&#61;1;i<&#61;n;i&#43;&#43;){printf("Enter grade#%d:",i);scanf("%lf",&grade);total&#61;total&#43;grade;if(grade<60){count&#43;&#43;;}}printf("Grade average&#61;%.2f\n",total/n);printf("Number of failures&#61;%d\n",count);return 0;
}

 

【例3-4】继续讨论例2-4中提出的分段计算水费问题。

/*计算多分段函数*/
#include

int main(void)
{
double x,y;printf("Enter x:");scanf("%lf",&x);if(x<0){y&#61;0;}else if(x<&#61;15){y&#61;4*x/3;}else{y&#61;2.5*x-10.5;}printf("f(%.2f)&#61;%.2f\n",x,y);return 0;
}

 

【例3-5】求解简单的四则运算。

/*求解简单的四则运算*/
#include

int main(void)
{
double value1,value2;char op;printf("Type in an expression:");scanf("%lf%c%lf",&value1,&op,&value2);if(op&#61;&#61;&#39;&#43;&#39;)printf("&#61;%.2f\n",value1&#43;value2);else if(op&#61;&#61;&#39;-&#39;)printf("&#61;%.2f\n",value1-value2);else if(op&#61;&#61;&#39;/&#39;)printf("%.2f\n",value1/value2);elseprintf("Unknown operator\n");return 0;
}

 

【3-6】略

 

【3-7】输入10个字符&#xff0c;统计其中英文字母&#xff0c;数字字符和其他字符个数。

/* 统计字符&#xff0c;包括英文字母、数字字母和其他字母的个数 */
#include

int main(void)
{
int digit,letter,other;char ch;int i;digit&#61;letter&#61;other&#61;0;printf("Enter 10 characters:");for(i&#61;1;i<&#61;10;i&#43;&#43;){ch&#61;getchar();if(ch>&#61;&#39;a&#39;&& ch<&#61;&#39;z&#39;)//(ch>&#61;&#39;A&#39;&& ch<&#61;&#39;Z&#39;))letter&#43;&#43;;else if(ch>&#61;&#39;0&#39;&& ch<&#61;&#39;9&#39;)digit&#43;&#43;;elseother&#43;&#43;;}printf("letter&#61;%d,digit&#61;%d,other&#61;%d\n",letter,digit,other);return 0;
}

 

【例3-8】查询自动售货机中商品的价格。

/* 查询自动售货机中商品的价格 */
#include

int main(void)
{
int choice,i;double price;for(i&#61;1;i<&#61;5;i&#43;&#43;){printf("[1]Select crisps\n");printf("[2]Select popcorn\n");printf("[3]Select chocolate\n");printf("[4]Select cola\n");printf("[0]exit\n");printf("Enter choice:");scanf("%d",&choice);if(choice&#61;&#61;0)break;switch(choice){case1:price&#61;3.0;break;case2:price&#61;2.5;break;case3:price&#61;4.0;break;case4:price&#61;3.5;break;default:price&#61;0.0;break;}}printf("Thanks\n");return 0;
}

 

【3-9】求解简单表达式。

/*求解简单的四则运算表达式*/
#include

int main(void)
{
double value1,value2;char op;printf("Type in an expression:");scanf("%lf%c%lf",&value1,&op,&value2);switch(op){case&#39;&#43;&#39;:printf("&#61;%.2f\n",value1&#43;value2);break;case&#39;-&#39;:printf("&#61;%.2f\n",value1-value2);break;case&#39;*&#39;:printf("&#61;%.2f\n",value1*value2);case&#39;/&#39;:printf("&#61;%.2f\n",value1/value2);break;default:printf("Unknown operator\n");break;}return 0;
}

 

【3-10】输入10个字符&#xff0c;分别统计出其中空格或回车&#xff0c;数字字符和其他字符的个数。

/* 统计字符&#xff0c;包括空格或回车、数字字符和其他字符的个数 */
#include

int main(void)
{
int blank,digit,other;char ch;int i;blank&#61;digit&#61;other&#61;0;printf("Enter 10 characters:");for(i&#61;1;i<&#61;10;i&#43;&#43;){ch&#61;getchar();switch(ch){case&#39; &#39;:case&#39;\n&#39;:blank&#43;&#43;;break;case&#39;0&#39;: case&#39;1&#39;: case&#39;2&#39;: case&#39;3&#39;: case&#39;4&#39;:case&#39;5&#39;: case&#39;6&#39;: case&#39;7&#39;: case&#39;8&#39;: case&#39;9&#39;:digit&#43;&#43;;break;default:other&#43;&#43;;break;}}printf("blank&#61;%d,digit&#61;%d,other&#61;%d\n",blank,blank,digit,other);return 0;
}

 

【例3-11】求简单表达式。

/*求解简单的四则运算表达式*/
#include

int main(void)
{
double value1,value2;char op;printf("Type in an expression:");scanf("%lf%c%lf",&value1,&op,&value2);if(op&#61;&#61;&#39;&#43;&#39;)printf("&#61;%.2f\n",value1&#43;value2);else if(op&#61;&#61;&#39;-&#39;)printf("%.2f\n",value1-value2);else if(op&#61;&#61;&#39;*&#39;)printf("&#61;%.2f\n",value1*value2);else if(op&#61;&#61;&#39;/&#39;)if(value2!&#61;0)printf("&#61;%.2f\n",value1/value2);elseprintf("Divisor can not be 0!\n");elseprintf("Unknown operator!\n");return 0;
}

 

心得&#xff1a;敲代码时&#xff0c;一定要敲完整。不要漏了哪一条&#xff0c;有时候敲漏了&#xff0c;但组建时并不能找出其中的错误&#xff0c;依然能够运行&#xff0c;但结果会有一点不同。

问题&#xff1a;在组建有错误后&#xff0c;怎样能快速地找出错误所在&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;

转:https://www.cnblogs.com/zhangling213549/p/3353827.html



推荐阅读
  • 深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案
    深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案 ... [详细]
  • 开发笔记:实现1353表达式中的括号匹配(栈的应用) ... [详细]
  • 【问题】在Android开发中,当为EditText添加TextWatcher并实现onTextChanged方法时,会遇到一个问题:即使只对EditText进行一次修改(例如使用删除键删除一个字符),该方法也会被频繁触发。这不仅影响性能,还可能导致逻辑错误。本文将探讨这一问题的原因,并提供有效的解决方案,包括使用Handler或计时器来限制方法的调用频率,以及通过自定义TextWatcher来优化事件处理,从而提高应用的稳定性和用户体验。 ... [详细]
  • Java Socket 关键参数详解与优化建议
    Java Socket 的 API 虽然被广泛使用,但其关键参数的用途却鲜为人知。本文详细解析了 Java Socket 中的重要参数,如 backlog 参数,它用于控制服务器等待连接请求的队列长度。此外,还探讨了其他参数如 SO_TIMEOUT、SO_REUSEADDR 等的配置方法及其对性能的影响,并提供了优化建议,帮助开发者提升网络通信的稳定性和效率。 ... [详细]
  • 本文介绍了如何利用Struts1框架构建一个简易的四则运算计算器。通过采用DispatchAction来处理不同类型的计算请求,并使用动态Form来优化开发流程,确保代码的简洁性和可维护性。同时,系统提供了用户友好的错误提示,以增强用户体验。 ... [详细]
  • 在C++程序中,文档A的每一行包含一个结构体数据,其中某些字段可能包含不同数量的数字。需要将这些结构体数据逐行读取并存储到向量中,随后不仅在控制台上显示,还要输出到新创建的文档B中。希望得到指导,感谢! ... [详细]
  • 在Android平台中,播放音频的采样率通常固定为44.1kHz,而录音的采样率则固定为8kHz。为了确保音频设备的正常工作,底层驱动必须预先设定这些固定的采样率。当上层应用提供的采样率与这些预设值不匹配时,需要通过重采样(resample)技术来调整采样率,以保证音频数据的正确处理和传输。本文将详细探讨FFMpeg在音频处理中的基础理论及重采样技术的应用。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • 在处理 XML 数据时,如果需要解析 `` 标签的内容,可以采用 Pull 解析方法。Pull 解析是一种高效的 XML 解析方式,适用于流式数据处理。具体实现中,可以通过 Java 的 `XmlPullParser` 或其他类似的库来逐步读取和解析 XML 文档中的 `` 元素。这样不仅能够提高解析效率,还能减少内存占用。本文将详细介绍如何使用 Pull 解析方法来提取 `` 标签的内容,并提供一个示例代码,帮助开发者快速解决问题。 ... [详细]
  • 本文探讨了如何利用Java代码获取当前本地操作系统中正在运行的进程列表及其详细信息。通过引入必要的包和类,开发者可以轻松地实现这一功能,为系统监控和管理提供有力支持。示例代码展示了具体实现方法,适用于需要了解系统进程状态的开发人员。 ... [详细]
  • 使用Maven JAR插件将单个或多个文件及其依赖项合并为一个可引用的JAR包
    本文介绍了如何利用Maven中的maven-assembly-plugin插件将单个或多个Java文件及其依赖项打包成一个可引用的JAR文件。首先,需要创建一个新的Maven项目,并将待打包的Java文件复制到该项目中。通过配置maven-assembly-plugin,可以实现将所有文件及其依赖项合并为一个独立的JAR包,方便在其他项目中引用和使用。此外,该方法还支持自定义装配描述符,以满足不同场景下的需求。 ... [详细]
  • 分享一款基于Java开发的经典贪吃蛇游戏实现
    本文介绍了一款使用Java语言开发的经典贪吃蛇游戏的实现。游戏主要由两个核心类组成:`GameFrame` 和 `GamePanel`。`GameFrame` 类负责设置游戏窗口的标题、关闭按钮以及是否允许调整窗口大小,并初始化数据模型以支持绘制操作。`GamePanel` 类则负责管理游戏中的蛇和苹果的逻辑与渲染,确保游戏的流畅运行和良好的用户体验。 ... [详细]
  • QT框架中事件循环机制及事件分发类详解
    在QT框架中,QCoreApplication类作为事件循环的核心组件,为应用程序提供了基础的事件处理机制。该类继承自QObject,负责管理和调度各种事件,确保程序能够响应用户操作和其他系统事件。通过事件循环,QCoreApplication实现了高效的事件分发和处理,使得应用程序能够保持流畅的运行状态。此外,QCoreApplication还提供了多种方法和信号槽机制,方便开发者进行事件的定制和扩展。 ... [详细]
  • 在Django中提交表单时遇到值错误问题如何解决?
    在Django项目中,当用户提交包含多个选择目标的表单时,可能会遇到值错误问题。本文将探讨如何通过优化表单处理逻辑和验证机制来有效解决这一问题,确保表单数据的准确性和完整性。 ... [详细]
  • 本文探讨了如何在C#应用程序中通过选择ComboBox项从MySQL数据库中检索数据值。具体介绍了在事件处理方法 `comboBox2_SelectedIndexChanged` 中可能出现的常见错误,并提供了详细的解决方案和优化建议,以确保数据能够正确且高效地从数据库中读取并显示在界面上。此外,还讨论了连接字符串的配置、SQL查询语句的编写以及异常处理的最佳实践,帮助开发者避免常见的陷阱并提高代码的健壮性。 ... [详细]
author-avatar
水妖精Fairy
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有