编程 输入一个字符串和一个字符,如果该字符在字符串中,就从该字符首次出现的位置开始输出字符串中的字

2025-04-30 02:06:44
推荐回答(1个)
回答1:

#include 
#include 

#define ARR_LEN 255 /*数组长度上限*/

int main (void) {
char str[ARR_LEN], c, *p;
int flag = 0; 
    
    printf ("请输入字符串:");
    gets (str);
    printf ("请输入字符:");
    c = getchar ();
    
    p = str; /* p指向str的首字符 */
    while (*p) { /* 扫描str */
     if (*p++ == c) { /* 寻找与c相同的字符,使p指向后一字符 */
     flag = 1; /* 找到了这样的字符 */
     puts (p-1); /* p退回一个字符,从p-1处打印字符串 */
    } 
    }
    
    if (!flag) {
     printf ("字符串中不包含%c!\n", c);
    }
    
getch (); /*屏幕暂留*/
return 0;
}