(1) 1から入力した値nまでの和を求めるプログラムをfor文で作成せよ
#include<stdio.h>
void main()
{
int i, n, sum;
printf("n=");
scanf("%d", &n);
sum = 0;
for(i=1; i<=n; i++) {
sum += i;
}
printf("和は%dです.¥n", sum);
}
(2) (1)を応用して,データ(例えば実験データなど)の件数 n を整数で入力し,続いてその件数分データを入力すると, データの合計と平均値と最大値を求め画面に表示するプログラムをfor文を用いて作成せよ
#include<stdio.h>
void main()
{
int i, n;
float data, sum, ave, max;
sum = 0.0;
printf("n=");
scanf("%d", &n);
for(i=0;i<n;i++){
printf("data%d=", i+1);
scanf("%f", &data);
sum += data;
if(i == 0){
max = data;
}else{
if(max < data){
max = data;
}
}
}
ave = sum/(float)n;
printf("データの合計は%fです.¥n", sum);
printf("データの平均値は%fです.¥n", ave);
printf("データの最大値は%fです.¥n", max);
}
(3) 1~100までの数字で奇数だけを表示するプログラムを作成せよ
#include <stdio.h>
void main()
{
int i;
for(i=1;i<=100;i++){
if(i%2 == 1){
printf("%d¥n", i);
}
}
}
(4) (3)の問題で,奇数の個数を数えその数を表示するプログラムを作成せよ
#include <stdio.h>
void main()
{
int i, count;
count = 0;
for(i=1;i<=100;i++){
if(i%2 == 1){
count++;
}
}
printf("奇数の個数は%dです.¥n", count);
}
(5) つぎのような数列をフィボナッチ数列という
1 1 2 3 5 8 13 21 34 55 89
この数列は第n項は第n-1項と第n-2項を加えたものであり,第1項と第2項は1であるから次のように定義される

これを第20項まで計算するプログラムを作成しなさい
#include <stdio.h>
void main()
{
int i, f1, f2, f3;
f1 = 1;
f2 = 1;
for(i=0;i<20;i++){
if(i==0){
printf("%d¥n", f1);
} else if(i==1){
printf("%d¥n", f2);
} else{
f3 = f1 + f2;
printf("%d¥n", f3);
f1 = f2;
f2 = f3;
}
}
}