[카테고리:] <span>C언어 소스</span>

문자열을 회전하는 코드 작성, strlen, strcpy 함수 사용

원본 문자열이 PROGRAM. 일 때 다음처럼 출력하는 코드를 작성하시오.

0:ROGRAM.P
1:OGRAM.PR
2:GRAM.PRO
3:RAM.PROG
4:AM.PROGR
5:M.PROGRA
6:.PROGRAM
7:PROGRAM.

소스 코드

#include <string.h>
#include <stdio.h>
#pragma warning(disable:4996)//4996 경고 메시지 무시
int main()
{
    char str[] = "PROGRAM.";
    int sl = strlen(str);//sl = 문자열 길이
    char ch = 0;
    for (int i = 0; i < sl; i++)
    {
        ch = str[0];//맨 앞의 문자를 기억
        strcpy(str, str + 1);//(str+1)주소에 있는 문자열을 str에 복사(두 번째 문자부터 복사)
        str[sl - 1] = ch;//맨 앞의 문자를 맨 뒤에 배치
        printf("%d:%s\n", i, str);//출력
    }

    return 0;
}

C언어 소스