#include stdio.h
西夏ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!
int count(char* s, char x);
int main()
{
char s[80], x;
gets(s);
scanf("\n%c", x);
printf("%d", count(s, x));
}
int count(char* s, char x)
{
static int n = 0;
if (*s)
{
if (*s == x)
n++;
count(s + 1, x);
}
return n;
}
就是一个栈的效果,先进后出
如输入abc\n
首先进入第一层reverse:c='a', c!='\n'
----进入第二层reverse:c='b', c!='\n'
--------进入第三层reverse:c='c', c!='\n'
------------进入第四层reverse:c='\n',
------------结束第四层reverse,回到第三层
--------c!='\n',输出c,结束第三层reverse,回到第二层
----c!='\n',输出b,结束第二层reverse,回到第一层
c!='\n',输出a,结束第一层reverse,程序结束
#include stdio.h#include string.h #define N 50 void input(char a[]) { char c; int i; printf("请在下面输入字符串:\n"); for(i = 0;i N;i++) { scanf("%c",c); if(c == 'q') break; // q to quit! while(c 'a' || c 'z') scanf("%c",c); // 只读入小写字母 a[i] = c; } a[i] = '\0'; // 添加串结束符} int fun(char a[],int length,int i) { if(i == length/2) return 1; if(a[i] != a[length - i - 1]) return 0; fun(a,length,i + 1); return 1;} int main() { char a[N]; int length; int i=0; input(a); length = strlen(a);// printf("%d",length); if(fun(a,length,i)) printf("yes\n"); else printf("no\n"); return 0;}