c语言 输入一串字符串,统计并输出其中的大写字母、小写字母、数字字符、其它字符的个数。
用指针编写程序
#include<stdio.h>
void main()
{
char a[100];
int sum0=0,suma=0,sumA=0;
gets(a);
char*p;
for(p=a;*p!='\0';p++)
{
if(*p>='0'&&*p<='9')
sum0+=1;
else if(*p>='a'&&*p<='z')
suma+=1;
else if(*p>='A'&&*p<='Z')
sumA+=1;
}
printf("数字字符数量:%d\n小写字母字符数量:%d\n大写字母字符数量:%d\n",sum0,suma,sumA);
}
扩展资料:
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:
#include<math.h>//一些数学函数的原型,以及相关的类型和宏
如果需要包含针对程序所开发的源文件,则应该使用第二种格式。
采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。如下例所示:
#include"myproject.h"//用在当前项目中的函数原型、类型定义和宏
你可以在#include命令中使用宏。如果使用宏,该宏的取代结果必须确保生成正确的#include命令。例1展示了这样的#include命令。
【例1】在#include命令中的宏
#ifdef _DEBUG_
#define MY_HEADER"myProject_dbg.h"
#else
#define MY_HEADER"myProject.h"
#endif
#include MY_HEADER
当上述程序代码进入预处理时,如果_DEBUG_宏已被定义,那么预处理器会插入myProject_dbg.h的内容;如果还没定义,则插入myProject.h的内容。
1 输入字符串;
2 对输入的字符串遍历,并分别统计个数;
3 遍历结束后输出。
代码:
int main()
{
char s[100];
int d,x,s,q,i;
gets(s);
d=x=s=q=0;
for(i = 0; s[i]; i ++)
if(s[i]>='A' && s[i]<='Z')d++;
else if(s[i]>='a' && s[i]<='z')x++;
else if(s[i]>='0' && s[i]<='9')s++;
else q++;
printf("%d %d %d %d\n",d,x,s,q);
}
#include<string.h>
main()
{
char ch[100];
int a=0,b=0,c=0,d=0,i=0;
printf("input :");
gets(ch);
while(ch[i]!='\0')
{
if(ch[i]>='A'&&ch[i]<='Z')a++;
else if(ch[i]>='a'&&ch[i]<='z')b++;
else if(ch[i]>='0'&& ch[i]<='9')c++;
else d++;
i++;
}
printf("大写字母:%d\n小写字母:%d\n数字:%d\n其他字符:%d\n",a,b,c,d);
}
#include<string.h>
void main()
{
char ch[100];
int a=0,b=0,c=0,d=0,i=0;
printf("请输入 :");
gets(ch);
while(ch[i]!='\0')
{
if(ch[i]>='A'&&ch[i]<='Z')a++;
else if(ch[i]>='a'&&ch[i]<='z')b++;
else if(ch[i]>='0'&& ch[i]<='9')c++;
else d++;
i++;
}
printf("大写字母:%d\n",a);
printf("小写字母:%d\n",b);
printf("数字字母:%d\n",c);
printf("其他字母:%d\n",d);
}
{
char s[100];
int i,j=0,k=0,l=0,m=0;
printf("Please input strings:");
gets(s);
for(i=0;s[i]!='\0';i++)
{
if(s[i]>='0'&&s[i]<='9') j++;
else if(s[i]>='a'&&s[i]<='z') k++;
else if(s[i]>='A'&&s[i]<='Z') l++;
else m++;
}
printf("%d\n%d\n%d\n%d\n",j,k,l,m);
}