2025年ZZUIL题解1131-1140

ZZUIL题解1131-11401131 最常用字符 1132 数字字符统计 1133 单词个数统计 1134 字符串转换 1135 算菜价 1136 首字母变大写 1137 查找最大元素 1138 C 语言合法标识符 1139 输出最短字符串 1140 小数点后第 n 位 多实例 1131 最常用字符 题目描述 英文字母里出现频率最高的是哪个字母呢

大家好,我是讯享网,很高兴认识大家。

1131:最常用字符

1132:数字字符统计

1133: 单词个数统计

1134: 字符串转换

1135: 算菜价

1136: 首字母变大写

1137: 查找最大元素

1138: C语言合法标识符

1139: 输出最短字符串

1140: 小数点后第n位 多实例

1131:最常用字符

题目描述

英文字母里出现频率最高的是哪个字母呢? 给定一个字符串,输出字符串中出现次数最多的字母。

输入

输入一个只含有大小写字母和空格的字符串,长度不超过100,以回车结束。

输出

输出一个小写字母,表示该字符串中出现次数最多的字母。若答案有多个,则只输出ASCII码最小的那个。

样例输入 Copy

An apple

样例输出 Copy

a

AC代码:

#include <stdio.h> int main() { 
    int a[30]={ 
   0}; char s[110],ch; int i,j=0,k,n; gets(s); for(i=0; s[i]!='\0'; i++){ 
    if(s[i]>='A'&&s[i]<='Z')//遇到一个大写字母之后转化为小写  s[i]+=32; if(s[i]>='a'&&s[i]<='z'){ 
   //遇到小写字母在对应的数组中加1  ch=s[i]-'a'; a[ch]++; } } int max=a[0]; for(i=1; i<26; i++){ 
    if(a[i]>max){ 
    max=a[i]; j=i; } } ch= 'a' + j; printf("%c", ch); return 0; } 

讯享网

1132: 数字字符统计

题目描述

对于给定的一个字符串,统计其中数字字符出现的次数。字符串长度不超过1000.

输入

输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。

输出

对于每个测试实例,输出该串中数字字符的个数,每个输出占一行。

样例输入 Copy

2
asdfasdfasdfasdf
asdfasdfasdfasdf

样例输出 Copy

AC代码:

讯享网#include<stdio.h> int main(){ 
    int i,n,num; char s[1020]; scanf("%d", &n); getchar();//吃掉换行 while(n--){ 
    num=0; gets(s); for(i=0; s[i]!='\0'; i++){ 
    if(s[i]>='0'&&s[i]<='9') num++; } printf("%d\n", num); } return 0; } 

1133: 单词个数统计

题目描述

从键盘输入一行字符,长度小于1000。统计其中单词的个数,各单词以空格分隔,且空格数可以是多个。

输入

输入只有一行句子。仅有空格和英文字母构成

输出

单词的个数

样例输入 Copy

stable marriage problem Consists of Matching members

样例输出 Copy

7

#include<stdio.h> #include<string.h> int main(){ 
    int i,n,num=0,len; char s[1020]; gets(s); len=strlen(s); for(i=0; s[i]!='\0'; i++){ 
    if(s[i]!=' '&&s[i+1]==' ') num++; } if(s[len-1]!=' ')//处理最后一个字符 num++; printf("%d\n", num); return 0; } 

1134: 字符串转换

题目描述

输入一个以回车结束的字符串,它由数字和字母组成,请过滤掉所有非数字字符,然后将数字字符串转换成十进制整数后乘以2输出。

输入

输入一个以回车结束的字符串,长度不超过100,由数字和字母组成。

输出

将转换后的整数乘以2输出,测试数据保证结果在int范围内。

样例输入 Copy

sg987aa65t498

样例输出 Copy

AC代码:

讯享网#include<stdio.h> int main(){ 
    int i,n,num=0,len; char s[102]; gets(s); for(i=0; s[i]!='\0'; i++){ 
    if(s[i]>='0'&&s[i]<='9') num=num*10+s[i]-'0'; } printf("%d\n", num*2); return 0; } 

1135: 算菜价

题目描述

妈妈每天都要出去买菜,但是回来后,兜里的钱也懒得数一数,到底花了多少钱真是一笔糊涂帐。现在好了,作为好儿子(女儿)的你可以给她用程序算一下了,呵呵。

输入

输入含有一些数据组,每组数据包括菜种(不含空格的字串),数量w(计量单位不论,一律为double型数)和单价p(double型数,表示人民币元数),因此,每组数据的菜价就是数量乘上单价啊。菜种、数量和单价之间都有空格隔开的。

输出

支付菜价的时候,由于最小支付单位是角,所以总是在支付的时候采用四舍五入的方法把分头去掉。最后,请输出一个精度为角的菜价总量。

样例输入 Copy

青菜 1 2
萝卜 2 1.5
鸡腿 2 4.2

样例输出 Copy

13.4

提示

知道%*s的作用吗?试试 while( scanf(“%*s%lf%lf”, &w,&p) != EOF ){ }


