⑴ c語言編程 字元串查重
當然能了,它的原理是字元匹配。只要是字元就會查出來,你可以試著把它變成圖片,或者把文字的前後順序換一下,更或者換一種說話。
⑵ C語言如何比較兩個【字元】或者【字元串】是否相等迷糊了,求解答
比較字元可以直接使用==比較操作符,如:
char c1='a',c2='b';
if(c1==c2) printf("%c is same as %c.",c1,c2);
else printf("%c is different to %c",c1,c2);
若是字元串,則需要使用字元串函數了,strcmp
char s1[]="abc",s2[]="xyz";
if(strcmp(s1,s2)==0) printf("%s is same as %s.",s1,s2);
⑶ c語言字元串比較
比較字元可以直接使用==比較操作符,如:
char c1='a',c2='b';
if(c1==c2) printf("%c is same as %c.",c1,c2);
else printf("%c is different to %c",c1,c2);
若是字元串,則需要使用字元串函數了,strcmp
char s1[]="abc",s2[]="xyz";
if(strcmp(s1,s2)==0) printf("%s is same as %s.",s1,s2);
也可以忽略大小寫來比較,使用函數stricmp 中間的i意思是ignore case sensitive
還可以指定長度比較,strncmp,如:
char s1[]="abc",s2[]="abcdefg";
if(strncmp(s1,s2,3)==0) printf("first 3 characters are same");
若不是從開頭位置開始比較,如:
char s1[]="abc",s2[]="xyzabc"
if(strncmp(s1,&s2[3],3)==0) 就是比較s1和s2的第3個字元開始的內容
⑷ C語言中字元串的比較
教程是有問題的,strcmp是比較字元串大小,返回值只有0,1,-1
你是正確的,不要太相信課本了,需要自己親自驗證,希望可以幫助到你。
⑸ c語言字元串怎麼去除重復的字元
程序的基本思路是把輸入漏猜的字元串放到a[100]字元組中,然後把a[100]中所有不重復的字元添加到b[100]中,間接完成對字元串中的重復字元的刪除
⑹ 用C語言 從一串字元串中找出相同字元串最多的字元串 比如「aaabbbbcccccdd」 其中最長字元串為「ccccc」
用一個結構1保存字元a,以及其出現的次數;另一個結構2保存b,以及其出現的次數;比較完了後,由於b的個數多餘a的,保存b及其出現的次數(結構1保存字元b,以及其出現的次數);結構2存入c,以及其出現的次數;接著比較直到最後。
⑺ c語言字元串比較的代碼
c語言字元串比較用 strcmp() 或 strncmp()
如果用unsigned char 變數,則可用整型量大於等於小於比較。
文件比較程序不用自編。
unix,linux 用命令 diff, 比較兩文件的不同,比較方法,輸出內容等要求在命令行中可設。
DOS (windows/console) 用命令 COMP 比較兩文件或多個文件的不同。
與unix,linux 的 diff 大同小異。
linux是源碼公開的,有興趣把diff程序下載回來看,我沒有看過源碼,估計應當是用C寫的。
diff用法見unix,linux 的man page
COMP用法見 HELP
⑻ 用c語言編一個查重程序
#include <stdio.h>
int lookup(char *str, char *key);
main()
{
char str[1024] = "asdfjad asdfh adsf adsf adsf adf adsfasdfkjasdf andsf akdf sdkf"
char key[32];
int pos[100];
printf("輸入要查詢的單詞: ");
scanf("%s", key);
lookup(str, key, pos);
printf("共重復了%d次\n,位置分別是:", pos[0]);
for(i = 1 ; i <= pos[0]; i ++) {
printf("%d 「, pos[i]);
}
printf("\n");
}
int lookup(char *str, char *key, int pos[])
{
int i, j;
pos[0] = 0; /* 記錄重復次數 */
for(i = 0; i < strlen(str); i ++) {
if(key[0] == str[i]) {
for(j = 1; j < strlen(key); j ++) {
if(key[j] != str[i+j])
break;
}
if(j == strlen(key)) { /* found */
pos[0] ++;
pos[pos[0]] = i;
i += j-1;
}
}
}
}
⑼ C語言中如何合理的比較字元串
#include<stdio.h>
#include<string.h>
intmain()
{
charinput[80];
charcheck[80];
inti=0;
printf("輸入一個字元串,當有相同字元串輸入時,程序將會退出: ");
gets(input);
printf("我將會輸出你輸入的字元串,直到你輸入了最開始的字元串。 ");
while(strcmp(check,input))
{
printf("%s ",input);
gets(check);
}
printf("程序退出");
return0;
}