- 3
- 0
- 约1.12万字
- 约 49页
- 2017-11-08 发布于湖北
- 举报
专业C第9讲-变量设计
4.3 标志变量的设计与应用 4.3.1 整除问题 方法1 方法2(将计算与I/O分开处理,利于程序移植) 4.3.2 三角形的周长及面积 返回多个值 4.3.1 整除问题 例4.6 编程实现输入一个整数,判断其是否能被 3, 5或7整除,并输出以下信息之一 能同时被3, 5, 7整除。 能被两个数(要指出哪两个数)整除。 能被一个数(要指出哪一个数)整除。 不能被3, 5, 7整除。 #include iostream using namespace std; void f(int n) { if(n%(3*5*7)==0) cout n ”能同时被3, 5, 7整除。”; else if(n%3==0 n%5!=0 n%7!=0) cout n ” 仅能被一个数 (3) 整除。”; else if(n%3!=0 n%5==0 n%7!=0) cout n ” 仅能被一个数 (5) 整除。”; else if(n%3!=0 n%5!=0 n%7==0) cout n ” 仅能被一个数 (7) 整除。”; else if(n%3==0 n%5==0 n%7!=0) cout n ” 能被两个数 (3, 5) 整除。”; else if(n%3==0 n%5!=0 n%7==0) cout n ” 能被两个数 (3, 7) 整除。”; else if(n%3!=0 n%5==0 n%7==0) cout n ” 能被两个数 (5, 7) 整除。”; else cout n ” 不能被 3, 5, 7 整除。”; cout endl; } 方法2:将计算与输出相分离 先完成所有的判断然后输出,使计算与输出两个环节相分离 设计一个标志量与整数n对应,记录n被3, 5, 7整除的情况。我们约定标志量的 二进制最低位:1表示n能被3整除,0表示n不能被3整除 二进制第2位:1表示n能被5整除,0表示n不能被5整除 二进制第3位:1表示n能被7整除,0表示n不能被7整除 这样,对于给定的n,其标志变量可有8种取值之一,分别对应8种情形 最后,根据标志值输出结果 int mod_3_5_7(int n) { int flag = 0; if(n%3 == 0) flag += 1; // 001 或 flag |= 1 if(n%5 == 0) flag += 2; // 010 或 flag |= 2 if(n%7 == 0) flag += 4; // 100 或 flag |= 4 return flag; } #include iostream using namespace std; void show_result(int n) { switch(mod_3_5_7(n)) { case 0: cout n ” 不能被 3, 5, 7 整除。”; break; case 1: cout n ” 仅能被一个数 (3) 整除。”; break; case 2: cout n ” 仅能被一个数 (5) 整除。”; break; case 3: cout n ” 能被两个数 (3, 5) 整除。”; break; case 4: cout n ” 仅能被一个数 (7) 整除。”; break; case 5: cout n ” 能被两个数 (3, 7) 整除。”; break; case 6: cout n ” 能被两个数 (5, 7) 整除。”; break; default:cout n ” 能同时被 3, 5, 7 整除。”; } cout endl; } int main() { int n; while(1) { cout ”\n请输入一个整数(负数退出): ”; cin n; if(n0) break; show_result(n); } return 0; } 4.3.2 三角形的周长及面积 例4.7 给定三条线段的长度a, b, c,判断它们能否组
您可能关注的文档
最近下载
- Dalsa相机使用说明.pdf
- 2026年工程建设质量管理小组活动案例解析交流会资料汇编(中施企协 博鳌)_可搜索.pdf
- 2026年腾讯公司高管秘书面试技巧与答案.docx VIP
- 云南省昆明市第一中学2025届高三下学期第七次联考(一模)英语试题(含答案,无听力原文、答案及音频).pdf VIP
- 备战2025年深圳中考物理《热学、力学实验》含答案解析.docx VIP
- 备战2025年深圳中考物理《质量与密度、压强、浮力实验》含答案解析.docx VIP
- 2026年中考英语语法复习《宾语从句,定语从句和状语从句》真题模拟题汇编(原卷).docx VIP
- 2023年湖南省长沙中考数学试卷真题(含答案逐题详解)+2022年数学试卷及答案详解.docx
- 2026中考复习专题04:圆的常考模型汇总(原卷版) .pdf VIP
- 2026年中考英语语法复习《动词时态》真题模拟题汇编(原卷).docx VIP
原创力文档

文档评论(0)