实验8-2-8 字符串排序(20 分)
本题要求编写程序,读入5个字符串,按由小到大的顺序输出。
输入格式:
输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。
输出格式:
按照以下格式输出排序后的结果:
1 | After sorted: |
输入样例:
1 | red yellow blue green white |
输出样例:
1 | After sorted: |
本题要求实现一个函数,将两个字符串连接起来。
1 | char *str_cat( char *s, char *t ); |
函数str_cat
应将字符串t
复制到字符串s
的末端,并且返回字符串s
的首地址。
1 | #include <stdio.h> |
1 | abc |
1 | abcdef |
本题要求实现一个函数,统计给定字符串中的大写字母、小写字母、空格、数字以及其它字符各有多少。
1 | void StringCount( char *s ); |
其中 char *s
是用户传入的字符串。函数StringCount
须在一行内按照
1 | 大写字母个数 小写字母个数 空格个数 数字个数 其它字符个数 |
的格式输出。
1 | #include <stdio.h> |
1 | aZ&*? |
1 | 2 2 1 3 4 |
本题要求编写函数,判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。
1 | bool palindrome( char *s ); |
函数palindrome
判断输入字符串char *s
是否为回文。若是则返回true
,否则返回false
。
1 | #include <stdio.h> |
1 | thisistrueurtsisiht |
1 | Yes |
1 | thisisnottrue |
1 | No |
本题要求编写函数,将输入字符串t中从第m个字符开始的全部字符复制到字符串s中。
1 | void strmcpy( char *t, int m, char *s ); |
函数strmcpy
将输入字符串char *t
中从第m
个字符开始的全部字符复制到字符串char *s
中。若m
超过输入字符串的长度,则结果字符串应为空串。
1 | #include <stdio.h> |
1 | 7 |
1 | new year |
本题要求实现一个删除字符串中的指定字符的简单函数。
1 | void delchar( char *str, char c ); |
其中char *str
是传入的字符串,c
是待删除的字符。函数delchar
的功能是将字符串str
中出现的所有c
字符删除。
1 | #include <stdio.h> |
1 | a |
1 | hppy new yer |
报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m(<n)的人退出圈子;下一个人从1开始报数,报到m的人退出圈子。如此下去,直到留下最后一个人。
本题要求编写函数,给出每个人的退出顺序编号。
1 | void CountOff( int n, int m, int out[] ); |
其中n
是初始人数;m
是游戏规定的退出位次(保证为小于n的正整数)。函数CountOff
将每个人的退出顺序编号存在数组out[]
中。因为C语言数组下标是从0开始的,所以第i
个位置上的人是第out[i-1]
个退出的。
1 | #include <stdio.h> |
1 | 11 3 |
1 | 4 10 1 7 5 2 11 9 3 6 8 |
Update your browser to view this website correctly. Update my browser now