这是真的太为难人了,想了半天没有个思路,程序牛人们看一下吧吧内容如下:
编写一个对字符串处理的程序,要求能够识别字符串中大写字母、小写字母以及数字的个数并输出,识别“L”、“o”、“v”、“e”四个字符的位置,如果有,将四个字符和对应的ASC-II分别存储在字符和int数组中并显示;如果没有,能够通过提示缺失那个字符,并要求手动输入并存储在字符和int数组中并更上述字符一并显示。
用简单的C语言编写程序
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- a5156520 2022-06-09 14:55关注
我有点没看懂这个题目的意思,所以我不知道我的回答对不对?
我的做题思路是:
首先获取一个字符串存入字符数组,
然后遍历数组,统计大写字母,小写字母和数字的个数,然后把字符串里的'L', 'o', 'v', 'e'字分别存入字符数组和int数组,然后打印统计结果,
再用另外一个循环遍历字符数组和int数组,如果里面存入了'L', 'o', 'v', 'e'四个字符,就打印其字符和对应的ASIII码,
再用第三个循环,寻找缺失的字符,并要求手动输入,并存入字符数组和int数组,
最后打印用字符串形式打印字符数组。#include <stdio.h> char findLove(char * love,int len){ int i=0; char ch = love[i] ; while(i<len){ if(i==0&&ch=='\0'){ return 'L'; }else if(i==1&&ch=='\0'){ return 'o'; }else if(i==2&&ch=='\0'){ return 'v'; }else if(i==3&&ch=='\0'){ return 'e'; } i++; ch=love[i]; } return '\0'; } int main(void){ char str[100]; int cap=0; int lower=0; int num=0; int i=0; char Love[5]={'\0'}; int iLove[5]={0}; printf("请输入一个字符串:\n"); gets(str); char ch = str[i]; while(ch!='\0'){ if(ch>='A'&&ch<='Z'){ //统计大写字母个数 cap++; if(ch=='L'){ //存储'L' Love[0]='L'; iLove[0]='L'; } }else if(ch>='a'&&ch<='z'){ //统计小写字母个数 lower++; if(ch=='o'){//存储'o' Love[1]='o'; iLove[1]='o'; }else if(ch=='v'){ //存储'v' Love[2]='v'; iLove[2]='v'; }else if(ch=='e'){ //存储'e' Love[3]='e'; iLove[3]='e'; } }else if(ch>='0'&&ch<='9'){//统计数字个数 num++; } i++; ch=str[i]; } // 打印结果 printf("字符串有大写字母%d个,小写字母%d个,数字%d个。\n",cap,lower,num); i=0; //输出数组里存在的Love的某个字符及其ASCII码 while(i<4){ if(Love[i]!='\0'){ printf("%c:%d\n",Love[i],iLove[i]); } i++; } i=0; //查询缺失的字符,并要求输入并存入数组 while(i<4){ if(Love[i]=='\0'){ printf("缺失字符%c,请手动输入这个字符:\n",findLove(Love,4)); scanf("%c",&Love[i]); while(getchar()!='\n') continue; iLove[i] = Love[i]; } i++; } //打印Love printf("%s",Love); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥100 set_link_state
- ¥15 虚幻5 UE美术毛发渲染
- ¥15 CVRP 图论 物流运输优化
- ¥15 Tableau online 嵌入ppt失败
- ¥100 支付宝网页转账系统不识别账号
- ¥15 基于单片机的靶位控制系统
- ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度