c语言实践输出某个区间中不是3的倍数的偶数
OK,先审题,我们最后要输出的那些数是需要满足两个条件的,第一个条件是,这个数不是3的倍数,第二个条件是这个数是偶数。也就是这样的数需要同时满足这两个条件的时候才把这个数输出。
不是3的倍数这个条件在c语言中怎么表达出来呢? 先想一下它的反面,如果一个数是3的倍数改怎么表达,那么它的反面就OK了,num%3==0,表示num这个数是3的倍数,那么不是3的倍数就是 !(num%3)==0
偶数的条件是num%2==0这个就没什么好说的了。
OK,还是从结果出发,最后我们肯定是要输出这些数的,所以一定会有一句
printf("%d",num);
那么num就需要事先定义一下
int num;
printf("%d",num);
但printf语句并不是随随便便就会打印的,是需要满足一定条件的,什么条件呢?
int num;
if(!(num%3==0)&&(num%2==0))
{
printf("%d",num);
}
OK,我们的num是需要从用户输入的一个区间来找数的,一个一个的往过数,所以需要一个循环,以及用户输入区间。
int num;
int start;
int end;
scanf_s("%d %d",&start,&end);
for(num=start;num<=end;num++)
{
if(!(num%3==0)&&(num%2==0))
{
printf("%d ",num);
}
}
for循环的条件怎么想出来的,为什么是num<=end,我们想什么时候就不循环了,是不是num>end的时候,因为我们是让程序从[start,end]这个区间中找数的,你超过了就不行了,所以num>end 的反面也就是num<=end的时候就是循环继续的条件。
用户输入的start end 是无法预估的,我们最希望用户输入的情况是start小于end这种情况,当start==end的时候也是可以的,只是比较特殊,当start>end的时候,我们就不做输出了,所以需要对满足条件的start和end才会进入循环,所以代码最后变成这个样子了。
int main(void)
{
int num;
int start;
int end; scanf_s("%d %d",&start,&end);
printf("\n"); if (start <= end)
{
for (num = start; num <= end; num++)
{
if (!(num % 3 == 0) && (num % 2 == 0))
{
printf("%d ", num);
}
}
}
else
{
printf("N/A");
}
return 1; }
记录一下思考过程。
c语言实践输出某个区间中不是3的倍数的偶数的更多相关文章
- C语言实现输出一组数字中的所有奇数
/*第二题*/ #include<stdio.h> //输入186732468 //输出173 //输入12345677 //输出13577 main(){ ;//输入的数字,数字的长度 ...
- C语言实践 输出100以内的素数
int main() { int isprime = 1; for (int i = 2; i < 101; i++) { isprime = 1;//要确保每次循环都要把这个值设置为1,不然上 ...
- hdu6003 Problem Buyer 贪心 给定n个区间,以及m个数,求从n个区间中任意选k个区间,满足m个数都能在k个区间中找到一个包含它的区间,如果一个区间包含了x,那么 该区间不能再去包含另一个数,即k>=m。求最小的k。如果不存在这样的k,输出“IMPOSSIBLE!”。
/** 题目:hdu6003 Problem Buyer 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6003 题意:给定n个区间,以及m个数,求从n个区 ...
- 【c语言】输入一个递增排序的数组的一个旋转,输出旋转数组中的最小元素
//旋转数组的最小数字 //题目:把一个数组最開始的若干个元素搬到数组的末尾.我们称之为数组的旋转. //输入一个递增排序的数组的一个旋转.输出旋转数组中的最小元素. //比如:数组{3.4,5,1, ...
- C语言:计算输出给定数组中每相邻两个元素的平均值的平方根之和。
//计算输出给定数组中每相邻两个元素的平均值的平方根之和. #include <stdio.h> #include <math.h> ]) { double a,b,s=0.0 ...
- 《程序设计语言——实践之路(英文第三版)》【PDF】下载
<程序设计语言--实践之路(英文第三版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382234 内容简介 <程序设计语 ...
- 《程序设计语言——实践之路【PDF】下载
<程序设计语言--实践之路[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382240 内容简介 <程序设计语言--实践之路(第3版 ...
- R语言︱H2o深度学习的一些R语言实践——H2o包
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言H2o包的几个应用案例 笔者寄语:受启发 ...
- 使用函数式语言实践DDD
长期以来我都在实践OOP,进而通过OOP来实现DDD,特别是如何通过面向对象的技巧来建立一个领域模型.OO的一些特性在建立领域模型时显得恰如其分,能否掌握OO的技巧,对创建领域模型有着至关重要的作用. ...
随机推荐
- String类的一些常规方法
String类 String类常用方法: ①length(): length() 长度 方法** 对比:数组.length 属性** 一般情况下,一个数字,一个字母,一个汉 ...
- restful规则
参考连接:https://blog.igevin.info/posts/restful-api-get-started-to-write/#url_rules https://juejin.im/po ...
- Ubantu 新建用户后没有生成对应文件夹
原命令:useradd python 改正后:useradd python -m 后成功在home目录下创建文件夹 原因: man useradd就可以看到如此介绍:Create the user´s ...
- ubantu 虚拟机无法查看windows共享目录
初学linux,安装好虚拟机,安装好ubantu系统,启动系统后无法查看windows共享目录. 原因是没有安装 vmware tools 教程地址:http://www.linuxidc.com/L ...
- Linux 绑定双网卡
1.立即关闭iptables并禁用开机自启动[root@mysql01 ~]# /etc/init.d/iptables stop[root@mysql01 ~]# chkconfig iptable ...
- numpy之通用函数ufunc
通用函数-元素级数组函数 通用函数(ufunc)是一种对ndarray执行元素级运算的函数. 一元ufunc import numpy as np arr = np.arange(-10,10,2) ...
- Java 局部变量和成员变量(全局变量)
局部变量 定义在类的方法内或者代码块内的变量 局部变量只在定义它的方法体内或者代码块内有效 局部变量在使用前,必须先初始化 全局变量(成员变量) 一个类中既不在方法体内,也不在程序块内定义的变量 类中 ...
- Spring Cloud Eureka 注册,发布,调用服务
Spring Cloud为服务治理做了一层抽象接口,所以在Spring Cloud应用中可以支持多种不同的服务治理框架,如Netflix Eureka.Consul和Zookeeper.在Spring ...
- 我的HibernateSearch笔记
话不多说,直接上代码: 实体类: package com.smt.pojo; import java.io.Serializable; import javax.persistence.Column; ...
- ATM:模拟实现一个ATM + 购物商城程序
额度 15000或自定义 实现购物商城,买东西加入 购物车,调用信用卡接口结账 可以提现,手续费5% 支持多账户登录 支持账户间转账 记录每月日常消费流水 提供还款接口 ATM记录操作日志 提供管理接 ...