inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

구조체 scanf_s 질문

미해결

안녕하세요. 구조체 코딩 공부하다가 오류가 계속 발생해서 무엇이 문제인지 모르겠어서 질문드립니다 ..ㅠ scanf_s("%s" , p_friend->name, 메모리 크기)를 해야 되는거 같은데.. (unsigned int)sizeof(p_friend->name)를 추가하여 실행해봐도 실행이 안됩니다 ㅠㅠ 어떤 코드를 작성해야하는 것이 맞을까요..? 구글링해도 1시간째 고민을 해봐도 답이 없어 질문드립니다 !

  • 구조체
  • c언어
  • scanf
  • scanf_s
leejeongmln 댓글 1 좋아요 0 조회수 201

scanf_s(" %d", &answer); 이후 바로 종료

미해결

C 프로그래밍 - 입문부터 게임 개발까지

이후 printf로 정답, 오답 여부가 안나오는데 뭐가 문제일까요? 검색으로 입력버퍼도 찾아봤는데 해결이 안되네요.

  • scanf
  • c
카락스 댓글 0 좋아요 0 조회수 325

C언어 데이터 입출력 문의

미해결

정보처리기사 실기 (2020 개정) 제대로 배우기 Part.1

안녕하세요 문의드릴게 있어서 글남깁니다. 동영상 17분50초 부터 보면 계산문제푸는 방법에대해나오는데 scanf에서 %o = 8진수인데 %d로 해서 10진수로 바꿔서 출력을 할 때 13(8)이라고 글씨로 기재되어있는 부분에 1 = 8진수라서 1X8로 계산을하는데 3 = 1 <<이부분에 1은 어떻게 3x1로 계산이 되어서 1인지 궁금합니다.. 단순하게 배열로보면 0번째자리 [0] [1] 이라서 1로 계싼이 되는건지 궁금합니다. 강의 너무 잘보고 있는데 답변해 주시면 감사하겠습니다!

  • 정수
  • int
  • 정보처리기사
  • scanf
화이트보안 댓글 0 좋아요 0 조회수 310

scanf 함수의 시간측정

해결됨

홍정모의 따라하며 배우는 C언어

교수님의 강의에서 status = scanf("%d", &num); while (status == 1) { sum += num; printf("Enter a next integer (q to quit): "); status = scanf("%d", &num); } 이런식으로 된것을 판단식에 scanf 를 넣어서 코드를 간결하게 줄였는데, 이 경우 더 효율적으로 돌아 갈 것 같아서 #include <time.h> 를 통해서 시간측정을 해보려고 하니 scanf 함수를 받을때 제가 값을 입력하는데 걸리는 시간이 매번다르니 측정이 불가능 하였습니다. 방법이 있을 까요?

  • scanf
  • c
  • time.h
IEYEI 댓글 2 좋아요 2 조회수 483

scanf error에 관한 질문

미해결

홍정모의 따라하며 배우는 C언어

