10.17寫一函數,實現兩個字符串的比較。即自己寫一個strcmp函數,函數原型為: int strcmp(char * p1,char * p2) 設p1指向字符串s1,p2指向字符串s2。要求:當s1=s2時,返回值為0。當s1≠s2時,返回它們兩者的第一個不同字符的ASCII碼差值(如”BOY”與”BAD”,第二個字母不同,”O”與”A”之差為79-65=14);如果s1>s2,則輸出正值;


10.17寫一函數,實現兩個字符串的比較。即自己寫一個strcmp函數,函數原型為: int strcmp(char * p1,char * p2) 設p1指向字符串s1,p2指向字符串s2。要求:當s1=s2時,返回值為0。當s1≠s2時,返回它們兩者的第一個不同字符的ASCII碼差值(如”BOY”與”BAD”,第二個字母不同,”O”與”A”之差為79-65=14);如果s1>s2,則輸出正值;

#include <stdio.h>

int main(){
    int strcmp(char * p1,char * p2);
    char str1[50];
    char str2[50];
    char * p1,* p2;
    int t;
    printf("請輸入兩條要比較的字符串.\nstr1=");
    gets(str1);
    printf("str2=");
    gets(str2);
    p1 = str1;
    p2 = str2;
    //手寫strcmp函數
    t=strcmp(p1,p2);
    printf("str1和str2的ASCII碼差值為:%d\n",t);
return 0;
}

int strcmp(char * p1,char * p2){
    int m,t;
    while(*p1 != '\0' && *p2 != '\0'){        
        m= *p1 - *p2;
        if(m != 0){
            t=m;
            break;
        }
        p1++;
        p2++;    
    }
    if(*p1=='\0' || *p2=='\0'){
        t=*p1-*p2;
    }
    return t;
}

結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 寫一函數,實現兩個字符串的比較。即自己寫一個strcmp函數,函數原型為int strcmp(char * p1 ,char * p2); 設p1指向字符串s1, p2指向字符串s2。要求當s1=s2時,返回值為0;若s1≠s2,返回它們二者第1個不同字符的ASCII碼差值(如"BOY"與"BAD" 寫一函數,實現兩個字符串的比較。即自己寫一個strcmp函數,函數原型為int strcmp(char * p1 ,char * p2); 設p1指向字符串s1, p2指向字符串s2 寫一個函數,實現兩個字符串的比較。即實現strcmp函數,s1=s2時返回0,s1!=s2時返回二者第一個不同字符的ASCII值。 8、將兩個字符串s1,s2進行比較,如果s1>s2,則輸出一個正數。如果s1 = s2,輸出零。如果s1 < s2, 輸出一個負數,不用strcmp函數,輸出的正數或者負數的絕對值應該是比較兩字符串相應字符的ascii碼的差值。 編寫一個程序,將連個字符串s1和s2比較,如果s1 > s2,輸出一個整數;若s1 = s2,輸出0;若s1 < s2,輸出一個負數。不要用strcpy函數。兩個字符串用gets函數讀入。輸出的正數或負數的絕對值應是相比較的兩個字符串相對應字符的ASCII碼的差值。例如,"A"和“C”相比,由於"A" < "C",應輸出負數,同時由於‘A’與‘C’的ASCII碼差值為2,因此應輸出"-2" 編寫一個程序,將兩個字符串s1和s2比較,如果s1 > s2,輸出一個整數;若s1 = s2,輸出0;若s1 < s2,輸出一個負數。不要用strcpy函數。兩個字符串用gets函數讀入。輸出的正數或負數的絕對值應是相比較的兩個字符串相對應字符的ASCII碼的差值。 動態規划:給出兩個字符串s1和s2,返回其中最大的公共子串 編寫一個程序,將一個字符串s2插入到字符串s1中,其起始插入位置為n。 **輸入格式要求:"%d" 使用gets()接收字符串s1和s2 提示信息:"main string:" "sub string:" "site of begining:(<=%d)" **輸出格式要求:"After instert:%s\n" 程序運行示例如下: 7、將字符串數組s2中全部字符復制到字符數組s1中,不用strcpy函數 C語言:求n(n<10000)以內的所有四葉玫瑰數。-將字符串s1和s2合並形成新的字符串s3,先取出1的第一個字符放入3,再取出2的第一個字符放入3,
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM