小编Taj*_*aji的帖子

用于识别大写/小写字母C的功能

我正在尝试创建一个函数来识别第一个字母输入是大写还是小写,然后在相同的情况下(上/下)输出字符串的其余部分.

例如,"Hi there"会成为"HI THERE".

我不熟悉fgets.一旦我运行它,我可以输入并按Enter键,程序不会运行.我没有得到任何编译器错误.我相信我在虚空移位功能上出错了.

另外,我知道gets不推荐,fgets类似吗?或者它更好用scanf吗?

#include <stdio.h>
#include <ctype.h>
void shift (char *my_string); // Function declaration

int main()
{
  char inputstring[50];

  printf("Enter a string\n");
  char *my_string = inputstring;
  shift(my_string); // Function
}

void shift (char *my_string) // Function definition
{
  int i =0;
  char ch;

  for(i=0; i<50; i++)
    fgets(my_string, 50, stdin);

  while(my_string[i])
  {
    if(ch>='A' && ch<= 'Z') // When first char is uppercase
    {
      putchar (toupper(my_string[i]));
      i++; …
Run Code Online (Sandbox Code Playgroud)

c string lowercase uppercase

2
推荐指数
1
解决办法
2530
查看次数

标签 统计

c ×1

lowercase ×1

string ×1

uppercase ×1