문제 27866번. 문자와 문자열

풀이
#include <stdio.h>
int main(void)
{
char str[1001];
char *p = str;
int index;
scanf("%s%d", str, &index);
printf("%c\n", p[index - 1]);
return 0;
}
문제 9086번. 문자열

풀이
#include <stdio.h>
#include <string.h>
int main(void)
{
int count;
scanf("%d", &count);
for (int i = 0; i < count; i++)
{
char str[1000];
char *p = str;
scanf("%s", str);
printf("%c%c\n", p[0], p[strlen(str) - 1]);
}
return 0;
}
strlen
함수: 문자열 길이를 계산
- 배열에 저장된 문자열에서 널 문자가 나올 때까지 문자 수를 세어 반환한다.
문제 2908번. 상수

풀이
#include <stdio.h>
#include <string.h>
int main(void)
{
char a[4];
char b[4];
char max[4];
char *pmax = max;
char ch;
scanf("%s%s", a, b);
ch = a[0];
a[0] = a[2];
a[2] = ch;
ch = b[0];
b[0] = b[2];
b[2] = ch;
if (strcmp(a, b) > 0) pmax = a;
else pmax = b;
printf("%s\n", pmax);
return 0;
}
strcmp
함수: 문자열 아스키 코드 값 비교
- 반환값이 양수이면 문자열 인수 2개 중 앞의 값이 크고, 음수이면 뒤의 값이 크다.