전공/C
과제9 - Pointer Dynamic (1 ~ 5)
yha97
2021. 6. 22. 14:31
동적할당을 통해 일정 값을 입력받고 입력받은 수 중에서 최댓값을 출력하는 프로그램이다.
#include <stdio.h>
#include <stdlib.h>
int main(){
int n, i= 0; // declaring variables
float largest ; // largest float
printf("Enter the total number of elements: ");
scanf("%d", &n); // enter size of inputs
float* ptr = (float*)malloc(n*sizeof(int)); // declaring array with memory allocation
for(i=0; i<n; i++){
printf("Enter Number %d: ", i+1);
scanf("%f", (ptr+i)); // entering numbers
// finding largest number in entered values
if(i == 0)
largest = *(ptr+i);
if(largest < *(ptr+i))
largest = *(ptr+i);
}
// printing output
printf("Largest number = %.2f", largest);
free(ptr); // erasing allocatied memory
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main(){
int n, i= 0; // declaring variables
float largest ; // largest float
printf("Enter the total number of elements: ");
scanf("%d", &n); // enter size of inputs
float* ptr = (float*)calloc(n, sizeof(int)); // declaring array with contiguous allocation
for(i=0; i<n; i++){
printf("Enter Number %d: ", i+1);
scanf("%f", (ptr+i)); // entering numbers
// finding largest number in entered values
if(i == 0)
largest = *(ptr+i);
if(largest < *(ptr+i))
largest = *(ptr+i);
}
// printing output
printf("Largest number = %.2f\n", largest);
free(ptr); // erasing allocatied memory
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main(){
// declaring pointers for int, char, float
int* ptr1;
char* ptr2;
float* ptr3;
// allocating memory of int, char, float
ptr1 = malloc(sizeof(int));
ptr2 = malloc(sizeof(char));
ptr3 = malloc(sizeof(float));
// input each values
printf("Enter integer value: ");
scanf("%d", ptr1);
getchar(); // to erase going new lines
printf("Enter character value: ");
scanf("%c", ptr2);
getchar();
printf("Enter float value: ");
scanf("%f", ptr3);
// printing output
printf("Inputted value are: %d, %c, %.2f", *ptr1, *ptr2, *ptr3);
// delete allocated memory
free(ptr1);
free(ptr2);
free(ptr3);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main(){
int n = 0; // size of text
printf("Enter limit of the text: ");
scanf("%d", &n); // enter size of text
getchar(); // erasing new line
char* ptr = malloc((n+1)*sizeof(char)); // memory allocation of char type
printf("Enter text: ");
gets(ptr); // enter a sentence
printf("Inputted text is: %s", ptr); // printing output
free(ptr); // erasing allocated memory
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main(){
int n, i, sum = 0;
printf("Enter total number of elements: ");
scanf("%d", &n); // enter size of array
getchar();
int arr[n]; // declaring one-dimensional array based on inputed size of array
// enter n elements
printf("Enter %d elements:\n", n);
for(i=0; i<n; i++){
printf("Enter element %d: ", i+1);
scanf("%d", &arr[i]);
sum += arr[i]; // adding sum of elements whenever entering new element
}
printf("Array elements are: ");
for(i=0; i<n; i++){
printf("%d ", arr[i]); // printing all elements of array
}
printf("\nSum of all elements: %d", sum); // printing sum of all elements
return 0;
}