문자열

#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

요거 단어 개수 샐 때 쓰는 거임 참고