C代码系列 #001_C语言实现字符串分割和排序

该博客探讨了如何使用C语言将输入字符串按8个字符一组进行拆分,并在不足8位时补零,随后对这些拆分后的字符串进行升序排序。通过实例展示了输入格式和预期输出。
摘要由CSDN通过智能技术生成

算法问题求解(C):

  • 将输入字符串8个字符一组进行拆分,不足8位补零,然后进行递增排序
  • 输入格式:字符串个数N+N个字符串(用空格分隔)
  • eg. 输入: 2 abcde12345 xyz123
  • 输出: 45000000 abcde123 xyz123
/*求解问题
将字符串8个字符一组进行拆分,不足8位补零,然后进行升序排列
*/

/*问题记录*/
// Q:太长的字符串输入程序会出错? 怀疑是否是检测输入在循环内部,后续处理时间太长超过了时间
// A01:改为先获取全部输入 还是会出错
// A02:定义二维数组时没有指定长度,指定较大长度就不会出现问题 
// Q: 指针赋值出现很多错误!
// A01:使用字符串复制函数进行字符串交换 或者 将字符串赋值扩展开,写成for循环单个元素赋值的形式 
// Q: 22行出错	
// A01:scanf("%s",&str1[i]);改为scanf("%s",str1[i]);	

#include <stdio.h>
#include <string.h>
int main()
{
   
	int i,j,k,iNum=0,iRaw=0; 					// i,j,k循环计数器,iNum获取字符串个数,iRaw新字符串行指示器
	char str1[100][101]={
   0};					// 缓存输入的字符串,每一行预留101个字符长度,够用
	char str2[100][
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值