게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C언어 초보의 창의력고민...
게시물ID : programmer_19914짧은주소 복사하기
작성자 : 레리리
추천 : 0
조회수 : 739회
댓글수 : 4개
등록시간 : 2017/03/06 22:30:00
안녕하세요 C언어를 막 시작한 학생입니다. 비트연산자를 이용해서 음수를 구하는 코드를 문제를 푸는데
#include <stdio.h>

int main(void){
int num1;
int num2;

    
    scanf("%d",&num1);
   num2= (~num1)+1;//비트 연산자보다 더하기가 먼저 더라고요?
   
   
printf("%d",num2);
return 0;
}
저같은경우 변수를 2개나 선언해서 문제를 풀었습니다. 저 코드도 산술연산자가 비트연산자보다 먼저 행해진다는 걸 몰라서 왜안되지 하다가 변수 3개선언하다가 다시 돌아온겁니다. 그런데 정답은 충격적이게도
#include <stdio.h>

int main(void)
{
   int num;
    printf("정수입력;");
     scanf("%d", &num);
     num=~num;
     num =num+1;
    printf("부호를 바꾼 결과:%d\n", num);

return 0;
}
으로 변수를 하나만 선언해서 풀었더라구요.... 
저는 이런생각이 전혀 떠오르지않는데요.. 이게 익숙하지 않아서 그런걸까요? 아님 자질이 부족해서 그런가요?
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호