c习题记录二
问题A 字符出现的次数
题目描述
输入一个字符串s,长度不超过100,判断字符c在字符串s中出现的次数。
输入
多组数据,每组数据占2行,第一行为一个字符串,第二行为一个字符。
输出
字符在字符串中出现的次数。
样例输入
abcabcdabcc
a
样例输出
3
(有函数有指针)
#include"stdio.h"
int f(char *s,char ch)
{
int i,t=0;
for(i=0;*(s+i)!='\0';i++){
if(*(s+i)==ch)
t++;
}
printf("%d\n",t);
}
main()
{
int i,t;
char ch,s[100];
while(scanf("%s\n%c",s,&ch)!=EOF){
f(s,ch);
}
}
问题B 将字符串转换成整数
题目描述
判断一个字符串是否由阿拉伯数字组成,且头一个数字不是0. 然后将其转换为整数后其值在0~255之间。如果满足条件则输出YES,否则输出NO
输入
多组数据,每组一行字符串不超过10个字符。
输出
如果都是阿拉伯数字且不以数字0开头。同时转换成整数后其值在0~255之间则输出YES,否则输出NO
样例输入
123
456
012
12A
样例输出
YES
NO
NO
NO
#include"stdio.h"
#include"string.h"
void f(char str[],int len)
{
int i,j,t=0;
if(str[0]=='0') //不以数字0开头
printf("NO\n");
else{
for(i=0;i<len;i++)
if(str[i]>='0'&&str[i]<='9')
t++;
if(t==len) //全部为阿拉伯数字
{
</