2. 实现将键盘输入的字符串中的数字字符转换成比它小1的数字字符,

  1. 实现将键盘输入的字符串中的数字字符转换成比它小1的数字字符,
    如’9’换成’8’, ’8’换成’7’ ,……,’0’换成’9’,其他字符保持不变。
    若输入:ABC123def4590!
    则输出:ABC012def3489!
#include <stdio.h>
int main()
{
    char s[1001];
    gets(s);
    int i=0;
    while(s[i] != 0)
    {
        if(s[i] >='0' && s[i] <='9')
            s[i] = (s[i]-'0'+1)%10+'0';
        i++;  
    }
    puts(s);
}

可以使用 C 语言中的 getchar 函数来读取键盘输入的字符。每次调用 getchar 函数都会返回一个读取的字符。您可以使用一个循环来读取多个字符,并在每次循环中检查读取的字符是否为数字字符。如果读取的字符是数字字符,则将它转换成比它小1的数字字符,如果不是,则保持不变。

下面是一个示例代码:

#include <stdio.h>

int main() {
  // 定义一个变量来保存读取的字符
  char c;

  // 使用一个循环来读取多个字符
  while ((c = getchar()) != EOF) {
    // 如果读取的字符是数字字符,则将它转换成比它小1的数字字符
    if (c >= '0' && c <= '9') {
      c = '0' + (c - '1');
    }
    // 将转换后的字符输出到屏幕上
    putchar(c);
  }

  return 0;
}

在上面的代码中,我们使用 getchar 函数来读取键盘输入的字符,然后使用一个循环来检查读取的字符是否为数字字符。如果是,则将它转换成比它小1的数字字符,并使用 putchar 函数将转换后的字符输出到屏幕上。