居家必备练习题(C语言)

1.数位五五

 2.简写单词

3.字符串操作

   笔者开头感想,如今大部分高校已经开学,当然笔者也不列外!但是由于疫情的原因,笔者被迫在家上网课学习!一脸忧愁,而这恰恰给了笔者自学的机会!相信笔者会加油滴!按照时间的步伐来追寻科班的脚步!C语言练习题集册见!

1.数位五五

描述

求出[a,b]区间内有多少个数数位之和为5的倍数

输入描述:

输入一行包含两个整数a,b (1<= a<= b<=1000000)

输出描述:

输出一个整数

示例1

输入:

10 20

输出:

2

说明:

14和19的数位和为5和10,符合条件   
#include <stdio.h>
int main()
{
    int a = 0;
    int b = 0;
    scanf("%d %d", &a, &b);
    int i = 0;
    // int sum=0;
    int count = 0;
    for (i = a; i <= b; i++)
    {
        int tab = i;
        int sum = 0;
        while (tab)
        {
            sum = sum + tab % 10;
            tab = tab / 10;
        }
        if (sum % 5 == 0)
            count++;
    }
    printf("%d\n", count);
    return 0;
}

 

 2.简写单词

规定一种对于复合词的简写方式为只保留每个组成单词的首字母,并将首字母大写后再连接在一起

比如 “College English Test”可以简写成“CET”,“Computer Science”可以简写为“CS”,“I am Bob”简写为“IAB”

输入一个长复合词(组成单词数 sum,sum\geq1且sum\leq100sum,sum≥1且sum≤100,每个单词长度len,len\geq1且len\leq50len,len≥1且len≤50),请你输出它的简写

输入描述:

输入一个复合词

输出描述:

输出一行,表示复合词的简写

示例1

输入:

College English Test

输出:

CET

 

#include <stdio.h>
#include <string.h>
int main ()
{
    char ch[1000]={0};
    gets(ch);
    int i=0;
    int len=strlen(ch);
    for(i=0;i<len;i++)
    {
        if(ch[i]>=97)
        {
            ch[i]=ch[i]-32;
        }
    }
    printf("%c",ch[0]);
    for(i=0;i<len;i++)
    {
        if(ch[i]==' ')
            printf("%c",ch[i+1]);
    }
    return 0;
}

3.字符串操作

描述

给定长度为n的只有小写字母的字符串s,进行m次操作,每次将[l,r]范围内所有c1字符改成c2,输出操作完的字符串

输入描述:

第一行两个数n,m
第二行一个字符串s
之后m行,每行两个数l r两个字符c1 c2

输出描述:

输出一行一个字符串

示例1

输入:

5 3
wxhak
3 3 h x
1 5 x a
1 3 w g

输出:

gaaak

说明:

第一次修改后为wxxak
第二次修改后为waaak
第三次修改后为gaaak

备注:

对于100%的数据,有1<=n , m<=100
#include <stdio.h>
int main ()
{
    int n=0;
    int m=0;
    scanf("%d %d",&n,&m);
    char ch[100]={0};
    scanf("%s",&ch);
  //  puts(ch);
    int l=0;
    int r=0;
    char ch1=0;
    char ch2=0;
    int i=0;
    for(i=0;i<m;i++)
    {
        scanf("%d %d %c %c",&l,&r,&ch1,&ch2);
        int j=0;
        for(j=l;j<=r;j++)
        {
            if(ch[j-1]==ch1)
                ch[j-1]=ch2;
        }
        
    }
     printf("%s",ch);
 //   gets(ch);
    return 0;
}

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

念君思宁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值