#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h> //<string.h>
int main(void)
{
char str[10];
// Pointer Type : 메모리 주소값으로 해석하는 타입
// 배열은 포인터 타입으로 암시적 변환이 가능하다. _> 포인터로 퇴행(decay)했다.
// ㄴ 그래서 주소 연산자를 사용하지 않았다.
// Buffer Overrun (임시공간)
scanf("%s", str)
scanf를 쓸 때, 항상 갯수 지정을 해야한다.
ex) scanf("%9(몇글자를 받을건지에 대한 숫자)s", )
scanf_s("%s", str, 10(문자의 크기))
return 0;
}
-> str 보다 더 큰 값을 받으면 debug error
-> -> 제한을 두지 않아서
printf("%s, str);
<백준 배열_ OX 점수>
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main(void)
{
int testCase = 0; //테스트케이스 지정
scanf("%d", &testCase); //테스트 개수
char textArr[80] = ""; //문자열
for (int i = 0; i < testCase; i++) //테스트 횟수
{
int TextO = 1;
int score = 0;
scanf("%s", textArr);
for (int j = 0; j < strlen(textArr); j++)
{
if (textArr[j] == 'O')
{
score += TextO;
TextO++;
}
else
{
TextO = 1;
}
}
printf("%d\\\\n", score);
}
return 0;
}
문자열을 입력할 때 주의사항
char str[128] = “”;
scanf(”%127s”, str);
printf(’%s”, str);
return 0;
에서 The Curiou Case of 치면
The 만 나옴.
여기서 한줄 다 입력받으려면
fgets를 사용하면 된다.
<백준 문자열 11720>
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main(void)
{
int N, sum = 0;
char num[100] = "";
scanf("%d", &N);
scanf("%s", &num);
for (int i = 0; i < N; i++)
{
sum += num[i] - '0';
}
printf("%d", sum);
}
김치찜 6400
요거 단어 개수 샐 때 쓰는 거임 참고