1.数位五五
2.简写单词
3.字符串操作
笔者开头感想,如今大部分高校已经开学,当然笔者也不列外!但是由于疫情的原因,笔者被迫在家上网课学习!一脸忧愁,而这恰恰给了笔者自学的机会!相信笔者会加油滴!按照时间的步伐来追寻科班的脚步!C语言练习题集册见!
1.数位五五
求出[a,b]区间内有多少个数数位之和为5的倍数
输入一行包含两个整数a,b (1<= a<= b<=1000000)
输出一个整数
输入:
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),请你输出它的简写
输入一个复合词
输出一行,表示复合词的简写
输入:
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
输出一行一个字符串
输入:
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;
- }