#include<stdio.h>
int main(void)
{
int n,i;
float s[81], sum = 0, average;
scanf("%d", &n);
if (n <= 0)
{
printf("the number of students:the scores:average=0.00");
return 0;
}
for (i = 0; i < n; i++)
scanf("%f", &s[i]);
for (i = 0; i < n; i++)
sum += s[i];
average = sum / n;
printf("the number of students:the scores:average=%.2f", average);
}
1.sum=0
2.执行return 0之后程序正常退出
3.四则运算——数据类型一致
C循环——求各位数字之积
#include<stdio.h>
int main(void)
{
int num,a,s=1;
scanf("%d", &num);
if (num > 0)
{
a = num % 10;
while (num != 0)
{
s *= a;
num = num / 10;
a = num % 10;
}
printf("%d", s);
}
}
1.while(num!=0)
C循环——求阶乘之和
#include<stdio.h>
int main(void)
{
int n, i, a = 1, sum=0;
scanf("%d", &n);
if (n == 0)
printf("1");
else if (n < 0)
printf("0");
else
{
for (i = 1; i <= n; i++)
{
a = a * i;
sum += a;
}
printf("%d", sum);
}
}
1.阶乘相加——第一个for循环
C循环——求水仙花数
#include <stdio.h>
int main(void) {
int n, s = 0, a, start = 0;
for (n = 100; n < 1000; n++) {
start = n;
s = 0;
while (n != 0) {
a = n % 10;
n /= 10;
s += a * a * a;
}
n = start;
if (s == start)
printf("%d ", start);
}
return 0;
}
1.start=n——在while中n会变化
2.s=0——每次循环都要初始化
3.n=start——不知为何,缺了程序不能运行
C循环——寻找完数
#include<stdio.h>
int main(void)
{
int q, n, i, start, s = 0;
scanf("%d", &q);
for (n = 6; n < q; n++)
{
start = n;
s = 0;
for (i = 1; i < n; i++)
{
if (n % i == 0)
s += i;
}
if (start == s)
printf("%d\n", start);
}
}
1.没有n=start,但正确运行
分数求和
#include<stdio.h>
int main(void)
{
int sign = 1, i;
float s = 0;
for (i = 1; i <= 100; i++)
{
s += (float)sign / i;
sign = -sign;
}
printf("%.3f", s);
}
1.s += (float)sign / i;——注意数据类型的转换——int除以int还是int