C语言-5月20日 利用for循环打印出9*9乘法表、由“*”构成的七行菱形的打印、数字金字塔
2023-09-27 14:19:45 时间
#include<stdio.h>
int main()
{
int sum = 0;
for(int i = 1;i <= 9;i++){//控制行数
for(int j = i;j <= 9;j++){//控制每行的输出
if(i <= j)
{
sum = i * j;
printf("%d * %d = %d ",i,j,sum);
}
}
printf("\n");//每次打印完换行
}
return 0;
}
如图所示为运行结果:
输出完成
同样类型的题目,如何通过for循环打印出一个由“*”组成的七行菱形的图形呢?
#include<stdio.h>
//前四行空格的规律为:4-i,*的规律为2i-1,后三行空格的规律为:i,“*”的规律为:7-2i
int main()
{
int i = 0;
int j = 0;
int k = 0;//定义三个整型值分别对应行数、空格数、“*”数
for(i = 1;i<=4;i++){//将打印的菱形的七行分为两个部分,第一个部分为前四行,第二部分为后三行
for(j = 1;j<=4 - i;j++){
printf(" ");
}
for(k = 1;k<=2 * i -1;k++){
printf("*");
}
printf("\n");//换行操作
}
for(i =1;i<=3;i++){//后三行循环开始
for(j = 1;j<=i;j++){
printf(" ");
}
for(k = 1;k <= 7-2*i;k++){
printf("*");
}
printf("\n");//换行操作
}
return 0;
}
如图为运行结果:
输出完成
数字金字塔:
#include<stdio.h>
void pyramid(int n,int m)//定义数字和行数
{
for(int i = 0;i<m;i++){//定义i值循环,当i<行数时执行循环
for(int k = 0;k<m-1-i;k++){//二层嵌套,定义k值
printf(" ");//打印每行数字中间的空格
}
for(int j = 0;j<=i;j++){
printf("%d ",n);//打印数字
}
printf("\n");//每执行完一次换行
}
}
int main()
{
int a = 0;
int b = 0;
printf("请您输入两个数值:\n");
scanf("%d%d",&a,&b);
pyramid(a,b);
}
如图,我输入数字7和8:
输出完成
如上图所示,输出结果为一个数字为7行数为8的数字金字塔。
相关文章
- C语言结构体实例-创建兔子
- 《C语言接口与实现:创建可重用软件的技术》一1.4 扩展阅读
- 《21天学通C语言(第7版)》一6.2 控制程序的执行
- 【C语言】冒泡排序算法和冒泡排序的时间复杂度
- C语言:分支与循环中的goto语句
- C语言:分支与循环(1)
- C语言的标准输入输出
- LeetCode数据结构_C语言题解系列-链表II
- C语言运算符与表达式——输出逆序数and二进制包含0和1的数量and判断是否为2的整数次幂的两种办法
- C语言程序设计编辑与调试环境
- C语言循环语句进阶练习题
- C语言循环语句专项练习题
- 【C语言】C语言的灵魂——指针及相关知识点
- C语言基础篇--选择/顺序/循环结构
- C语言 常犯的九个小错误
- 1017 A除以B (20 分)C语言
- 【C语言程序设计】实验 5