在C语言中编写一个打印数字模式的程序

1. 程序介绍

在C语言中编写一个打印数字模式的程序,可以让我们实现在控制台中打印出不同的数字模式。本篇文章会详细介绍实现过程,其中包括程序的基本逻辑、代码实现和运行结果。

2. 基本逻辑

该程序的基本逻辑如下:

读取用户输入的数字n,判断其是否合法。

根据用户输入的数字n,打印出相应的数字模式。

其中,合法的数字范围为1到9。

2.1 读取用户输入的数字

为了读取用户输入的数字,我们可以使用C语言中的scanf函数。该函数可以从标准输入(键盘)中读取一段字符,并将其转换为指定类型的变量。

下面是读取用户输入数字n的代码:

int n;

scanf("%d", &n);

其中,%d表示我们需要读取一个整数,&n表示我们需要将读取到的数字赋值给变量n。

2.2 判断数字合法性

读取用户输入的数字后,我们需要判断其是否合法。在本程序中,合法数字范围为1到9,若用户输入的数字不在该范围内,则应提示用户重新输入。

下面是判断用户输入数字合法性的代码:

if (n <= 0 || n > 9) {

printf("请输入1到9之间的数字!\n");

return 1;

}

该代码使用if语句判断用户输入数字是否小于等于0或大于9,若是,则提示用户重新输入,然后通过return语句返回非0值,让程序退出。

2.3 打印数字模式

在本程序中,我们将数字模式分为两类,分别为奇数模式和偶数模式。对于每个数字n,我们需要分别打印其对应的奇数模式和偶数模式。

下面是打印数字模式的代码:

void print_odd_pattern(int n) {

int i, j;

for (i = 1; i <= n; i += 2) {

for (j = 1; j <= i; j++) {

printf("%d", j);

}

printf("\n");

}

}

void print_even_pattern(int n) {

int i, j;

for (i = 2; i <= n; i += 2) {

for (j = 1; j <= i; j++) {

printf("%d", j);

}

printf("\n");

}

}

print_odd_pattern(n);

print_even_pattern(n);

该代码分别定义了print_odd_pattern和print_even_pattern函数,用于打印奇数模式和偶数模式。在主函数中,我们调用这两个函数,分别打印出对应的数字模式。

打印奇数模式的代码使用两个for循环嵌套,分别控制行数和每行的数字个数。对于第i行,打印出1到i个数字,然后换行。打印偶数模式的代码与此类似,只不过是从第2行开始打印,每次增加2个数字。

3. 代码实现

下面是完整的代码实现:

#include <stdio.h>

void print_odd_pattern(int n) {

int i, j;

for (i = 1; i <= n; i += 2) {

for (j = 1; j <= i; j++) {

printf("%d", j);

}

printf("\n");

}

}

void print_even_pattern(int n) {

int i, j;

for (i = 2; i <= n; i += 2) {

for (j = 1; j <= i; j++) {

printf("%d", j);

}

printf("\n");

}

}

int main() {

int n;

printf("请输入一个数字(1-9之间): ");

scanf("%d", &n);

if (n <= 0 || n > 9) {

printf("请输入1到9之间的数字!\n");

return 1;

}

printf("奇数模式:\n");

print_odd_pattern(n);

printf("偶数模式:\n");

print_even_pattern(n);

return 0;

}

4. 运行结果

下面是输入数字4时的运行结果:

请输入一个数字(1-9之间): 4

奇数模式:

1

123

偶数模式:

12

1234

可以看出,程序成功地打印出了对应的数字模式。

5. 总结

本篇文章介绍了在C语言中编写一个打印数字模式的程序的基本逻辑和代码实现,通过输入合法的数字,程序可以在控制台中打印出对应的数字模式。相信通过这篇文章的阅读学习,读者可以更加熟练地使用C语言编写程序。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

后端开发标签