7.4 다중 선택 강의를 따라 하다 C6031 Return value ignored: 'scanf' 를 해결하지 못하고 있는 상태 입니다. 일단 제가 만든 코드는 아래와 같습니다. #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #define BASE1 12000000.0 #define BASE2 46000000.0 #define BASE3 88000000.0 #define BASE4 150000000.0 #define BASE5 300000000.0 #define BASE6 500000000.0 #define RATE1 (6.0 / 100.0) #define RATE2 (15.0 / 100.0) #define RATE3 (24.0 / 100.0) #define RATE4 (35.0 / 100.0) #define RATE5 (38.0 / 100.0) #define RATE6 (40.0 /100.0) #define RATE7 (42.0 /100.0) #define BASIC_DEDUCTION 1500000.0 int main() { double income = 0.0; double tax = 0.0; double tax_base = income - BASIC_DEDUCTION; printf("Enter your annual income : "); scanf("%f", &income); if (tax_base <= BASE1 && tax_base > 0) tax = tax_base * RATE1; else if (tax_base <= BASE2) tax = (BASE1 * RATE1) + ((tax_base - BASE1) * RATE2); else if (tax_base <= BASE3) tax = (BASE1 * RATE1) + ((BASE2 - BASE1) * RATE2) + ((tax_base - BASE2) * RATE3); else if (tax_base <= BASE4) tax = (BASE1 * RATE1) + ((BASE2 - BASE1) * RATE2) + ((BASE3 - BASE2) * RATE3) + ((tax_base - BASE3) * RATE4); else if (tax_base <= BASE5) tax = (BASE1 * RATE1) + ((BASE2 - BASE1) * RATE2) + ((BASE3 - BASE2) * RATE3) + ((BASE4 - BASE3) * RATE4) + ((tax_base - BASE4) * RATE5); else if (tax_base <= BASE6) tax = (BASE1 * RATE1) + ((BASE2 - BASE1) * RATE2) + ((BASE3 - BASE2) * RATE3) + ((BASE4 - BASE3) * RATE4) + ((BASE5 - BASE4) * RATE5) + ((tax_base - BASE5) * RATE6); else if (tax_base > BASE6) tax = (BASE1 * RATE1) + ((BASE2 - BASE1) * RATE2) + ((BASE3 - BASE2) * RATE3) + ((BASE4 - BASE3) * RATE4) + ((BASE5 - BASE4) * RATE5) + ((BASE6 - BASE5) * RATE6) + ((tax_base - BASE6) * RATE7); printf("Your tax amount for the annual income is %f.\n", tax); return 0; } 계속 scanf에 입력한 값이 정확히 반영되지 않아 debug를 해보니 제가 입력한 값을 받아들이는게 아니라 scanf returned value 1 int 을 보아하니 제가 입력한 값의 갯수를 반영 하는듯 합니다. 조언 부탁드립니다.

  • scanf
  • c
kiexus 댓글 1 좋아요 0 조회수 625

scanf 입력한 수 중 일부 자리만 저장

미해결

문제로 배우는 C언어

1. 이해한 것 강의에서 설명한대로 scanf는 lf로 받고 printf 시에만 0.2f 를 하게되면, 진짜 둘째짜리까지만 받은게 아니라 원래 소수까지 받고 나서 곱한 뒤에 출력할 때 소숫점 셋째자리에서 반올림하는 코드라고 이해했습니다. 2. 궁금한 것 3.1295846 과 7.118592 를 입력해도 3.12와 7.11 만 입력받아서 출력예제와 동일한 값 22.18이 나오게 할 수는 없나요? 있다면 코드를 알고싶어요. 3. 제 생각 저는 scanf("%0.2lf %0.2lf", &a, &b) 를 시도해봤는데 0이 나왔습니다. 문자열 배열 두개를 선언해서 [인덱스] 번호를 활용해 0부터 쭉 받으며 데이터가 숫자인지 소수점인지 비교하다가 소수점 발견시 그 요소 이후 두 요소만 더 저장하는 방법을 생각해보았는데 배보다 배꼽이 큰 것 같습니다.

  • c언어
  • c
  • scanf
  • 입출력
  • 입력
lll 댓글 1 좋아요 0 조회수 370

scanf로 문제 계속 받고 나오는 방법

미해결

홍정모의 따라하며 배우는 C언어

