1字符串长度
题目描述:编写程序实现:使用自编函数int strlen(char* str),求字符串str长度;并在主程序中调用。
输入:从键盘随机输入长度不超过256的字符串,字符串内可能包含若干空白字符。
输出:字符串的长度。
输入:123 456
输出:8
#define _CRT_SECURE_NO_WARNINGS
#include"stdio.h"
int strlen(char*str)
{
int i=0;
while(*(str + i) != '\0')
i++;
return i;
}
int main()
{
char ch[256] = "\0";
gets_s(ch);
printf("%d", strlen(ch));
}
2分类统计字符
编写程序实现:使用自定义函数void count(char* str, int* upper, int* lower, int* space, int* num, int* other)统计给定字符串str中的大写字母、小写字母、空格、数字字符、其它字符的数目,并以指针参数传回主程序中的调用点,并输出。
输入:从键盘随机输入一个长度不超过256的字符串,字符串内可能包含若干空白字符。
输出:大写字母字符个数、小写字母字符个数、空格字符个数、数字字符个数和其它字符个数,数字间以一个西文空格间隔,最后一个数后无多余字符。
输入:
123 abc ABC
输出:
3 3 5 3 0
#define _CRT_SECURE_NO_WARNINGS
#include"stdio.h"
#include"string.h"
void count(char* str, int* upper, int* lower, int* space, int* num, int* other)
//因为传入数据为地址,因此对地址运算会影响main函数内参数的值,最后得到的值不会销毁
{
int i = 0;
while (i < strlen(str))
{
if ('A' <= str[i] && str[i] <= 'Z')
(*upper)++;
//*与++运算等级一致*upper++从右向左结合,因此运算时upper加一然后解地址,由于upper为地址因此
//会报错,所以要加()
if ('a' <= str[i