解题思路:

题目要求输出时删去所有的非英文字符,也就是保留所有的英文字符
根据ASCII表,英文字符在65~90,97~122之间,将字符串的每个字符判断
符合条件赋给输出的数组
输出数组

注意事项:
这是给单个字符输入,需要的是%c,而不是%s

参考代码:

#include<stdio.h>
int main()
{
    char arr1[80],arr2[80]; //定义两个数组,一个是题目给定,一个是输出的
    int i=0,j=0;
    for(;~scanf("%c",&arr1[i]);i++) //当输入不为空时,进行循环
    {
        if((arr1[i]>=65 &&arr1[i]<=90) || (arr1[i]>=97 && arr1[i]<=122))    //根据ASCII表判断
        {
            arr2[j]=arr1[i];    //给输出的数组赋值
            j++;
        }
    }
    for(i=0;i<j;i++)
    {
        printf("%c",arr2[i]);
    }
    return 0;
}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论