1. 牛牛的短信
描述
牛牛很喜欢发短信,他所用的通讯公司的收费方法如下:
1.每条短信收费0.1元
2.每条短息的字数不超过60字,如果超过60字,将按照0.2元的价格收费。
牛牛这个月发了 n 条短信,请问牛牛一共要缴多少短信费
输入描述:
第一行输入一个正整数 n ,表示发送短信的条数,
第二行输入 n 个正整数,表示牛牛发送的 n 条短信中每条短信的字数
输出描述:
输出牛牛这个月要缴的短信费
示例1
输入:
2
50 60
输出:
0.2
示例2
输入:
3
55 12 123
输出:
0.4
#include <stdio.h> float my_add(int score) { if(score<=60) return 0.1; else return 0.2; } int main () { int n=0; scanf("%d",&n); int score=0; int i=0; float sum1=0; float sum2=0; for(i=0;i<n;i++) { scanf("%d",&score); if(score<=60) { sum1=sum1+my_add(score); } if(score>60) { sum2=sum2+my_add(score); } } printf("%.1f",sum1+sum2); return 0; }
2.数字统计
描述
请统计某个给定范围[L, R]的所有整数中,数字2出现的次数。
比如给定范围[2, 22],数字2在数2中出现了1次,在数12中出现1次,在数20中出现1次,在数21中出现1次,在数22中出现2次,所以数字2在该范围内一共出现了6次。
输入描述:
输入共1行,为两个正整数L和R,之间用一个空格隔开。
输出描述:
输出共1行,表示数字2出现的次数。
示例1
输入:
2 22
输出:
6
示例2
输入:
2 100
输出:
20
备注:
1≤L≤R≤10000。
#include <stdio.h> int su(int i) { int count=0; while(i!=0) { if(i%10==2) count++; i=i/10; } return count; } int main () { int l=0; int r=0; scanf("%d %d",&l,&r); int i=0; int sum=0; for(i=l;i<=r;i++) { sum=sum+su(i); } printf("%d\n",sum); return 0; }
3.The Biggest Water Problem
描述
给你一个数,让他进行巴啦啦能量,沙鲁沙鲁,小魔仙大变身,如果进行变身的数不满足条件的话,就继续让他变身。。。直到满足条件为止。
巴啦啦能量,沙鲁沙鲁,小魔仙大变身:对于一个数,把他所有位上的数字进行加和,得到新的数。
如果这个数字是个位数的话,那么他就满足条件。
输入描述:
给一个整数数字n(1<=n<=1e9)。
输出描述:
输出由n经过操作满足条件的数
示例1
输入:
12
输出:
3
说明:
12 -> 1 + 2 = 3
示例2
输入:
38
输出:
2
说明:
38 -> 3 + 8 = 11 -> 1 + 1 = 2
#include <stdio.h> int output(int n) { while (1) { n = n % 10 + n / 10; if (n >= 10) output(n); else return n; } } int main() { int n, sum; scanf("%d", &n); printf("%d", output(n)); return 0; }