1. 编写程序,计算一个字符串的长度。(利用指针变量)

怎么做!
2025-04-11 17:33:57
推荐回答(4个)
回答1:

#include "stdio.h"
main()
{
int i=0,len;
char str[80]="Happy";

for(i=0;str[i]!='\0';i++) /*计算字符串的有效长度*/
; /*这个分号我不懂,为什么没有len=4,而有了len=5.
len=i;
printf("len=%d\n",len);
for(i=0;str[i]!='\0';i++) /*输出字符串*/
putchar(str[i]);
}

回答2:

#include

int len(char *a)
{
int n=0;
while(*(a++)!=0)
n++;
return n;
}

int main()
{
char data[]="nihao";
printf("len=%d\n",len(data));
return 0;
}
程序如上就可以。
补充:楼上的
加上分号,明显len=i;
在循环体内,所以len=4;
不加则是在体外,i=5;退出循环,所以len=5;

回答3:

for(i=0;str[i]!='\0';i++) /*计算字符串的有效长度*/
; /*这个分号我不懂,为什么没有len=4,而有了len=5.
len=i;

因为i从0开始,i = 4 循环继续判断,i变成5,此时str[5]='\0',结束循环,最后再把len赋值为5,符合我们平时的计数习惯。

回答4:

for循环中,i先自加再判断,在i=4时,循环继续,之后i自加(i=5),再判断不满足条件,跳出循环。此时i已经等于5.所以输出的就是5啦。