#include <stdlib.h> void *calloc(size_t num, size_t size) num : 要素の数 size : 各要素のサイズ
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i1, *k1;
/*
int型整数の10個の配列を確保
callocを使用(0で初期化される)
*/
k1 = (int *)calloc(10, sizeof(int));
/*
最初の5個に1から5を代入
*/
for (i1 = 0; i1 < 5; i1++)
k1[i1] = i1 + 1;
for (i1 = 0; i1 < 10; i1++)
printf("%2d ", k1[i1]);
printf("\n");
/*
配列のサイズを15に変更(10個目までのデータは保存される)
*/
k1 = (int *)realloc((void *)k1, 15*sizeof(int)); /* intを15個 */
for (i1 = 0; i1 < 15; i1++)
printf("%2d ", k1[i1]);
printf("\n");
/*
領域の解放
*/
free((void *)k1);
/*
int型整数の10個の配列を確保
mallocを使用(内容は未定)
*/
k1 = (int *)malloc(10*sizeof(int)); /* intを10個 */
for (i1 = 0; i1 < 10; i1++)
printf("%2d ",k1[i1]);
printf("\n");
return 0;
}
1 2 3 4 5 0 0 0 0 0 1 2 3 4 5 0 0 0 0 0 0 33 1627793056 1627793056 0 1627793104 1627793104 3 4 5 0 0 0 0 0
#include <stdio.h>
int main()
{
int i1, n, sum = 0, *x;
/*
データの数
*/
printf("データの数は? ");
scanf("%d", &n);
/*
領域の確保
*/
x = new int [n];
/*
データの入力と和の計算
*/
for (i1 = 0; i1 < n; i1++) {
printf(" %d 番目のデータを入力してください ", i1+1);
scanf("%d", &x[i1]);
sum += x[i1];
}
printf("和 = %d\n", sum);
/*
領域の開放
*/
delete [] x;
return 0;
}
データの数は? 3 1 番目のデータを入力してください 1 2 番目のデータを入力してください 2 3 番目のデータを入力してください 3 和 = 6
#include <stdio.h>
int main()
{
int i1, i2, m, n, *mean, **ten;
/*
データの数
*/
printf("クラスの人数は? ");
scanf("%d", &n);
printf("科目の数は? ");
scanf("%d", &m);
/*
領域の確保
*/
ten = new int * [n];
mean = new int [m];
for (i1 = 0; i1 < m; i1++)
mean[i1] = 0;
/*
データの入力と和の計算
*/
for (i1 = 0; i1 < n; i1++) {
ten[i1] = new int [m]; // 学生毎に科目数を変えることも可能
printf(" %d 番目の学生\n", i1+1);
for (i2 = 0; i2 < m; i2++) {
printf(" %d 番目の科目の点数は? ", i2+1);
scanf("%d", &ten[i1][i2]);
mean[i2] += ten[i1][i2];
}
}
/*
平均の出力
*/
printf("各科目の平均点は以下の通りです\n ");
for (i1 = 0; i1 < m; i1++)
printf(" %d", mean[i1]/n);
printf("\n");
/*
領域の開放
*/
for (i1 = 0; i1 < n; i1++)
delete [] ten[i1];
delete [] ten;
delete [] mean;
return 0;
}
クラスの人数は? 2
科目の数は? 3
1 番目の学生
1 番目の科目の点数は? 10
2 番目の科目の点数は? 20
3 番目の科目の点数は? 30
2 番目の学生
1 番目の科目の点数は? 40
2 番目の科目の点数は? 50
3 番目の科目の点数は? 60
各科目の平均点は以下の通りです
25 35 45
| 菅沼ホーム | 本文目次 | 演習問題解答例 | 付録目次 | 索引 |