讯享网

来源/分类

#include<stdio.h> int main(){ 
    double w,p,money=0; while(scanf("%*s%lf%lf", &w,&p) != EOF ){ 
    money+=w*p; } printf("%.1f\n", money); return 0; } 

1136: 首字母变大写

题目描述

输入一个只包含大小写英文字母和空格的句子,将每个单词的第一个字母改成大写字母。

输入

输入一个长度不超过100的英文句子。

输出

请输出按照要求改写后的英文句子。

样例输入 Copy

i like ACM

样例输出 Copy

I Like ACM

讯享网#include<stdio.h> int main(){ 
    int i; char s[150]; gets(s); if(s[0]>='a'&&s[0]<='z')//首先解决掉第一个单词  s[i]-=32; for(i=0; s[i]!='\0'; i++){ 
   //要注意第一个字符是空格的情况!!!!  if(s[i]==' '&&s[i+1]!=' '){ 
    if(s[i+1]>='a'&&s[i+1]<='z') s[i+1]-=32; } } puts(s); return 0; } 

1137: 查找最大元素

题目描述

对于输入的字符串,查找其中的ASCII码值最大字母,在该字母后面插入字符串“(max)”。

输入

输入一行长度不超过200的字符串组成,字符串仅由大小写字母构成。

输出

输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入"(max)"。

样例输入 Copy

abcdefgfedcbag

样例输出 Copy

abcdefg(max)fedcbag(max)

 #include<stdio.h> int main(){ 
    int i; char s[220],max; gets(s); //找到ASCII码最大的字母  for(i=1; s[i]!='\0'; i++){ 
    if(s[i]>max) max=s[i]; } for(i=0; s[i]!='\0'; i++){ 
    printf("%c", s[i]); if(s[i]==max) printf("(max)"); } return 0; } 

1138: C语言合法标识符

题目描述

输入一个字符串,判断其是否是C的合法标识符。C语言中规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线。

输入

输入一个长度不超过50的字符串。

输出

如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。

样例输入 Copy

8fixafghgjhjhjyuyuyyuyuyu

样例输出 Copy

no

来源/分类

讯享网 #include<stdio.h> int main(){ 
    int i,flag; char s[60]; gets(s); if((s[0]>='a'&&s[0]<='z')||(s[0]>='A'&&s[0]<='Z')||s[0]=='_') flag=0; else flag=1; for(i=1; s[i]!='\0'; i++){ 
    if((s[i]>='a'&&s[i]<='z')||(s[i]>='A'&&s[i]<='Z')|| s[i]=='_'||(s[i]>='0'&&s[i]<='9')) flag=flag; else flag=1; if(flag==1) break; } if(flag==1) printf("no"); else printf("yes"); return 0; } 

1139: 输出最短字符串<

题目描述

输入n和n个字符串,输出其中最短的字符串。若长度相同则输出出现较早的那一个。

输入

第一行是一个整数n,后面跟着n行,每行包括一个由字母和数字和空格组成的字符串,长度不超过1000。

输出

长度最短的字符串,若长度相同则输出出现较早的那一个。

样例输入 Copy

5
How are you!
Happy
Good!
Hello world!
Thinks

样例输出 Copy

Happy

来源/分类

 #include<stdio.h> #include<string.h> int main(){ 
    int i,n,len=0,len1; char s[1050],a[1050]; scanf("%d", &n); getchar();//吃掉空格 gets(s); len=strlen(s); for(i=0; s[i]!='\0'; i++){ 
    a[i]=s[i]; } n--; while(n--){ 
    //getchar(); gets(s); len1=strlen(s); if(len1<len){ 
    len=len1; for(i=0; s[i]!='\0'; i++){ 
    a[i]=s[i]; } } } for(i=0; i<len; i++){ 
    printf("%c", a[i]); } return 0; } 

1140: 小数点后第n位 多实例

题目描述

给你一个小数x,让你算出小数点后第n位是什么,1 <= n <= 6。

输入

输出

输出一个整数,表示小数点后第n位的数。

样例输入 Copy

3
1.234 1
2.345 2
3.456 4

样例输出 Copy

2
4
0

来源/分类

讯享网#include<stdio.h> int main(){ 
    int i,j,n,len=0,num,t; char s[1050]; scanf("%d", &n); while(n--){ 
    scanf("%s %d", s,&num); int flag=0;//标记是否存在要求的第n位小数  t=0;//标记当前的小数是第几位  //查找小数点的位置  for(i=0; s[i]!='\0'; i++){ 
    if(s[i]=='.') break; } //printf("%d %d\n", i,num); //查找第n位小数并且标记  for(j=i+1; s[j]!='\0'; j++){ 
    t++; if(t==num){ 
    if(s[j]!=' '){ 
    flag=1; printf("%c\n", s[j]); break; } } } if(flag==0) printf("0\n"); } return 0; } 
小讯
上一篇 2025-03-01 16:23
下一篇 2025-03-07 19:56

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/73660.html