乘法口诀表
输出乘法口诀表,目的是加深对 for 循环以及光标位置控制等内容的理解
本程序设计主要思路是:先清屏,并在屏幕上显示提示信息,说明本程序显示的是乘法
口诀表。接着,显示横轴 1~9 的数字和纵轴 1~9 的数字。最后,计算 1×1~9×9,并在屏幕上
显示。
程序算法如下:
main()
{
定义相关变量;
清屏,显示提示信息;
循环显示横轴数字;
循环显示纵轴数字;
循环计算并显示 1×1~9×9;
提示按任意键退出程序;
读取任意键;
程序结束;
}
程序代码
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <windows.h>
//利用API自定义得到的gotoxy(x,y)函数定义左上角为(0,0),
void gotoxy(short x, short y) {
COORD coord = {x, y};
//COORD是Windows API中定义的一种结构体类型,表示控制台屏幕上的坐标。
//上面语句是定义了COORD类型的变量coord,并以形参x和y进行初始化。
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
//GetStdHandle(STD_OUTPUT_HANDLE); 获取控制台输出句柄
//然后用SetConsoleCursorPosition设置控制台(cmd)光标位置
}
int main()
{
int i,j,x,y;
system("cls"); /* 清屏 */
printf("\n\n***Pithy Formula Table of Multiplication***\n\n");
/*显示提示信息*/
x=9;
y=5;
/* 输出横轴数字 */
for(i=1;i<=9;i++)
{
gotoxy(x,y); /* 移到指定的光标位置 */
printf("%2d ",i); /* 打印横轴数字 */
x+=3;
}
x=7;
y=6;
/* 输出纵轴数字 */
for(i=1;i<=9;i++)
{
gotoxy(x,y); /* 移到指定的光标位置 */
printf("%2d ",i); /* 打印纵轴数字 */
y++;
}
x=9;
y= 6;
/* 计算并显示 1×1~9×9 */
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
{
gotoxy(x,y); /* 移到指定的光标位置 */
printf("%2d ",i*j); /* 打印乘法结果 */
y++;
}
y-=9;
x+=3;
}
printf("\n\n Press any key to quit...\n");
getchar();
return 0;
}