C prime plus 第六版 课后编程练习 第6章

电子版C primer plus 第6版 中文文字版下载地址
https://blog.csdn.net/gouqi426/article/details/106412212

以下为课后练习。
使用编译器 vs 2013 。
如使用其他编译器,可将scanf_s()修改为scanf(),同时删除sizeof()。具体原因请学习scanf_s()和scanf()的区别。

6.16.1编写一个程序,创建一个包含26个元素的数组,并在其中储存26个小写字母。然后打印数组的所有内容。

// 6.16.1 26元素数组.cpp : 定义控制台应用程序的入口点。

#include "stdafx.h"
#define SIZE 26

int _tmain(int argc, _TCHAR* argv[])
{
   
	char alphabet[SIZE];
	alphabet[0] = 'a';		// 初始化,数组元素编号从0开始,alphabet[0]表示第1个元素,alphabet[1]表示第二个元素,以此类推。

	int index;

	for (index = 0; index < SIZE; index++)
		{
   
			alphabet[index] = alphabet[0] + index;
			
			printf("%c\t", alphabet[index]);		
		}
	
	printf("\n");

	return 0;
}

6.16.2 使用嵌套循环,按下面的格式打印字符:
在这里插入图片描述

// 6.16.2 三角形打印.cpp : 定义控制台应用程序的入口点。

#include "stdafx.h"

int _tmain()
{
   
	char code = '$';
	int i, j;

	for (i = 1; i < 6; i++)		 //i控制行数
	{
   
		for (j = 1; j < i+1 ;j++) //j控制每行字符数,j < i+1表示每行字符数小于等于行数。
		{
   
			printf("%c", code);   // 只要字符数不多于行数就继续打印直至等于行数。
		}
		printf("\n");             //字符数等于行数后,换行。
	}
	return 0;
}

6.16.3 使用嵌套循环,按下面的格式打印字母:
F
FE
FED
FEDC
FEDCB
FEDCBA

// 6.16.3 打印三角形字母.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"

int _tmain()
{
   
	int i,j;

	char code;

	for (i = 1; i < 7; i++)
	{
   
		code = 'F';					//每行打印前将首字符初始化为F

		for (j = 1; j < i+1; j++)
		{
   
			printf("%c", code);
			code--;					//打印每一个字符后递减
		}
		printf("\n");				//换行
	}
	
	return 0;
}

6.16.4
使用嵌套循环,按下面的格式打印字母:
A
BC
DEF
GHIJ
KLMNO
PQRSTU

// 6.16.4 字母增加三角形打印.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"

int _tmain()
{
   
	int i, j;
	char code='A';

	for (i = 1; i < 7; i++)
	{
   					
		for (j = 1; j < i + 1; j++)
		{
   
			printf("%c", code);
			code++;					//打印每一个字符后递增
		}
		printf("\n");				//换行
	}
	return 0;
}

6.16.5 编写一个程序,提示用户输入大写字母。使用嵌套循环以下面金字塔型的格式打印字母:
A
打印这样的图形,要根据用户输入的字母来决定。例如,上面的图形是在用户输入E后的打印结果。

提示:用外层循环处理行,每行使用3个内层循环,分别处理空格、以升序打印字母、以降序打印字母。如果系统不使用ASCII或其他以数字顺序编码的代码,请参照练习3的解决方案。

// 6.16.5 等腰三角形字母表.cpp : 定义控制台应用程序的入口点。

#include "stdafx.h"

int _tmain()
{
   
	int i, j;
	char ch = 0;

	printf("Please input an letter in uppercase:");  //输入一个大写字母 
	scanf_s("%c", &ch, sizeof(ch));

	int length = ch - 'A' + 1;						// 整形变量 length 最小值为1,即输入A时。ch - 'A' + 1即为输入的字符是第几个字符。 
	for (i = 1; i <= length; i++)					 // i确定行数 ,
	{
   
		char a = &#
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值