《C Primer Plus 》第六版 习题 第六章

这篇博客详细解答了《C Primer Plus》第六版中第6章的所有习题,覆盖了从6.16.1到6.16.18的各个题目,旨在帮助读者深入理解和掌握C语言的基本概念和技术。

6.16.1

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

#include <stdio.h>
#define SIZE 26
int main()
{
   
   
    int i;
    char letter[SIZE];

    for (i = 0; i < SIZE; i++)
        letter[i] = 'a' + i;

    printf("\n");
    
    for (i = 0; i < SIZE; i++)
        printf("%3c", letter[i]);

    printf("\n");
    
    return 0;
}

在这里插入图片描述

6.16.2

/**
***使用嵌套循环,按下面的格式打印字符:
*** $
*** $$
*** $$$
*** $$$$
*** $$$$$
**/

#include <stdio.h>
int main()
{
   
   
    char a = '$';
    int i, j;
    for (i = 0; i < 5; i++)
    {
   
   
        for (j = 0; j <= i; j++)
            printf("%c", a);
        printf("\n");
    }
    return 0;
}

在这里插入图片描述

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

#include <stdio.h>
int main()
{
   
   
    char start, end;
    char let = 'F';

    for (start = let; start >= 'A'; start--)
    {
   
   
        for (end = let; end >= start; end--)
        {
   
   
            printf("%c", end);
        }
        printf("\n");
    }

    return 0;
}

//外层循环F,进入内层循环,循环一次后自减变成E,跳出内层循环
//执行完\n后,外层循环第一次循环结束自减成E。

//此时外层的start 是 E,进入内层,初始化end 为F,判断条件满足,打印end:F,自减成E,
//再判断,又满足,此时end变成 E,满足条件,继续打印end:E。就是第二行的 FE。再次自减变成D
//不满足,跳出,外层循环继续...

在这里插入图片描述

6.16.4

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

#include <stdio.h>

int main()
{
   
   
    char let = 'A';
    char c; //外层循环变量,内层循环变量
    int a, b;

    for (a = 1; a <= 6; a++)
    {
   
   
        for (b = 1; b <= a; b++)
        {
   
   
            printf("%c", let++);
        }
        printf("\n");
    }
    return 0;
}

在这里插入图片描述

6.16.5

/*
 * 编写一个程序, 提示用户输入大写字母
 * 使用嵌套循环以下面金字塔型的格式打印字母:
 *         A
 *        ABA
 *       ABCBA
 *      ABCDCBA
 *     ABCDEDCBA
 */
#include <stdio.h>

int main(void)
{
   
   
    printf("Please enter a capital letter: ");
    char capital;
    scanf("%c", &capital);

    for (char i = 'A'; i <= capital; i++)
    {
   
   
        char j;
        int space;
        // 打印空格
        for (space = capital - i; space > 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TCP404

老板大方~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值