利用C语言实现99乘法表两种方式
99乘法表
利用C语言输出99乘法表可以先思考怎么将它输出,这里我们可以先定义两个变量x,y用来表示对应的两个乘数,然后再定义一个sum,用来表示x和y的乘积。
定义完变量之后思考怎么输出每个式子,这边有两个思路,一个是利用for循环,另一个是利用while循环,两个原理其实都一样,但是利用for循环更利于理解,所以本文先用for循环编写。
由于99乘法表是每行输出对应小于等于行的数,例如第一行为1* 1,不大于1,第二行的数1 *2,2 *2,不大于2;故我们可以用两次循环,循环嵌套来输出式子,
第一层设置为for(x=1;x<=9;x++)
设置完第一层之后,还需要设置第二层,用来输出式子
for(y=1;y<=x;y++) {printf("%d*%d=%d",y,x,sum); }
编写完代码之后编译
#include<stdio.h> int main() {int x,y;int sum = 1;for(x=1;x<=9;x++){for(y=1;y<=x;y++){sum = x*y;printf("%d*%d=%d ",y,x,sum);} } return 0; }
输出之后发现并不是想像中的每行每列的输出,这时我们可以在第一层for循环中加入一个\n,让它每循环一次就回车一次。然后得到
#include<stdio.h> int main() {int x,y;int sum = 1;for(x=1;x<=9;x++){for(y=1;y<=x;y++){sum = x*y;printf("%d*%d=%d ",y,x,sum);}printf("\n");} return 0; }
这次代码之后发现跟预想的基本一致,但是发现当sum为个位时,与其他位没有对齐
这时,我们可以将sum小于10的时候加一个空格,而为了实现这个,我们可以利用if来实现,当sum小于10时,加一个空格,其他情况不变。这时的代码为
#include<stdio.h> int main() {int x,y;int sum = 1;for(x=1;x<=9;x++){for(y=1;y<=x;y++){sum = x*y;printf("%d*%d=%d ",y,x,sum);if(sum<10){printf(" ");}}printf("\n");} return 0; }
这时程序就完成了。
进阶
#include<stdio.h>
int main()
{int x,y;int sum = 1;int n;printf("请输入一个小于十的数"); scanf("%d",&n);if(n<=9){for(x=1;x<=n;x++){for(y=1;y<=x;y++){sum = x*y;printf("%d*%d=%d ",y,x,sum);if(sum<10){printf(" ");}}printf("\n");}
}
else{printf("不是小于10的数");
}return 0;
}
这个程序是可以自行输出99乘法表,当输入的n大于10时,不执行。
#include<stdio.h>
int main()
{int x,y;int sum = 1;x=1;while(x<=9){y=1;while(y<=x){sum = x*y;printf("%d*%d=%d ",y,x,sum);y++;if(sum<10){printf(" ");}}x++;printf("\n");} return 0;
}
这个程序是利用while循环,原理与for一样,不再详解。
利用C语言实现99乘法表两种方式相关推荐
- c语言打印三角99乘法表,用c语言打印99乘法表4种三角形
#include int main() { int i,j; //左下角. for (i=1;i<10;i++) { for (j=1;j<10;j++) if(i>=j) prin ...
- 利用go语言创建web server的两种方式
相比于java/c#的mvc框架,go语言写web项目及其简单,创建一个web只需要简短的几行代码就可以实现功能: package mainimport "net/http"fun ...
- ETH:Windows搭建ETH(区块链技术)利用Web端和小程序端两种方式调用ETH上的SC智能合约
ETH:Windows搭建ETH(区块链技术)利用Web端和小程序端两种方式调用ETH上的SC智能合约 目录 1.Geth安装.配置文件.与ETH节点交互 1.1.下载并安装好geth客户端 1.2. ...
- C语言打印99乘法表
项目场景: 项目场景:使用C语言打印出99乘法表,加深对for循环的理解.打印99乘法表这个应该是一个比较典型的例子. 问题描述 打印乘法表时打印出来的是 1*1=1 2*2=4 3*3=9 4*4= ...
- c语言代码99乘法表,C语言输出九九乘法表代码及解析
原标题:C语言输出九九乘法表代码及解析 九九乘法表共9行9列,重点考察for循环的掌握情况. 下面给出了输出完整乘法表.右上.右下.左上.左下乘法表的代码. [代码一]输出完整的三角形: #inclu ...
- Golang语言写99乘法表-双重for循环
个人博客点这里 1. 标准写法: for 表达式1;表达式2;表达式3{循环体 } 2. 同时省略表达式1和表达式3 for 表达式2{循环体 } // 相当于while(条件) 3. 同时省略3个表 ...
- 使用C语言打印99乘法表
使用C打印99乘法表 思路: (双重for循环) 第一行输出 1 x 1 = 1; 第二行输出 1 x 2 = 2 2 x 2 = 4; 第三行输出 1 x 3 = 3 2 x 3 = 6 3 x 3 ...
- hive建立内部表映射hbase_Hive 建外链表到 Hbase(分内部表、外部表两种方式)
一. Hive 建内部表,链到hbase :特点:Hive drop表后,Hbase 表同步删除 drop table if exists hbase_kimbo_test1; CREATE TABL ...
- 利用反射机制创建新类的两种方式及比较
[0]README 0.1) 本文描述+源代码均 转自 http://blog.csdn.net/fenglibing/article/details/4531033 , 旨在深入理解 如何利用反射机 ...
- Mysql复制表两种方式(复制表结构、复制表结构和数据、复制表中的部分数据、复制表中的部分数据并起别名)
需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE - SELECT 命令,是无法实现的. 本章节将为大家介绍如何完整的复制MySQL数据表,步骤如 ...
最新文章
- Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))) TNS-12541: TNS:no li
- Toward perfect reads: self-correction of short reads via mapping on de Bruijn graphs
- 城市智能化发展中,AI公司应该做什么?
- mysql frm恢复数据_MYSQL使用.frm恢复数据表结构的实现方法
- 开源内容管理系统 php mysql_「分享」7 个精致的 PHP 开源内容管理系统(CMS)
- rabbitmq管理界面的使用
- Codeforces Beta Round #17 C. Balance DP
- python将excel表按地方拆分_Python将一个Excel拆分为多个Excel
- 面试重点:设计模式(三)——工厂方法
- react.js从入门到精通(六)——路由的使用
- MSSQL中如何用SQL语句查询字段类型?
- numpy缩放图片/调整图片大小
- 机器学习基础:吴恩达vs贪心科技AI哪个更值得你选择?
- ECharts 饼图的合并显示
- matlab机器人运动仿真,基于MATLAB机器人手臂运动仿真
- python3抓取-双色球开奖的所有历史数据-2003年始
- 企微社群营销如何提升会员活跃度?
- 【HDOJ 5654】 xiaoxin and his watermelon candy(离线+树状数组)
- 2022年底了,你们公司还好吗?我这里不太好
- 如何快速取消关注B站(哔哩哔哩)所有up主?(Javascript实现)