1)C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是(单向值传递)
2)若使用一维数组名作函数实参,则(必须在主调函数中说明此数组的大小)
3)编写一函数 void count(char str[ ]),由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述的结果。
#include<stdio.h>
int a = 0, b = 0, c = 0, d = 0;
void count(char str[]){
for(int i = 0; str[i] != '\0'; i++){
if((str[i]<='z'&&str[i]>='a')||(str[i]<='Z'&&str[i]>='A')){
a++;
}
else if(str[i]<='9'&&str[i]>='0'){
b++;
}
else if(str[i]==' '){
c++;
}
else{
d++;
}
}
}
int main(){
char str0[100];
gets(str0);
count(str0);
printf("该字符串中有%d个字母,%d个数字,%d个空格,%d个其它字符", a, b, c, d);
}
4)写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。
#include<stdio.h>
#include<string.h>
void inverse(char str[]){
char t;
int i, j;
for(i = 0, j = strlen(str); i < (strlen(str))/2; i++, j--){
t = str[i];
str[i] = str[j-1];
str[j-1] = t;
}
}
int main(){
char str[100];
gets(str);
inverse(str);
printf("inverse str:%s", str);
}