实验7-3-4 字符串替换 (15分)

解题思路

  1. 将人工输入的字符传入字符数组str1
  2. 将字符数组str1除大写字母字符按顺序传入字符数组str2,大写字母字符转换后传入字符数组str2
  3. 遍历输出str2中存储的字符

源代码如下:

#include<stdio.h>
#define N 100
int main()
{
	char ch;
	char str1[N];
	char str2[N];
	int cnt=0;//计数字符数目(两个字符数组字符数相同)
	ch=getchar();
	//第一环节:将输入字符传入字符数组str1
	for(int i=0;ch!='\n';i++){
        str1[i]=ch;
        cnt++;
        ch=getchar();
	}
	//第二环节:如果出现大写字母就将其对应转换存入字符数组str2,其他的字符按顺序存入字符数组str2
	for (int j = 0; j < cnt; j++)
	{
		if (str1[j] >= 'A' && str1[j] <= 'Z')
		{
			str2[j] = 'A' + 'Z' - str1[j];  //相互替换的字符之和是不变常数
		}
		else
		{
			str2[j] = str1[j];
		}
	}
//第三环节:输出
	for (int k = 0; k < cnt; k++)
	{
		printf("%c",str2[k]);
	}
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值