C语言典型例题56

《C程序设计教程(第四版)------谭浩强》

例题4.8 将范围为100~200的不能被3整除的数输出。


代码:

复制代码
//《C程序设计教程(第四版)------谭浩强》
//例题4.8 将范围为100~200的不能被3整除的数输出。

//#include <stdio.h>
//
//int main()
//{
	int x=0;
//	
//	int i=0;
//	for(i=100;i<=200;i++)
//	{
//		if((i>=100 && i<=200) && (i%3!=0))
//		{
//			printf("%d\n",i);
//		}
//	}
//	
//	return 0;
//}

//代码简化
#include <stdio.h>

int main()
{
	int x=0;
	for(x=100;x<=200;x++)
	{
		if(x%3!=0)
		{
			printf("%d ",x);
		}
	}
	
	return 0;
}

运行结果:


编写代码时遇到的问题:

%与/的区别

在C语言中,%和/是两种不同的运算符,分别用于执行取模和除法操作。

‌取模运算符(%) ‌:用于计算两个整数相除后的余数 。例如,a % b表示将a除以b后得到的余数。取模运算的结果总是一个整数,即它总是向下取整。取模运算的效率通常较高,因为它只需要进行简单的整数除法和求余操作。

‌除法运算符(/) ‌:用于计算两个整数相除后的商 。例如,a / b表示将a除以b后得到的商。除法运算的结果是一个浮点数,两个操作数都是浮点数。除法运算的效率可能较低,因为它需要进行浮点运算。

调试代码:

1.调试过程:

2.发现错误:

【问题1】

第一次的结果中,120既在100~200之间,有可以被3整除,应该不输出

【问题2】

第一次的结果输出了100~200中的所有数,可以确定问题是if语句的问题

相关推荐
apcipot_rain4 小时前
C++转Java日记(03)
java·开发语言·c++
布莱克6054 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
xys_6784 小时前
深挖C++:类和对象(中)
开发语言·c++
D e re k ZH7 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法
石小石Orz8 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
xiaoye-duck8 小时前
《C++ 项目:手写大模型接入 SDK》Ollama接口设计(上):初始化、全量响应实现和测试
开发语言·网络·c++·语言模型
zaizai10078 小时前
【Effective Modern C++】学习第一章
c++
Fruiticecake9 小时前
C 程序员速通现代 C++(一):lambda、std::function、移动语义与智能指针
c语言·c++
民乐团扒谱机9 小时前
【微实验】NSGA-II(非支配排序遗传算法)——解决多目标优化问题的“自然选择模拟器”
linux·人工智能·算法