int main() { const char first_char = 'A'; // const char last_char = 'T'; // TOOD: use scanf() / 즉 last_char(마지막글자)를 scanf로 입력받아서 쓸 수 있게 만들어봐 // const int num_rows = last_char - first_char + 1; int r; // num_rows loop int c; // character loop char last_char = 'C'; for (last_char; last_char != 'q'; scanf("%c", &last_char)) { printf("Input last_char (quit to q) : "); scanf("%c", &last_char); const int num_rows = last_char - first_char + 1; for (r = 0; r < num_rows; ++r) { for (c = first_char; c <= first_char + r; ++c) // { printf("%c ", c); } printf("\n"); } for (r = 0; r < num_rows; ++r) { for (c = first_char + r; c != first_char + num_rows; ++c) { printf("%c ", c); } printf("\n"); } printf("num_rows : %d, r : %d, first_char : %c, last_char : %c, c : %c\n", num_rows, r, first_char, last_char, c); printf("\n"); } 입력 받는건 아주 잘 받는데 q 입력했을 때 바로 안나오고 엄청난 이상한 출력 길게 나오고 끝나네요.. 뭐가 문젠가요? 출력은 예제2번에 예제3번 합쳐서 나오고 끝나는 출력입니다. ex) A AB ABC BC C

  • scanf
  • c
  • for
  • 반복문
  • quit
  • 안나와
Ad Astra 댓글 1 좋아요 0 조회수 410

8.5강 5분 5초 질문있습니다. getchar을 scanf로 바꿔도 되나요?

미해결

홍정모의 따라하며 배우는 C언어

while ( c = getchar() != '\n' ) 부분을 getchar 말고 scanf 써도 되나요?? scanf가 더 큰 포함관계라고 생각하는데 넣어도 상관없나요?

  • scanf
  • c
  • getchar
  • c언어
  • 따배씨
팡휘 댓글 1 좋아요 0 조회수 269

반복문안에서 scanf의 쓰임을 잘모르겠습니다!!

미해결

#include<stdio.h> int main(void) { int i,n, a,max=0; scanf("%d\n", &n); for (i = 1; i<=n; i++) { scanf("%d", &a); if (a > max) max = a; } printf("%d", max); return 0; } 여기서 반복문안에 scanf가 들어가있으면 계속해서 무언가를 입력해야 되는거 아닌가요?? 최대값을 구하는 문제인데 왜 저렇게 구하는지 모르겠어요..ㅜ

  • scanf
  • 반복문
  • c언어
susurrus501 댓글 0 좋아요 0 조회수 453

scanf 스킵 문제...

미해결

#include <stdio.h> int main() { char str[99]; char str_new[99]; printf("첫번째 문단: "); scanf("%[^\n]s", &str); printf("두번째 문단: "); scanf("%[^\n]s", &str_new); if(str == str_new) { printf("true\n"); } else { printf("false\n"); } } 첫번째 scanf는 잘되는데, 두번째 scanf가 스킵되는데 어떻게 해야되나요?

  • scanf
ccong 댓글 0 좋아요 0 조회수 212

scanf 반환값이 무시되었습니다 자꾸 떠요

미해결

홍정모의 따라하며 배우는 C언어

강의와 관련있는 질문 을 남겨주세요. &bull; 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등) &bull; 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색 을 해주세요. (중복 질문을 자제해주세요.) &bull; 서비스 운영 관련 질문은 인프런 우측 하단 &lsquo;문의하기&rsquo; 를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달 에도 요령이 필요합니다. &bull; 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요. &bull; 강의실 페이지 (/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다. &bull; 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재 해주세요. &bull; 수업 특정 구간에 대한 질문은 꼭 영상 타임코드 를 남겨주세요! 구체적인 질문 일수록 명확한 답을 받을 수 있어요. &bull; 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요. &bull; 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요 . &bull; 정확한 질문 내용과 함께 코드 를 적어주시거나, 캡쳐 이미지 를 첨부하면 더욱 좋습니다. 기본적인 예의 를 지켜주세요. &bull; 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. &bull; 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. &bull; 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용 은 스팸 처리 등 제재를 가할 수 있습니다. 안녕하세요 교수님 강의를 보면서 따라하는데 자꾸 오류가 생겨서 혼자서 도저히 해결을 못할 것 같아 문의드립니다! #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() { int i = 0, j = 0; printf("input two integers"); scanf("%d%d", &i, &j); printf("%d %d\n",i,j); return 0; } 정말 교수님이랑 같은 코드로 코딩을 했는데 scanf 반환값이 무시되었습니다라고 오류가 뜹니다.. 혹시 해결 가능할까요?ㅜ

  • scanf
  • c
곽수찬 댓글 1 좋아요 0 조회수 57123

인기 태그

인프런 TOP Writers

주간 인기글