郑州快速网站建设冯耀宗seo
合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻
一、题目描述 ⭐️
二、代码(C语言)⭐️
循环左移的核心逻辑是:👇🏻
- 通过 临时变量 保存 第一个字符;🌲
- 然后将 每个字符 向前移动一位;🌈
- 最后将 临时变量中的字符 放到 末尾。🦋
#include <stdio.h> // 包含标准输入输出库,用于使用fgets、scanf、puts等函数
#include <string.h> // 包含字符串处理库,用于使用strlen和strcspn等函数int main() { // 主函数,程序的入口char strs[102]; // 定义一个字符数组strs,用于存储输入的字符串,最大长度为102int n; // 定义一个整型变量n,用于存储输入的整数// 将输入的第一行内容放入字符数组strs中fgets(strs, sizeof(strs), stdin); // 从标准输入读取一行内容,存储到strs中// sizeof(strs)表示strs的最大长度// stdin表示从标准输入读取strs[strcspn(strs, "\n")] = '\0'; // 使用strcspn找到换行符的位置,并将其替换为字符串结束符'\0'// 目的是去除fgets读取的换行符scanf("%d", &n); // 从标准输入读取一个整数,存储到变量n中for(int i = 0; i < n; i++) { // 循环n次,每次将字符串strs向左循环移动一位int len = strlen(strs); // 获取当前字符串strs的长度char temp = strs[0]; // 将字符串的第一个字符存储到临时变量temp中// 目的是防止在后续移动过程中被覆盖// 将字符串的每一项前移一位for(int j = 0; j < len - 1; j++) { // 循环遍历字符串的每个字符strs[j] = strs[j + 1]; // 将后一个字符赋值给前一个字符}strs[len - 1] = temp; // 将临时变量temp中的字符(原第一个字符)放到字符串的末尾}puts(strs); // 输出最终的字符串strsreturn 0; // 返回0,表示程序正常结束
}