c语言编程输入一行英文字符,c输入一行字符串

本文目录一览:

C语言编程:从键盘中输入一个英文字符串

#includestdio.h

#includestdlib.h

int main()

{

int strSize = 100;

char *str = (char *)malloc(sizeof(char) * strSize);

int charNum = 0;

char input;

//逐个字符输入字符串,可以输入int可以表示的最大值个字符

printf(“请输入任意个字符:\n”);

while(true)

{

scanf(“%c”,input);

if(input != ‘#’)

{

if((input = ‘A’ input = ‘Z’) || (input = ‘a’ input = ‘z’))

{

if(charNum strSize)

{

strSize += 100;

str = (char *)realloc(str,strSize);

}

str[charNum] = input;

charNum++;

}

}

else

{

break;

}

}

//输入结果分析

int i = 0,j = 0;

char *tempChar = (char *)malloc(sizeof(char) * charNum);

int *tempCharNum = (int *)malloc(sizeof(int) * charNum);

int charType = 0;

bool exist = false;

for(i = 0; i charNum; i++)

{

exist = false;

tempChar[i] = ‘#’;

tempCharNum[i] = 0;

for(j = 0; j charNum; j++)

{

if(tempChar[j] == ‘#’)

{

break;

}

if(tempChar[j] == str[i])

{

exist = true;

tempCharNum[j] += 1;

}

}

if(exist == false)

{

tempChar[charType] = str[i];

tempCharNum[charType] = 1;

charType++;

}

}

int t1;

char t2;

for(j = 0; j charType – 1; j++)

{

for(i = 0; i charType; i++)

if(tempCharNum[i] tempCharNum[i+1])//如果a[i]大于a[i+1]

{

//交换a[i]和a[i+1]的值,即把较大的元素往后排

t1 = tempCharNum[i];

tempCharNum[i] = tempCharNum[i+1];

tempCharNum[i+1] = t1;

t2 = tempChar[i];

tempChar[i] = tempChar[i+1];

tempChar[i+1] = t2;

}

}

for(i = 0; i charNum; i++)

{

if(tempChar[i] != ‘#’)

{

printf(“单词:%c,次数:%d\n”,tempChar[i],tempCharNum[i]);

}

}

free(str);

free(tempChar);

free(tempCharNum);

return 0;

}

C语言编程:输入一行字符,输出其中英文字母、空格、数字和其它字符的个数?

#include stdio.h

int isletter(char c)

{

    return c=’a’c=’z’||c=’A’c=’Z’;

}

int isdigit(char c)

{

    return c=’0’c=’9′;

}

int isblank(char c)

{

    return c==’ ‘;

}

int main()

{

    char c;

    int letters,digits,blanks,others;

    for(letters=digits=blanks=others=0;(c=getchar())!=’\n’;)

        if(isletter(c))

            letters++;

        else if(isdigit(c))

            digits++;

        else if(isblank(c))

            blanks++;

        else

            others++;

    printf(“letters:%d blanks:%d digits:%d others:%d\n”,letters,blanks,digits,others);

    return 0;

}

c语言:输入一行英文字符串,把每个单词第一个字母变为大写,输出修改后的字符串

#includelt;ctype.hgt;

#includelt;string.hgt;

#includelt;stdio.hgt;

int main(int argc,char*argv[])

{

char str[100+1];

int isfirst=1;

char ch;

int i=0;

while((ch=getchar())!=EOF)

{

if(isalpha(ch))

{

if(isfirst==1)

{

ch=toupper(ch);

isfirst=0;

}

}

else

{

isfirst=1;

}

str[i++]=ch;

}

strlt;igt;=’\0′;

printf(“%s\n”,str);

return 0;

}

扩展资料:

printf用法:

printf()函数的调用格式为:printf(“lt;格式化字符串gt;”,lt;参量表gt;)。

其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以”%”开始,后跟一个或几个规定字符,用来确定输出内容格式。

参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用”,”分开,且顺序一一对应,否则将会出现意想不到的错误。

比如:

int a=1234;

printf(“a=%d\n”,a);

输出结果为a=1234。

scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#includelt;stdio.hgt;。

int scanf(const char*restrict format,…);

函数scanf()是从标准输入流stdin(标准输入设备,一般指向键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。

如:

scanf(“%d%d”,a,b);

函数返回值为int型,如果a和b都被成功读入,那么scanf的返回值就是2。

c语言怎样才能输入一行字符,以回车作为结束标志,分别统计出大写字母,小写字母,空格,数字和其他字符?

C代码和运行结果如下:

统计结果正确,望采纳~

附源码:

#include stdio.h

int main() {

  char s[100];

  fgets(s, 100, stdin); // 输入一行字符,包括行尾的’\n’

  int i = 0, upper = 0, lower = 0, space = 0, digit = 0, other = 0;

  while (s[i] != ‘\n’) {

      if (s[i] = ‘A’ s[i] = ‘Z’)

          upper++;

      else if (s[i] = ‘a’ s[i] = ‘z’)

          lower++;

      else if (s[i] == ‘ ‘)

          space++;

      else if (s[i] = ‘0’ s[i] = ‘9’)

          digit++;

      else

          other++;

      i++;

  }

  printf(“大写字母:%d, 小写字母:%d, 空格:%d, 数字:%d, 其他:%d\n”,

      upper, lower, space, digit, other);

  return 0;

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/242871.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 12:53
下一篇 2024-12-12 12:53

相关推荐

  • 英语年龄用连字符号(Hyphenation for English Age)

    英语年龄通常使用连字符号表示,比如 “five-year-old boy”。本文将从多个方面探讨英语年龄的连字符使用问题。 一、英语年龄的表达方式 英语中表…

    编程 2025-04-29
  • Python字符串宽度不限制怎么打代码

    本文将为大家详细介绍Python字符串宽度不限制时如何打代码的几个方面。 一、保持代码风格的统一 在Python字符串宽度不限制的情况下,我们可以写出很长很长的一行代码。但是,为了…

    编程 2025-04-29
  • Python中将字符串转化为浮点数

    本文将介绍在Python中将字符串转化为浮点数的常用方法。在介绍方法之前,我们先来思考一下这个问题应该如何解决。 一、eval函数 在Python中,最简单、最常用的将字符串转化为…

    编程 2025-04-29
  • Python字符转列表指南

    Python是一个极为流行的脚本语言,在数据处理、数据分析、人工智能等领域广泛应用。在很多场景下需要将字符串转换为列表,以便于操作和处理,本篇文章将从多个方面对Python字符转列…

    编程 2025-04-29
  • 如何切分英文

    切分英文是自然语言处理中的一个重要步骤,它包括将一段英文文本划分成若干个单词和标点符号。如何准确地切分英文对于后续的文本处理任务具有决定性的影响,因此切分英文也成为了自然语言处理领…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • AES加密解密算法的C语言实现

    AES(Advanced Encryption Standard)是一种对称加密算法,可用于对数据进行加密和解密。在本篇文章中,我们将介绍C语言中如何实现AES算法,并对实现过程进…

    编程 2025-04-29
  • 学习Python对学习C语言有帮助吗?

    Python和C语言是两种非常受欢迎的编程语言,在程序开发中都扮演着非常重要的角色。那么,学习Python对学习C语言有帮助吗?答案是肯定的。在本文中,我们将从多个角度探讨Pyth…

    编程 2025-04-29
  • Python学习笔记:去除字符串最后一个字符的方法

    本文将从多个方面详细阐述如何通过Python去除字符串最后一个字符,包括使用切片、pop()、删除、替换等方法来实现。 一、字符串切片 在Python中,可以通过字符串切片的方式来…

    编程 2025-04-29
  • Python被称为胶水语言

    Python作为一种跨平台的解释性高级语言,最大的特点是被称为”胶水语言”。 一、简单易学 Python的语法简单易学,更加人性化,这使得它成为了初学者的入…

    编程 2025-04-29

发表回复

登录后才能评论