C语言程序编写:先从键盘输入一个字符串 然后将字符串中的所有英文字母复制生成新串将小写英文字母转化为大写英文字母后输出。

编写程序实现功能:先从键盘输入一个字符串 然后将字符串中的所有英文字母复制生成
新串 将小写英文字母转化为大写英文字母后输出。
要求:
1 编写函数 void delstr(chard[],char s[]) 把字符串s中的英文字符拷⻉到d数组中,生成新串。
2 编写函数 void upper(char s[]), 把字符串中的小写英文字母转化为大写英文字母。
3 在 main 函数中输入一个字符串,存放在字符数组s1中,调用delst函数,生成只包
含英文字符新串存放于字符数组s2中,再调用upper函数将新串s2中的小写英文字母转化为大写英文字母后输出。


#include <stdio.h>

void delstr(char d[],char s[]) 
{
     int i=0,j=0;
     while(s[i])
     {
         if(s[i]>='a'&& s[i]<='z')
             d[j++]= s[i];
         else if(s[i]>='A'&& s[i]<='Z')
             d[j++] = s[i];
         i++;
     }
     d[j] = 0;
}

void upper(char s[])
{
    int i=0;
    while(s[i])
    {
        if(s[i]>='a'&& s[i]<='z')
            s[i] = s[i] - 32;
        i++;
    }
}

int main()
{
    char s1[100],s2[100];
    printf("请输入字符串:");
    gets(s1);
    delstr(s2,s1);
    printf("英文字符:%s\n",s2);
    upper(s2);
    printf("转大写:%s",s2);
    return 0;
}
#include <stdio.h>
#include <string.h>
void delstr(char d[],char s[])
{
    int i,j=0,len;
    len = strlen(s);
    for (i = 0; i < len; i++)
    {
        if (s[i]>='A' && s[i]<='Z' || s[i]>='a' && s[i]<='z')
            d[j++] = s[i];
    }
    d[j] = 0;
}
void upper(char s[])
{
    int i,len;
    len = strlen(s);
    for (i = 0; i < len; i++)
    {
        if (s[i]>='a' && s[i]<='z')
            s[i]-=32;
    }
}

int main()
{
    char s1[100];
    char s2[100];
    gets(s1);
    delstr(s2,s1);
    upper(s2);
    printf("%s\n", s2);
    return 0;
}

img

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img