注册 登录
编程论坛 C语言论坛

二维数组问题

frecklesss 发布于 2020-04-15 22:58, 1748 次点击
只有本站会员才能查看附件,请 登录


二维数组怎么实现保留字母呢?
想知道如何用一维数组保留字母的办法改一下,感谢各位

程序代码:
#include<stdio.h>
int main(){
    int i,j;
    char str[5][80];
    for(i=0;i<5;i++)
    gets(str[i]);
    for(i=0;i<5;i++){
       if((str[i]>= 'a'&&str[i]<='z')||(str[i]>='A'&& str[i]<='Z')){
             str[j]=str[i];
             j++;
           }
        str[j]='\0';
        puts(str);
        return 0;
       }
}

3 回复
#2
张珂珂2020-04-15 23:39
程序代码:
#include<stdio.h>
int main()
{
    int i,j,k=0;
    char str[5][80];
    for(i=0;i<5;i++)
        gets(str[i]);
    for(i=0;i<5;i++)
    {
        k=0;                                            //不可缺少,每次二维数组列的值需清零
        for(j=0;str[i][j]!='\0';j++)
        {
            if((str[i][j]>= 'a'&&str[i][j]<='z')||(str[i][j]>='A'&& str[i][j]<='Z'))
            {
                 str[i][k] = str[i][j];
                 k++;
            }
        }
        str[i][k]='\0';
     }
     for(i=0;i<5;i++)
         puts(str[i]);
    return 0;
}

希望能帮到你
#3
吹水佬2020-04-16 06:31
#include<stdio.h>
int main()
{
    int i,j;
    char ch, str[5][80];
    for(i=0; i<5; i++)
    {
        j = 0;
        while (j<79 && (ch=getchar())!='\n')
        {
            if (ch>='a'&&ch<='z' || ch>='A'&&ch<='Z')
                str[i][j++] = ch;
        }
        str[i][j] = '\0';
        puts(str[i]);
    }
    return 0;
}
#4
frecklesss2020-04-16 11:45
回复 2楼 张珂珂
谢谢谢谢!
1