top1编程
← 返回题目
题解

【入门】调换位置

1 条题解

  • 0
    @ 2026-7-30 1:07:27

    解题思路

    读入逗号前后的两个单词,再按照题目要求交换它们的输出顺序。

    参考代码

    // 这道题的做法:先读入题目给出的数据,再用简单的循环和判断完成要求。
    #include<iostream>
    #include<cstring>
    using namespace std;
    int main(){
    	char a[100],r[100];
    	int k=0;//新数组下标 
    	int i=0;//原来数组的下标
    	int p=0;//标记逗号的下标位置
    	cin>>a;
    	for(i=0;i<strlen(a);i++){
    		if(a[i]==','){
    			p=i;
    			break;//找到‘,’退出循环 
    		}
    	} 
    	for(i=p+1;i<strlen(a);i++){//循环逗号后半段 
    		r[k]=a[i];
    		k++;
    	}
    	r[k]=',';//把逗号填入数组 
    	k++;//增加下标 
    	for(i=0;i<p;i++){
    		r[k]=a[i];
    		k++;
    	}
    	r[k]='\0';//以'\0'结束 
    		cout<<r;
    		return 0;
    }
    

    复杂度

    代码只使用了简单变量、循环和判断。若循环检查了 n 个数据,时间复杂度通常为 O(n);没有开辟与输入规模相关的额外数组时,空间复杂度为 O(1)。

    • 1