网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
06月02日漏签0天
c吧 关注:133,344贴子:393,976
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 9回复贴,共1页
<<返回c吧
>0< 加载中...

帮忙解释一个问题

  • 只看楼主
  • 收藏

  • 回复
  • 密码锁luke
  • 二年级
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include <stdio.h>
/*函数声明部分*/
int count(char *ptrM,char *ptr_str);

int main()
{
char str[80],substr[80]; /*定义一个字符数组*/
printf("请输入需要转换的母串:\n");
gets(str); /*输入字符串*/
printf("请输入需要转换的子串:\n");
gets(substr); /*输入字符串*/
printf("子串在母串中出现了%d次!\n",count(str,substr));

return 0;
}

/*函数定义部分*/
int count(char *ptrM,char *ptr_str)
/* *ptrM: 母串指针   *ptr_str:子串指针 */
{
int i; /* 保存母串匹配相对的位置 */
int num = 0; /* 保存子串在母串中的个数 */
char *ptrS;
while( *ptrM != '\0' )
{
i = 0;
ptrS = ptr_str; /* 使ptrS指向子串首地址 */
while( 1 )
{
if( *ptrS == *(ptrM+i) ) /* 判断相应字符是否相同 */
{ ptrS++; i++; } /* 指针后移*/
else break;
if( *ptrS == '\0') /* 子串结束,找到一个匹配的 */
{ num++; break; }
} 
ptrM++;
}
return num; /*返回子串在母串中的个数*/
}



这个程序中的 while( 1 ) 是什么意思?


  • fshq3
  • 二年级
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
无限循环


2025-06-02 08:12:45
广告
  • fdp47
  • 托儿所
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
c语言中把非0作为“真”,因此while( 1 )表示while循环的条件始终为真,即3楼所说的无限循环


  • 南山古桃
  • 三年级
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
楼上两位朋友正解


  • 密码锁luke
  • 二年级
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
0为真,那while(1)应该表示while循环的条件始终为假吧


  • 密码锁luke
  • 二年级
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
c中不是0为真,非0为假吗?


  • fshq3
  • 二年级
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
非0为真,0为假


  • 密码锁luke
  • 二年级
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
晕,不好意思,搞反


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 9回复贴,共1页
<<返回c吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示