编写一个程序,读取键盘输入,直到遇到@符号为止。并回显输入(数字除外)

#include <iostream>
#include <cctype>
using namespace std;
int main()
{
        cout << "Enter text for analysis, and type @ to terminate input.\n";
        char ch;
#include <iostream>
#include <cctype>
using namespace std;
int main()
{
        cout << "Enter text for analysis, and type @ to terminate input.\n";
        char ch;
        while(ch != '@')
        {
                if(islower(ch))
                {
                        ch = toupper(ch);
                }
                else if(isupper(ch))
                {
                        ch = tolower(ch);
                }
                if(isdigit(ch) == false)
                {
                        cout << ch;
                }
                cin.get(ch);
        }
        cout << endl;
        return 0;
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: #include<stdio.h> int main(){ char ch; while ((ch = getchar()) != '@') { if (ch >= 'A' && ch <= 'Z') { ch = ch + 32; } else if (ch >= 'a' && ch <= 'z') { ch = ch - 32; } if (ch >= 'a' && ch <= 'z' || ch >= 'A' && ch <= 'Z') printf("%c", ch); } return 0; } ### 回答2: 下面是一个C程序示例,它可以实现读取键盘输入直到遇到@符号为止,并回显输入内容(除了数字),同时将大写字母变成小写,小写字母变成大写。请意,程序使用了标准库函数ctype.h的toupper和tolower来实现字母的大小写转换。 ```c #include <stdio.h> #include <ctype.h> int main() { char input; printf("请输入字符,直到输入@符号为止:\n"); while ((input = getchar()) != '@') { if (isdigit(input)) { // 如果是数字则不输出 continue; } if (islower(input)) { // 如果是小写字母则转换成大写输出 putchar(toupper(input)); } else if (isupper(input)) { // 如果是大写字母则转换成小写输出 putchar(tolower(input)); } else { // 如果是其他字符,则直接输出 putchar(input); } } return 0; } ``` 你可以运行上述程序,然后在键盘输入你想要的字符,直到输入@符号为止。程序回显你的输入内容(除了数字),同时将大写字母变成小写,小写字母变成大写。 ### 回答3: 下面是一个用C语言编写程序,根据您的需求读取键盘输入,直到遇到@符号为止。同时,程序回显输入的内容,除了数字会保持不变,大写字母会变成小写,小写字母会变成大写。请参考代码: ```c #include <stdio.h> #include <ctype.h> int main() { char input; printf("请输入字符,直到输入@符号为止:\n"); while (1) { scanf("%c", &input); if (input == '@') { // 遇到@符号退出循环 break; } if (isalpha(input)) { // 字母进行大小写转换 if (islower(input)) { input = toupper(input); } else { input = tolower(input); } } if (!isdigit(input)) { // 数字保持不变,其他字符进行回显 printf("%c", input); } } printf("\n"); return 0; } ``` 此程序会不断读取键盘输入,直到遇到@符号为止。在每次读取输入后,它会检查输入是否为@符号,如果是,则跳出循环。然后,它会检查输入是否为字母,如果是,则将其大小写转换。最后,它会检查输入是否为数字,如果不是,则回显输入内容(除了数字)。程序执行完毕后,会输出一个换行符。 希望对您有帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值