下面程序接受键盘上的输入,直到按回车键为止,然后将输入的字符串输出,输出时如果原输入字符是英文大写字母则转成小写字母输出,如果是小写字母则转成大写字母输出,如果有连续的一个以上的空格时只输出一个空格。

int main(){ char cx, pre = '\0'; while(______________ != '\n') { if(cx != ' ') if(cx >= 'a' && cx <= 'z') putchar(cx - 32); else if(cx <= 'Z' && cx >= 'A') _______________; else putchar(cx); else if(pre != ' ') putchar(cx); __________________; }}

cx = getchar()
putchar(cx + 32)
pre = cx
望采纳!

供参考:

#include <stdio.h>
int main()
{
    char cx, pre = '\0';
    while((cx = getchar())!= '\n')  //______________
    {
        if(cx != ' ')
            if(cx >= 'a' && cx <= 'z')
                 putchar(cx - 32);
            else if(cx <= 'Z' && cx >= 'A')
                 putchar(cx + 32); //_______________;
            else
                putchar(cx);
        else if(pre != ' ')
            putchar(cx);
        pre = cx;  //__________________;
    }
    return 0;
}

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7649781
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:从键盘输入一个字符,如果是小写字母,则将其转换成大写字母输出;如果是大写字母,则将其转换成小写字母输出;如果是其它字符,则原样输出。
  • 除此之外, 这篇博客: 数组指针和指针数组用法和功能中的 :看词组的最后两个词是数组,那么含义是数组里面元素是指针的数组。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    我们看代码可以更容易理解。

    int a[3][4];
    	int(*p)[4];//数组指针,p先和*结合,说明p是一个指针变量,然后指着指向的是一个大小为4个整型的数组。所以p是一个指针,指向一个数组叫指针数组。
    //这里要注意:[]的优先级要高于*号的,所以必须加上()来保证p先和*结合。
    一个数组,叫数组指
    	int *q[3];//指针数组
    	p = a;
    	for (int i = 0; i < 3; ++i)
    	{
    		q[i] = a[i];数组名一定不能放在左值
    	}
    	int a[3][4];//a(int(*)[4])a[i](int *) a[i][j](int)
    	int b[10];//b(int *) b[i](int)

    从二维数组来理解,首先先介绍几个概念。

    • 数组名代表数组首元素的首地址。
    • 数组的下标为什么从0开始?因为下标表示的是当前元素距首地址的偏移量。
    • 用树的方法来理解二维数组。
    • a[0]    
      a[1]    
      a[2]    

  • 您还可以看一下 吴刚老师的【吴刚大讲堂】电商应用界面设计课程中的 列表页视觉设计的文案梳理方法小节, 巩固相关知识点
  • 以下回答来自chatgpt:

    针对上述问题,优化程序可以从以下几个方面考虑:

    1.数据类型转换: 根据输入的具体数据类型,进行必要的数据类型转换,以保证程序正常运行。如果输入的是字符串类型,则需要将其转换为具体的数据类型进行处理。

    2.处理连续空格: 通过使用字符串处理函数,如trim()、replace()等,可以去除连续的空格,保障程序正常运行。

    3.输出格式处理: 根据具体的要求,对输出格式进行必要的处理,如添加分隔符、对齐等等。

    4.代码分块: 通过将程序模块化、分块实现,可以保证各个功能块之间的依赖性较少,提高程序的可扩展性和可维护性。

    以Python为例,下面是一种可能的实现方式:

    # 对于输入的字符串s,可能包含多个数字,需要先将其进行拆分
    nums = s.split()
    
    # 对于每个数字,需要进行转换和求平方操作,并将结果保存到列表中
    res = []
    for num in nums:
        # 数据类型转换
        num = float(num)
        # 求平方
        square = num ** 2
        res.append(square)
    
    # 处理连续空格
    output = ' '.join(str(x) for x in res)
    
    # 输出格式处理
    output = output.replace(' ', ',')
    
    # 打印结果
    print(output)
    

    在上述代码中,首先将输入字符串s按照空格拆分成多个数字,对于每个数字进行数据类型转换和求平方操作,并将结果保存到列表中。然后,将列表中的每个元素按照一定格式连接起来,处理连续空格,并对输出格式进行必要的处理。最后,将处理后的结果输出即可。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^