一本通编程启蒙例9及练习题解

例9.1

定义了一个字符变量a,用于存储输入的字符。

接下来,使用cin从标准输入读取字符的值,并将其赋值给变量a。

然后,通过cout将字符和空格输出到标准输出,以构造等腰字符三角形的每一行。

第一行输出两个空格,字符a,再加上两个空格。

第二行输出一个空格,三个字符a,再加上一个空格。

第三行输出五个字符a。

#include <iostream>
using namespace std;

int main()
{
    char a;                      // 定义一个字符变量a,用于存储输入的字符
    cin >> a;                    // 从标准输入读取字符的值

    cout << "  " << a << "  " << endl;         // 输出第一行,两个空格加上字符a再加上两个空格
    cout << " " << a << a << a << " " << endl;  // 输出第二行,一个空格加上三个字符a再加上一个空格
    cout << a << a << a << a << a << endl;     // 输出第三行,五个字符a

    return 0;
}

例9.2

定义了一个整数变量a,用于存储输入的ASCII码。

接下来,使用cin从标准输入读取ASCII码的值,并将其赋值给变量a。

最后,通过cout输出整数a对应的字符。为了将整数转换为对应的字符,使用了类型转换 char(a)。

#include <iostream>
using namespace std;

int main(){
    int a;                // 定义一个整数变量a,用于存储输入的ASCII码
    cin >> a;             // 从标准输入读取ASCII码的值
    cout << char(a);      // 将整数a强制转换为字符类型,并输出

    return 0;
}

例9.3

定义了一个字符变量a,用于存储输入的小写字母。

接下来,使用cin从标准输入读取小写字母的值,并将其赋值给变量a。

然后,使用条件语句if判断输入的字符a的范围,如果a是大写字母,则执行if语句块中的代码;否则,执行else语句块中的代码。

在if语句块中,使用printf函数将字符a转换为小写字母。这里将a的ASCII码加上32,是因为大写字母的ASCII码比小写字母的ASCII码小32,所以加上32可以将大写字母转换为小写字母。

在else语句块中,使用printf函数将字符a转换为大写字母。这里将a的ASCII码减去32,是因为小写字母的ASCII码比大写字母的ASCII码大32,所以减去32可以将小写字母转换为大写字母。

#include<bits/stdc++.h>
using namespace std;

int main(){
	char a;                          // 定义一个字符变量a,用于存储输入的小写字母
	cin >> a;                        // 从标准输入读取小写字母的值
	
	if(a >= 'A' and a <= 'Z')        // 如果输入的字符a是大写字母
		printf("%c", a + 32);        // 将a的ASCII码加上32转换为小写字母,并使用printf函数输出
	else                             // 否则,即输入的字符a是小写字母
		printf("%c", a - 32);        // 将a的ASCII码减去32转换为大写字母,并使用printf函数输出

	return 0;
}

练9.1

定义了一个字符变量a,用于存储输入的字符。

接下来,使用cin从标准输入读取字符的值,并将其赋值给变量a。

然后,通过cout输出字符和空格,以构造倾斜放置的菱形的每一行。

第一行输出两个空格,字符a。

第二行输出一个空格,三个字符a,再加上一个空格。

第三行输出五个字符a。

第四行输出一个空格,三个字符a,再加上一个空格。

第五行输出两个空格,字符a。

#include "iostream"
using namespace std;

int main()
{
	char a;                      // 定义一个字符变量a,用于存储输入的字符
	cin >> a;                    // 从标准输入读取字符的值

	cout << "  " << a << endl;         // 输出第一行,两个空格加上字符a
	cout << " " << a << a << a << " " << endl;  // 输出第二行,一个空格加上三个字符a再加上一个空格
	cout << a << a << a << a << a << endl;     // 输出第三行,五个字符a
	cout << " " << a << a << a << " " << endl;  // 输出第四行,一个空格加上三个字符a再加上一个空格
	cout << "  " << a << "  " << endl;         // 输出第五行,两个空格加上字符a

	return 0;
}

练9.2

定义了一个字符变量a,用于存储输入的除空格以外的可见字符。

接下来,使用cin从标准输入读取字符的值,并将其赋值给变量a。

最后,使用printf函数输出字符a的ASCII码。在输出格式字符串中使用%d表示以十进制形式输出整数。

#include<stdio.h>

int main(){
    char a;                          // 定义一个字符变量a,用于存储输入的除空格以外的可见字符
    cin >> a;                        // 从标准输入读取字符的值
    printf("%d", a);                 // 使用printf函数输出字符a的ASCII码

    return 0;
}

练9.3

定义了一个字符串变量s,用于存储输入的字符串。

接下来,使用cin从标准输入读取字符串的值,并将其赋值给变量s。

然后,使用for循环遍历字符串s中的每个字符。

在循环中,将字符串s中的每个字符的ASCII码值加上4。这里通过+=运算符实现了对每个字符的替换。

最后,使用cout输出加密后的字符串s。

#include <iostream>
#include <cstring>
using namespace std;

int main() {
    string s;                       // 定义一个字符串变量s,用于存储输入的字符串
    cin >> s;                       // 从标准输入读取字符串的值
    for (int i = 0; i < s.size(); i++)
        s[i] += 4;                  // 将字符串s中每个字符的ASCII码值加上4
    cout << s;                      // 输出加密后的字符串
    return 0;
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值