#includestdio.h
创新互联建站专注于企业全网营销推广、网站重做改版、泉山网站定制设计、自适应品牌网站建设、H5响应式网站、商城网站制作、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为泉山等各大城市提供网站开发制作服务。
int main(void)
{ int num[10]={0} ; //定义数组,里面的元素全部为0,用来统计0--9出现的次数
int b[]={1,2,3,4,4,1,3}; //定义数组B,里面存放你要输入的数字串
int i ;
for(i=0;isizeof(b);i++)
num[ b[i] ] ++;
for(i=0;i10;i++)
printf( "%d",num[i]);
return 0;
}
可以参考下面的代码:
#include stdio.h
#include string.h
voidmain()
{charc,s[80];inti,k=0;
gets(s);/*输入字符串*/
printf("Pleaseinputacharacter:");c=getchar();
for(i=0;s[i]!='\0';i++)
{if(s[i]==c)
k++;
}
printf("%cisfound%dtimes",c,k);
}
C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
扩展资料:
C语言参考函数
C语言labs()函数:求整数的绝对值(针对long类型)
C语言isgraph()函数:判断一个字符是否是图形字符
C语言isdigit()函数:判断一个字符是否为数字
C语言iscntrl()函数:判断一个字符是否为控制字符
C语言isalpha()函数:判断一个字符是否是字母
C语言isalnum()函数:判断一个字符是否是字母或者数字
C语言frexp()函数:提取浮点数的尾数和指数部分
参考资料来源:百度百科-c语言
看我旁边做的注解
cnt(s,array); /*调用子函数cnt,并传给参数s,
array。s是字符数组,相当于字符串指针;array是数组好理解*/
for(i=0;i26;i++)
printf("%d",array[i]);
/*
for循环
依次输出26个字母出现的次数。这里%d后面加个空格或逗号分隔才好
*/
printf("\n");
子函数
void
cnt(char
*p,int
arr[])
/*
第一个参数是字符串指针,第二个参数是整型数组
*/
{
int
i;
for(i=0;i26;i++) /*数组初始化*/
arr[i]=0;
/*
26个字母的个数全初始设置为0
*/
while(*p)
/*
循环,*p表示取指针p所指的字符,如果为0则表示字符串结束,退出循环
*/
{
if(*p='a'*p='z') /*数组元素判断*/
/*
判断是否是a到z的字母,若是才统计*/
arr[*p-'a']++; /*p与字母a的差值刚好就是数组arr下标*/
/*
字母a对应数组的下标是0,
b是1,依次类推
*/
p++;
/*
指针加1,
指向后面一个字符
*/
}
}
#includelt;stdio.hgt;
#includelt;stdlib.hgt;
int findsub(char*src,char*s)
{
char*ptr=src,*p=s;//定义两个指针
char*ptr2=src+strlen(src),*prev=NULL;//ptr2为src的末位置指针
int len=strlen(s),n=0;//子串的长度和计数器
for(;*ptr;ptr++)//循环整个串
{
if(ptr2-ptrlt;len)//如果一开始子串就大于src,则退出
break;
for(prev=ptr;*prev==*p;prev++,p++)//寻找第一个相等的位置,然后从此位置开始匹配子串
{
if(*(p+1)==0||*(p+1)==10)//如果已经到了子串的末尾
{
n++;//自增
p=s;//重新指向子串
break;//退出
}
}
}
return n;
}
int main(void)
{
char a[81],b[81];//定义两个字符数组
printf("输入原字符串:");
fgets(a,81,stdin);//输入
printf("输入子字符串:");
fgets(b,81,stdin);
printf("找到:%d\n",findsub(a,b));
system("pause");
return 0;
}
扩展资料:
①printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。
格式输出,它是c语言中产生格式化输出的函数(在stdio.h中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。
要输出的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
简单点理解就是,在一段程序中你正确使用该函数,可以在该程序运行的时候输出你所需要的内容。
②printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在使用printf函数之前必须包含stdio.h文件。
printf()函数的调用格式为:printf("lt;格式化字符串gt;",lt;参量表gt;)。
其中格式化字符串用于指定输出格式。格式控制串可由格式字符串和非格式字符串两种组成。
b[a[i]]++; a[i] 是数组元素,数值在0-9范围内,所以b[a[i]] 总在 b[0]到b[9]之间。
b[] 已初始化为 0。
b[a[i]]++; 是 b[a[i]]=b[a[i]]+1; 它是累加器。
可以看成: x=a[i]; b[x]=b[x]+1; 第一次 b[x]++变1,第二次 b[x]++变2, 第三次 b[x]++变3。 例如 i=1,7,9 时 x=5,b[5] 累加3次变3。 这样就统计出5出现的次数了。
实现代码:
#include stdio.h
int main() {
int num = 0, i = 0;
printf("请输入一个整数:");
scanf("%d", num);
int array[10] = {};
while(num) {
array[num % 10]++; //让数组下标代表所判断的数字
num /= 10;
}
for (i = 0; i 10; i++) {
if (array[i] != 0)
printf ("%d有%d个\n", i, array[i]);
return 0;
}
扩展资料:
printf用法:
printf()函数的调用格式为:printf("<格式化字符串>",<参量表>)。
其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。
参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。
比如:
inta=1234;
printf("a=%d\n",a);
输出结果为a=1234。