[동아리] A반 5차 2일 과제 (2024.03.20)
#include <stdio.h>
#include <string.h>
void reverse1(char *a) {
for (int i=0;i<=strlen(a)/2;i++) {
char temp = *(a+i);
*(a+i) = *(a+strlen(a)-i-1);
*(a+strlen(a)-i-1) = temp;
}
}
void reverse2 (char *a) {
int len = 0;
int i = 0;
while (*(a+i) != '\0') {
i++;
len++;
}
for (int i=0;i<=len/2;i++) {
char temp = *(a+i);
*(a+i) = *(a+len-i-1);
*(a+len-i-1) = temp;
}
}
int main() {
char a[100] = "helloworld!";
reverse1(a);
printf("%s", a);
printf("\n");
char b[100] = "helloworld!";
reverse2(b);
printf("%s", b);
return 0;
}
포인터를 사용해 대괄호 사용하지 않고 문자열 거꾸로 출력하기
sting.h 헤더파일을 사용하여 문자열의 길이 확인 후 주소값 계산에 활용 - reverse1()
반복문을 통해서 문자열의 길이를 먼저 확인 후 주소값 계산에 활용 - reverse2()
728x90
반응형
'Programming > C' 카테고리의 다른 글
Visual Studio 2022로 Github 연동해서 협업하기 (C 프로젝트) (0) | 2024.05.16 |
---|---|
[C언어] 동적 2차원 배열, 행렬 곱 연산 (0) | 2024.03.25 |
[C언어] strlen(), fgets(), strcat(), strncpy() 함수 (0) | 2024.03.20 |
[C언어] 마름모 별 찍기, 정수 거꾸로 변환, 소수 판별, 포인터 개념 (0) | 2024.03.15 |
[C언어] 섭씨/화씨 변환, scanf( ) 함수 취약점 (0) | 2024.03.13 |
댓글