C語言實現在字串中查詢指定的字元,並輸出指定字元在字元

2021-07-01 01:55:34 字數 3881 閱讀 1941

1樓:匿名使用者

首先獲得一個字元用ch=getchar()或者scanf ("%c", &ch);

其次判斷字元相等直接用==

接著j沒有定義

最後輸出int陣列用迴圈

#include

#include

int main()

}if (flag == 0)printf ("no");

else

printf ("\n");

}return 0;}

c語言:輸入一串字元,再輸入一個字元,統計該字元在字串中出現的次數,並輸出該字串

2樓:水舞江流

你的程式有許多錯誤,主要有:

1、j沒有初始化為0,直接用作陣列下標是不對的,會導致程式崩潰。而且j沒有+1操作,這樣輸入的字元都會覆蓋到一起。

2、不能既有a[j]=getchar()又有scanf("%c",&a[j]),這樣會導致一個字元被另一個覆蓋,陣列不能儲存所有的字元。

3、scanf("%c\n",&m);應寫為scanf("%c",&m);,\n只應出現在printf語句中。

按照你的思路,我把**修改了一下,如下。你可以試試看行不行。

#include

main()

a[j]='\0';

printf("enter a word:");

scanf("%c",&m);

for(j=0;a[j]!='\0';j++)

if(a[j]==m)

count++;

printf("the number is %d\n",count);

return 0;}

3樓:

#include

int main()

a[j]='\0';

printf("enter a word:");

scanf("%c",&m);/*這裡不需要來個\n,不然你輸入的時候也得敲進去\n*/

for(j=0;a[j]!='\0';j++)if(a[j]==m)

count++;

printf("the number is %d\n",count);

return 0;}

4樓:匿名使用者

int count=0,j;

char a[80];

char m;

gets(a);

fflush(stdin);

m=getchar();

for(j=0;a[j];j++)

if(a[j]==m);

count++;

printf("the number is %d\n",count);

一個簡單c語言題目,大神求助!在字串中查詢指定字元

5樓:

1、開啟python語言命令視窗,定義字串變數s1並進行賦值。

2、呼叫字串中的count方法,查詢字元#在s1中出現的次數。

3、count()方法除了第一個引數之外,還可以有第二個引數,代表從什麼位置開始查詢。

4、在count方法,還可以新增第三個引數,結束位置,開始位置到結束位置之間。

5、如果需要查詢的子字串不在字串中,那麼返回的結果為0。

6、最後將count()方法中的三個引數都加上,查詢對應的字串。

6樓:匿名使用者

#include

#include

int main() {

char instr[80 + 1];

char b;

int i, j = -1; // j = -1int len;

gets(instr);

scanf("%c", &b);

len = strlen(instr);

for (i = 0; i

把 j 初始化為-1,就可以了

你沒有過的計分點大概是這樣的

black boxb

求解,用c語言編寫一個程式,查詢一個字串在另一個字串中出現的次數,謝謝大家了!

7樓:凌亂心扉

//第一種

public static map count(string str)

}return maps;

}//第二種

public static map count1(string str)

return map;

}//第三種

public static map count2(string str)

}map.put(c1,x);

}return map;

}//第四種

public static map count3(string str)

arraylistlist=new arraylist(hset);

int n=hset.size();//有多少種字元

inttimes=new int[n];//儲存每種字元的出現次數

for(char c:cs)

for(int i=0;imap.put(""+list.get(i),times);

}return map;

}//展示

public static void show(mapmap)

}out關鍵字會導致引數通過引用來傳遞。這與ref關鍵字類似,不同之處在於ref要求變數必須在傳遞之前進行初始化。若要使用out引數,方法定義和呼叫方法都必須顯式使用out關鍵字。

例如:classoutexample

staticvoidmain()

}儘管作為out引數傳遞的變數不需要在傳遞之前進行初始化,但需要呼叫方法以便在方法返回之前賦值。

ref和out關鍵字在執行時的處理方式不同,但在編譯時的處理方式相同。因此,如果一個方法採用ref引數,而另一個方法採用out引數,則無法過載這兩個方法。例如,從編譯的角度來看,以下**中的兩個方法是完全相同的,因此將不會編譯以下**:

classcs0663_example

publicvoidsamplemethod(refinti)

}但是,如果一個方法採用ref或out引數,而另一個方法不採用這兩類引數,則可以進行過載,如下所示:

classrefoutoverloadexample

publicvoidsamplemethod(outinti)}備註

屬性不是變數,因此不能作為out引數傳遞。

8樓:

函式返bai回dustr2在str1中出zhi現dao的次內數容

#include

unsigned int strstrcount( char *str1, char *str2 )

return c;}

9樓:坑爹逗比就是我

#include

#include

int main()

i++;

}printf("%d",count);}

10樓:匿名使用者

#include

#include

void main()

int find(char * a,char * b)return -1;}

11樓:匿名使用者

#include "string.h"

#include "stdio.h"

int strcount(char *,char *);

void main()

int strcount(char *p,char *q)p++;

} return n;}

c語言問題將字串a複製到字串b中

1 首先需要建立一個新的檔案,輸入標頭檔案和主函式。2 接下來需要定義變數型別。3 設定完變數型別之後開始呼叫cpy函式。4 接下來需要定義一個函式,並定義變數型別。5 最後加一個字串結束符,並在主函式中輸出。6 編譯。執行,可以看到字串a複製到字串b中。將字串a複製到字串b中,簡單的方法是使用st...

c語言輸入字串,將該字串中從第m個字元開始的全部字元複製到另字串

這樣 include include int main void copystr char char int int m char str1 20 str2 20 printf input string gets str1 printf which character that begin to c...

C語言求助 請編寫字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串

用下面的 給你提供個思路。這 連續字元不得超過9個 include stdio.h void main void else a k a i a k 0 printf the result s.n a include int main scanf s a char result 1000 int i ...