#include <stdio.h> int main(void) { int i, n; int sum, prod; printf("input n"); scanf("%d", &n); sum = 0; prod = 1; for (i = 1; i <= n; i++) { sum += i; prod *= i; } printf("sum from 1 to n = %d\n", sum); printf("product from 1 to n = %d\n", prod); return 0; }
#include <stdio.h> int main(void) { int i,k; int sum; int A[10]; printf("input 10 numbers "); for(i = 0; i < 10; i++){ scanf("%d", &k); A[i] = k; } sum = 0; for (i = 0; i < 10; i++){ sum += A[i]; } printf("sum = %d\n", sum); return 0; }
input 10 numbers 12 3 2 3 5 6 8 10 11 1←ここで改行
これを、 ./ex2_1 < input と入力することによって、標準入力 から、このファイルの内容を入力することができる。この方法で、実行できる ことを確かめなさい。
12 3 2 3 5 6 8 10 11 1
#include <stdio.h> int calc_max(int x, int y); /* 最大値を求める関数の宣言 */ int main(void) { int a, b; /* 入力する2整数 */ int max; /* 最大値 */ printf("input a "); scanf("%d", &a); printf("input b "); scanf("%d", &b); max = calc_max(a, b); printf("max = %d\n",max); return 0; } int calc_max(int a, int b) { if (a > b) return a; else return b; }
例題 1のプログラムを変更して,50から100の偶数の和を出力するプログラム を作成しなさい。
例題2のプログラムを参考にして、10個ずつ20個の整数を10のサイズを持つ配 列A,Bに入力し、両方の配列に入っている要素を出力するプログラムを作成し なさい。このプログラムは配列に入っている要素を集合として、2つの集合の 積(intersection)を計算することになる。
12 3 2 4 5 16 8 10 11 1 7 12 11 22 17 9 16 8 10 20
2次元座標上の2点(x1,y1)(x2,y2)を表す数x1,y1,x2,y2を引数として、 この2点を対角線とし、上下の辺がx軸、左右の辺がy軸に並行な四角形の面積 を求める関数areaを作成しなさい。これを用いて、x1,y1,x2,y2を入力して、 面積を出力するプログラムを作成しなさい。なお、x1,y1,x2,y2は整数でよい。