開發紀錄(Homework3)
Reference:
 

Q2

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
 
char smallest_character_non_recursive(char str[],char c);
char smallest_character_recursive(char str[],char c);
bool sortCheck(char str[])
 
int main(int argc,char* argv[]){
    int num=0;
    char input='\0',result='\0';
    printf("Please type number of string:",num);
    scanf("%d",&num);
    char str[num+1];
    printf("please type sorted string:");
    fflush(stdin);
    scanf("%s",str);
    assert(str[num]=='\0'&&"Please type exact word!!");
    assert(sortCheck(str)&&"Please type sorted word and lowercase letters");
    printf("please type input character:");
    fflush(stdin);
    scanf("%c",&input);
    assert(input!='\n'&&"Please type exact character");
    result=smallest_character_recursive(str,input);
    printf("%c",result);
    system("pause"); /* 對系統沒概念的人,才會加這行 */
    return 0;
}
 
bool sortCheck(char str[]){
     int i=0,j=0;
     while(str[i+1]!='\0'){
         if(str[i]<97||str[i]>122)
             return false;
         j=i;
         while(j!=0){
             if(str[i]<str[j])
                 return false;
             j--;
         }
         i++;
     }
     return true;