ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

PTA基础编程题目集 7-20打印九九口诀表(C++语言实现)

PTA基础编程题目集 7-20打印九九口诀表(C++语言实现) 摘要本文是PTA编程题打印九九口诀表的题解涵盖题目描述、输入输出格式及C语言实现展示双重循环嵌套与格式化输出算法。题目描述下面是一个完整的下三角九九口诀表1*11 1*22 2*24 1*33 2*36 3*39 1*44 2*48 3*412 4*416 1*55 2*510 3*515 4*520 5*525 1*66 2*612 3*618 4*624 5*630 6*636 1*77 2*714 3*721 4*728 5*735 6*742 7*749 1*88 2*816 3*824 4*832 5*840 6*848 7*856 8*864 1*99 2*918 3*927 4*936 5*945 6*954 7*963 8*972 9*981 本题要求对任意给定的一位正整数N输出从1*1到N*N的部分口诀表。输入格式输入在一行中给出一个正整数N1≤N≤9。输出格式输出下三角N*N部分口诀表其中等号右边数字占4位、左对齐。输入样例4输出样例1*11 1*22 2*24 1*33 2*36 3*39 1*44 2*48 3*412 4*416解题思路核心问题分析打印N行N列的下三角九九乘法表格式要求为第i行有i个乘法项i从1到N每个乘法项格式为j*i乘积j从1到i乘积部分占4位左对齐。算法原理说明使用双重循环结构。外层循环控制行数i1到N内层循环控制每行的乘法项数j1到i。利用iomanip头文件的setw(4)设置输出宽度C默认左对齐对于setw配合cout输出实现乘积数字占4位的格式要求。具体计算步骤读取正整数N1≤N≤9外层循环i从1到N控制当前行数/第二个乘数3. 内层循环j从1到i控制该行的项数/第一个乘数输出格式j i “” setw(4) ji每行输出完毕后换行结束程序代码流程说明引入头文件与命名空间第1-3行引入iostream和iomanip头文件iomanip用于setw格式化输出使用std命名空间。变量声明与输入第6-7行定义口诀表行数N、外层循环变量i行号/第二个乘数、内层循环变量j列号/第一个乘数读取输入N。双重循环打印口诀表第10-15行外层for循环i从1到N控制输出N行i同时作为乘法的第二个操作数内层for循环j从1到i第i行输出i个乘法项j作为乘法的第一个操作数输出格式cout j i “” setw(4) jisetw(4)确保乘积部分占4位宽度内层循环结束后cout endl换行进入下一行返回与结束第17行返回0表示程序正常结束。代码流程图否是否是开始声明变量 N, i, j读取输入 Ni1i N?返回 0, 结束j1j i?输出换行 endli输出 j * i setw(4) j*ij解题流程图是否否是理解题意输入口诀表行数 N初始化行号 i1打印完 N 行?完成输出打印第 i 行初始化列号 j1j i?换行, 下一行 i打印 j*i乘积, 占 4 位j, 下一列代码部分实现#includeiostream#includeiomanipusingnamespacestd;intmain(void){intN,i,j;// N为口诀表的行数i为当前行j为当前列cinN;// 读取口诀表行数N// 输出下三角N*N口诀表for(i1;iN;i){// 控制行数从1到Nfor(j1;ji;j){// 控制每行的乘法项数从1到当前行号coutj*isetw(4)j*i;// 输出乘法表达式结果左对齐占4位}coutendl;// 换行}return0;}
返回列表