이것저것
정올 - 포인터 본문
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&sca=10h0
JUNGOL
www.jungol.co.kr
자가진단1
#include <stdio.h>
int main(void) {
int a;
int* p = &a;
scanf("%d", &a);
printf("%p %d", p, *p);
return 0;
}
자가진단2
#include <stdio.h>
int main(void) {
int a;
int* p = &a;
scanf("%d", &a);
printf("%d...%d", *p / 10, *p % 10);
return 0;
}
자가진단3
#include <stdio.h>
int main(void) {
int a, b;
int* p1 = &a;
int* p2 = &b;
scanf("%d %d", p1, p2);
printf("%d + %d = %d\n", *p1, *p2, *p1 + *p2);
printf("%d - %d = %d\n", *p1, *p2, *p1 + *p2);
printf("%d * %d = %d\n", *p1, *p2, *p1 * *p2);
printf("%d / %d = %d\n", *p1, *p2, *p1 / *p2);
return 0;
}
자가진단4
#include <stdio.h>
int main(void) {
int a[5];
int* p = a;
for (int i = 0; i < 5; i++)
scanf("%d", &p[i]);
for (int i = 0; i < 5; i += 2)
printf("%d ", p[i]);
return 0;
}
자가진단5
#include <stdio.h>
int main(void) {
float a[5];
float* p = a;
for (int i = 0; i < 5; i++)
scanf("%f", &p[i]);
for (int i = 0; i < 5; i++)
printf("%.1f ", p[i]);
return 0;
}
자가진단6
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int n;
scanf("%d", &n);
double* a = (double*)malloc(sizeof(double) * n);
double sum = 0;
for (int i = 0; i < n; i++)
scanf("%lf", &a[i]);
for (int i = 0; i < n; i++) {
printf("%.2f ", a[i]);
sum += a[i];
}
printf("\nhap: %.2f\n", sum);
printf("avg: %.2f\n", sum / n);
return 0;
}
자가진단7
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int n;
scanf("%d", &n);
int* p = (int*)malloc(sizeof(int) * n);
for (int i = 0; i < n; i++)
scanf("%d", &p[i]);
for (int i = 0; i < n; i++) {
for (int j = i; j < n; j++) {
if (p[i] < p[j]) {
int temp = p[i];
p[i] = p[j];
p[j] = temp;
}
}
}
for (int i = 0; i < n; i++)
printf("%d ", p[i]);
return 0;
}
형성평가1
#include <stdio.h>
int main(void) {
char c;
float f;
printf("%p %p", &c, &f);
return 0;
}
형성평가2
#include <stdio.h>
int main(void) {
int n;
int* p = &n;
scanf("%d", p);
for (int i = 0; i < *p; i++)
printf("*");
return 0;
}
형성평가3
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(void) {
int* a = (int*)malloc(sizeof(int));
int* b = (int*)malloc(sizeof(int));
int* c = (int*)malloc(sizeof(int));
scanf("%d %d", a, b);
*c = abs(*a - *b);
printf("%d", *c);
return 0;
}
형성평가4
#include <stdio.h>
int main(void) {
int arr[10];
int* p = arr;
int odd = 0, even = 0;
for (int i = 0; i < 10; i++) {
scanf("%d", &p[i]);
if (p[i] % 2 == 0)
even++;
else
odd++;
}
printf("odd: %d\neven: %d\n", odd, even);
return 0;
}
형성평가5
#include <stdio.h>
#include <limits.h>
int main(void) {
int n;
scanf("%d", &n);
int max = INT_MIN;
int min = INT_MAX;
int* p = (int*)malloc(sizeof(int) * n);
for (int i = 0; i < n; i++)
scanf("%d", &p[i]);
for (int i = 0; i < n; i++) {
max = p[i] > max ? p[i] : max;
min = p[i] < min ? p[i] : min;
}
printf("max: %d\n", max);
printf("min: %d\n", min);
return 0;
}