1. 输出英文字母的整数编码
#Include <Stdio.H>
Int Main(Void)
{
Char Ch;
/* 输出小写字母的整数编码 */
For (Ch = ''A''; Ch <= ''Z''; ++Ch)
{
Printf("The Integer Value For %C Is %D.
", Ch, Ch);
}
/* 输出大写字母的整数编码 */
For (Ch = ''A''; Ch <= ''Z''; ++Ch)
{
Printf("The Integer Value For %C Is %D.
", Ch, Ch);
}
Return 0;
}
正如前面说过的那样,字符是以整数形式存储的,所以可以用 ++Ch 得到下一个字符的编码。而 Ch <= ''Z'' 这个表达式,其实也是使用它们的整数编码进行比较的。不过,这里我假设了您的计算机使用的编码中,英文字母是按升序排列的。如果您的计算机使用的编码中,英文字母是乱序/降序排列的,则此程序不通用。
2. 根据用户输入的整数长度,用星号“*”画出一个矩形。例如:
3
***
* *
***
7
*******
* *
* *
* *
* *
* *
*******
解决方案:将图形分解为三个部分(第一行,中间有空格的那些行,最后一行)分别输出。
#Include <Stdio.H>
Int Main(Void)
{
Int Len, Hollow, I;
Printf("Please Input The Length Of The Square: ");
Scanf("%D", &Len);
/* 输出第一行星号 */
For ( I = 0; I != Len; ++I )
{
Putchar(''*''); /* 输出一个星号 */
}
Putchar(''
''); /* 换行 */
/* 如果用户输入的长度为1,则只需输出一行 */
If (Len == 1) {
Return 0;
}
/* 输出中间部分 */
Hollow = Len - 2; /* 每行的空格数等于 Len - 2 */
/* 一共有 Len - 2 行需要输出星号和空格 */
For ( I = 0; I != Hollow; ++I )
{
Int J;
Putchar(''*'');
/* 输出 Len - 2 个空格 */
For ( J = 0; J != Hollow; ++J )
{
Putchar('' '');
}
Printf("*
");
}
/* 输出最后一行星号 */
For ( I = 0; I != Len; ++I )
{
Putchar(''*'');
}
Putchar(''
''); /* 换行 */
Return 0;
}
该程序使用三个循环分别输出第一行,中间部分,以及最后一行。Putchar 是标准函数库中定义的函数,其作用是输出一个字符。Putchar 的函数原型位于 Stdio.H 中。 |