#include <stdio.h>
int length(char a[]){
int count=0;
while(a[count]){
count++;
}
// return count;
printf("\n");
}
int main(){
char a[50];
int alength;
gets(a);
int i;
alength = length(a);
int tem = 0;
for(i=0;i<alength;i++){
tem += (int)a[i];
}
printf("%d",tem);
}
计算一个数组的ASCLL码值的和,输入Hello,为什么用return count;输出500,使用printf("\n')就输出527
count就是字符串的长度啊。20行的循环就是遍历每个字符串字符进行ASCII求和。你注释掉了return count,那么这个length函数就没有返回值了啊
length 这个函数 是 计算 数组的元素个数,当然要返回计算出来的总数了,需要 return count
一个函数不写return,默认返回最后一个访问的变量
你写return count,返回的是count的值
你不写return,返回的是a[count]的值
我这里测试,写return,输入hello,返回532
不写return,输入hello,返回0