几道C编程题目

来源:百度知道 编辑:UC知道 时间:2024/05/22 04:52:56
1.编写程序,完成以下公式计算。s=1+1/(1+2)+1/(1+2+3)+….+1/(1+2+3+…+n) 例如:当N的值为11时,结果为1.833333
2.莫电视台歌星大奖赛中,有10位评委为参赛的选手打分,分数为1-100分。当选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值,请编写一个程序实现
3.将字符串偶数位置上的字母转换为大写(若改位置上不是字母,则不转换)

//第一题
#include "stdio.h"
#define N 11
void main()
{
double result=0.0;
int i,sum=0;
for (i=1; i<=N; i++)
{
sum = sum + i;
result = result + 1.0/sum;
}
printf("%lf",result);
}

//第二题,考虑到你是初学,尽量让你能看懂程序,
//所以代码有点多,其实可以有更高效的代码
#include "stdio.h"
void main()
{
double array[10]={0},temp,area=0.0;
int i=0;
printf("输入1—100之间的10个分数:\n");
for(i=0; i<10; i++)
{
scanf("%lf",&array[i]);//输入10个分数
//当大于100或小于1时重输入
if ((int)array[i] >100 || (int)array[i] <1)
{
printf("请正确输入第%i个分数(1—100)\n",i);
i--;
}
}

//把最大值放在第一个位置
for (i=1; i<10; i++)
{
if (array[0]<array[i])
{
temp =array[0]; array[0]=array[i];array[i]=temp;
}
}
//把最小值放在第2个