2017实验11.1 指针数组、指针与函数

2017-12-20  本文已影响0人  林之禾
6-1 查找星期(15 分)
int getindex( char *s ){
    
    
    if(strcmp(s,"Monday")==0){
        return 1;
    }else if(strcmp(s,"Tuesday")==0){
        return 2;
    }else if(strcmp(s,"Wednesday")==0){
        return 3;
    }else if(strcmp(s,"Thursday")==0){
        return 4;
    }else if(strcmp(s,"Friday")==0){
        return 5;
    }else if(strcmp(s,"Saturday")==0){
        return 6;
    }else if(strcmp(s,"Sunday")==0){
        return 0;
    }else {
        return -1;
    }
}
6-2 输出月份英文名(15 分)

    if(n==1){
        return "January";
    }else if(n==2){
        return "February";
    }else if(n==3){
        return "March";
    }else if(n==4){
        return "April";
    }else if(n==5){
        return "May";
    }else if(n==6){
        return "June";
    }else if(n==7){
        return "July";
    }else if(n==8){
        return "August";
    }else if(n==9){
        return "September";
    }else if(n==10){
        return "October";
    }else if(n==11){
        return "November";
    }else if(n==12){
        return "December";
    }else {
        return NULL;
    }
    

    
    
    
}
6-3 字符串的连接(15 分)
char *str_cat( char *s, char *t ){
    char *str=strcat(s,t);
    return str;
}
6-4 指定位置输出字符串(20 分)
char *match( char *s, char ch1, char ch2 ){
     int i;
     char *p; 
     for(i=0;s[i]!='\0';i++){
        
         if(s[i]==ch1){
            p=&s[i];
            for(int j=i;s[j]!='\0';j++){
                if(s[j]!=ch2){
                    printf("%c",s[j]);
                 }
                 if(s[j]==ch2){
                    printf("%c\n",s[j]);
                    return p;
                 }
             }
             puts("");
             return p;
         }
     }  
     return "\n";
} 
6-5 查找子串(20 分)
char *search(char *s, char *t){  
    int i,j,k=0,slen,tlen;  
    char *p=NULL;  
  
    slen = strlen(s);  
    tlen = strlen(t);  
  
    for(i=0;i<slen;i++){  
        j=i;  
        while(s[j]==t[k]){  
            k++;  
            j++;  
        }  
        if(k>=tlen){  
            p=&s[i];  
            return p;  
        }  
        k=0;  
    }  
  
    return p;  
}  
7-1 英文单词排序(25 分)
#include<stdio.h>
#include<string.h>
int main(void){
    int i=0;
    char str[21][10],temp[10];
    while(gets(str[i])&&str[i][0]!='#'){
         i++;
    }

    for(int j=0;j<i;j++){
        for(int k=j+1;k<i;k++){
            if(strlen(str[j])>strlen(str[k])){
                strcpy(temp,str[j]);
                strcpy(str[j],str[k]);
                strcpy(str[k],temp);
            }
        }
    }
    for(int j=0;j<i;j++){
        printf("%s ",str[j]);
    }
    return 0;
}

7-2 藏头诗(15 分)
#include<stdio.h>
#include<string.h>
int main(void){
    char poem[4][100],t[100];
    int i;
    for(i=0;i<4;i++){
        gets(poem[i]);
        t[i*2]=poem[i][0];
        t[i*2+1]=poem[i][1];
    } 
    t[i*2]='\0';

    puts(t);
    return 0;
}

上一篇下一篇

猜你喜欢

热点阅读