站点图标 陌路寒暄

盐荒子孙

盐荒子孙

时间: 1ms        内存:128M

描述:

盐体图

盐是对人类生存具有重要意义的物质之一。当中国古人从肉食为主转向谷食为主的时候,吃盐的需求就发生了,因为动物血肉里面包含有足够人体所需的盐分,而谷 物本身不包含盐分。在长达几十万年的旧石器时代,人类以狩猎为生,身体早已适应了肉食带来的微量元素组合。到了新石器时代晚期的2300 BC前后,在今鲁西豫东地区,中国古人才发展出五谷农业并开始以谷食为主的生活,这样,以食盐为基本调味品的饮食改变了原先适应已久的微量元素组合,直接 导致了与吃盐有关的新型疾病的产生。为了治疗吃盐引起的新型疾病,针灸术就应运而生了。

盐的英文是salt,现在极缺,请找出输入中所有包含salt的行,不管大小写,是salt就要。

输入:

若干行包含salt SALT sAlt等等的英文

输出:

所有包含salt这个部分的行

示例输入:

Salt is necessary
Water is not sAlt
as salT as you can make it
soy-bean sauce can be saLt
soy-bean sauce only
bean soy-bean sauce 

示例输出:

Salt is necessary
Water is not sAlt
as salT as you can make it
soy-bean sauce can be saLt

提示:

参考答案(内存最优[752]):

#include<stdio.h> 
#include<string.h> 
char a[][5]={"SALT","SALt","SAlT","SAlt","SaLT","SaLt","SalT","Salt","sALT","sALt","sAlT","sAlt","saLT","saLt","salT","salt"}; 
int main() 
{ 
    char b[1000]; 
    char c[100]; 
    int i,j=0,m,flag=0; 
    while(gets(b)!=NULL) 
    { 
        flag=0; 
        m=strlen(b); 
        b[m]=' '; 
        for(i=0;i<=m;i++) 
        { 
            if(b[i]!=' ') 
                c[j++]=b[i]; 
            else
            { 
                c[j]='\0'; 
                for(j=0;j<16;j++) 
                    if(!strcmp(c,a[j])) 
                        flag=1; 
                if(flag==1) 
                { 
                    b[m]='\0'; 
                    puts(b); 
                    j=0; 
                    break; 
                } 
                j=0; 
            } 
        } 
    } 
    return 0; 
} 

参考答案(时间最优[0]):

#include<stdio.h> 
#include<string.h> 
char a[][5]={"SALT","SALt","SAlT","SAlt","SaLT","SaLt","SalT","Salt","sALT","sALt","sAlT","sAlt","saLT","saLt","salT","salt"}; 
int main() 
{ 
    char b[1000]; 
    char c[100]; 
    int i,j=0,m,flag=0; 
    while(gets(b)!=NULL) 
    { 
        flag=0; 
        m=strlen(b); 
        b[m]=' '; 
        for(i=0;i<=m;i++) 
        { 
            if(b[i]!=' ') 
                c[j++]=b[i]; 
            else
            { 
                c[j]='\0'; 
                for(j=0;j<16;j++) 
                    if(!strcmp(c,a[j])) 
                        flag=1; 
                if(flag==1) 
                { 
                    b[m]='\0'; 
                    puts(b); 
                    j=0; 
                    break; 
                } 
                j=0; 
            } 
        } 
    } 
    return 0; 
} 

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

退出移动版