欠缺备忘录

1.前后差异判定

统计下列数组中单词的数量(单词之间以空格分隔)

        当前字符为‘空格’下一字符不为‘空格’则出现了新的单词

char array[]="I love China.";
int word=0,num=0;
for(i=0;'\0'!=array[i];i++)
	if(' '==array[i])
		word=0;
	else if(0==word)
	{
		word=1;
		num+=1;
	}
printf("%d\n",num);

2.前n项阶乘的和

int n=5,flag=1,sumni=0;
for(j=1;j<=n;j++)
{
	flag*=j;	//j的阶乘
	sumni+=flag;
}
printf("前n项阶乘的和:%d\n",sumni);

3.查找字符串

int FindKey_C(char* buf,char* key)
{
    int i=0,j=0;
    while('\0'!=buf[i])
    {
        if(key[0]==buf[i])        //第一个字符匹配
                for(j=0;buf[i+j]==key[j];j++)
                    if('\0'==key[j+1])    //前面都相同且下一个要匹配的字符为'\0',则查找成功
                    {
                        printf("find!\n");
                        return 1;
                    }
        else
            j=0;
        i++;
    }
    printf("no fund\n");
    return 0;
}

字符数组循环右移:

    字符数组最后一位:'\0'!!!

char buf[]="abcdefjhjkImnopgrstwvuxyz";
printf("初始值为:%s\n",buf);
int i=O, j=strlen(buf),k;
char temp;
printf(“输入右移位数:\n");
scanf("%d", &n);
while(i<n)
{
    k=j;
    while(0!=k)//右移1位
    {
        buf[k]=buf[k-1];
        k--;
    }
    buf[0]=buf[j];
    buf[j]='\O';
    i++;
}
printf (“位移%d后的值为:\n%s\n",n, buf);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值