能运行出来,但是不知道为什么考试提交时候显示不对😭

img


#include <iostream>
using namespace std;
int main()
{
    int i=0;
    char n;
    do
      {cin>>n;
    if(n>='A'&&n<='Z')
      {n=n+32;
      cout <<n<< endl;}
    else if(n>='a'&&n<='z')
      {n=n-32;
       cout <<n<< endl;}
    else if(n>='0'&&n<='9')
      {cout <<n<< endl;}
    else
      {cout<<"other"<<endl;}
        i++;}
    while(i<=4);
    return 0;
}

谢谢各位哥哥姐姐,孩子初学请见谅😭

这个示例是输入4行,但不是每个测试输入都是4行
需要用 while (cin >> n) 判断输入结束

你题目的解答代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)

#include <iostream>
using namespace std;
int main()
{
    int i = 0;
    char n;
    while (cin >> n)
    {
        if (n >= 'A' && n <= 'Z')
        {
            n = n + 32;
            cout << n << endl;
        }
        else if (n >= 'a' && n <= 'z')
        {
            n = n - 32;
            cout << n << endl;
        }
        else if (n >= '0' && n <= '9')
        {
            cout << n << endl;
        }
        else
        {
            cout << "other" << endl;
        }
    }
    return 0;
}

供参考:

#include<stdio.h>
int main()
{
   char a;
   int n=4;
   while(n--)
   {
       scanf("%c",&a);
       getchar();
       if(a>='a'&&a<='z') {
          a=a-32;printf("%c\n",a);
       }
       else if(a>='A'&&a<='Z') {
          a=a+32;printf("%c\n",a);
       }
       else if(a>='0'&&a<='9') {
          printf("%c\n",a);}
       else {
          printf("other\n");
       }
   }
   return 0;
}
 

用cin是不行的,因为需要你换行后才能响应,不能满足题目要求。考虑使用getch()