C语言简单题(1)圆面积、成绩转化等级、数列和、闰年、求平均、温度转换、方程组、阶乘和、输入年月日判断为该年的第几天、字符串排序、求数组最值

/*

    

给出圆的半径,计算圆的周长和面积 

#include
#define PI 3.14159
int main(){
    float s,r,l;
    printf("请输入圆的半径r:");
    scanf("%f",&r);
    l=2*PI*r;
    s=PI*r*r;
    printf("圆的周长为:%.2f\n",l);
    printf("圆的面积为:%.2f\n",s);
    return 0;
}
*/

 /*    

根据输入的成绩,输出成绩对应的等级
    要求:
    输入成绩无效要能重新输入

#include

int main(){
    float score;
    char grade;
    printf("请输入一个成绩:");
    scanf("%f",&score);
    while(score > 100 || score < 0){
        printf("输入成绩无效,请重新输入:");
        scanf("%f",&score); 
    }
    if(score > 90){
        grade = 'A';
        printf("成绩为%.2f,对应的等级为%c",score,grade);
    }else if (score > 80){
        grade = 'B';
        printf("成绩为%.2f,对应的等级为%c",score,grade);
    }else if (score > 70){
        grade = 'C';
        printf("成绩为%.2f,对应的等级为%c",score,grade);
    }else{
        grade = 'D';
        printf("成绩为%.2f,对应的等级为%c",score,grade);
    }
    return 0;
}
*/

 /*    

求数列的前20项和,数列为 1, 2/1,3/2, 4/3等

int main(){
    int i;
    double sum = 1;
    for(i=1;i<=20;i++){
        sum = sum + (i+1)/i;
    }
    printf("数列的前20项之和为:%lf\n",sum);
    return 0;

*/

/*

输入一个年份,判断是否是闰年
    注:四年一闰,百年不闰,四百年一闰 

int main(){
    int year;
    printf("请输入年份:");
    scanf("%d",&year);
    if(year % 4 == 0 || year % 400 == 0 && year % 100 != 0)
        printf("%d是闰年\n",year);
    else
        printf("%d不是闰年\n",year);
    return 0; 
}
*/

/*  

 5个成绩,去掉最高分,去掉最低分,求平均分 

#include
int main(){
    int score[5];
    int i;
    int sum = 0;
    for(i=0;i<5;i++){
        printf("请输入第%d次成绩:",i+1);
        scanf("%d",&score[i]);
        sum += score[i];
    }
    int a,b;
    a = b = score[0];
    for(i=1;i<5;i++){
        if(score[i]             a = score[i];
        }
        if(score[i]>b){
            b = score[i];
        }
    }
    int average = (sum - a - b)/3;
    printf("平均成绩为%d\n",average);
    return 0;
}
*/

/*    

输入华氏温度,输出摄氏温度,c=5/9*(f-32) 

int main(){
    double f,c;
    printf("请输入华氏温度:");
    scanf("%lf",&f);
    c = (5.0/9)*(f-32);
    printf("华氏温度%.2lf,对应的摄氏温度为%.2lf\n",f,c);
    return 0;
}
*/

/*    

给出一个方程,输入x,输出y
    y = x            , x < 1
    y = 2 * x - 1  , 1 <= x <10
    y = 3 * x - 11 , x >= 10

int main(){
    int x,y;
    printf("请输入x的值:");
    scanf("%d",&x);
    if(x < 1){
        y = x;
    }
    else if(1 <= x && x < 10){
        y = 2 * x - 1;
    }
    else if(x >= 10){
        y = 3 * x - 11;
    }
    printf("输入x=%d,输出y=%d\n",x,y);
    return 0;
}
*/

/*    

计算 1!+2!+3!+...+10!

 

int main(){
    int i,j;
    int sum = 0;
    for (i = 1;i <= 10;i++){
        for(j = 1;j <= i;j++){
            sum += j;
        }
    }
    printf("%d",sum);
    return 0;
}
*/

/*    

输入年月日,求是该年的第几天,主函数调用判断闰年函数,是闰年返回 1 ,不是返回 0 

int  isleapyear(int year){
    if(year % 4 == 0 || year % 400 == 0 && year % 100!= 0){
        return 1;
    }
    else
        return 0;
}
int sumday(int year,int month,int day){
    int days_of_month[] = {0,31,28,31,30,31,30,31,31,30,31,30,31};        //月份在1月,则加0天,day既是该年的第几天 
    int i;
    int days = 0;
    for(i=1;i         days = days + days_of_month[i];
    }
    days = days + day;
    if(isleapyear(year) && month >= 3){
        days += 1;
    }
    return days;
}
int main(){
    int year,month,day;
    printf("请依次输入年 月 日,用空格隔开\n");
    scanf("%d %d %d",&year,&month,&day);
    printf("这一天是这一年的第%d天\n",sumday(year,month,day));
    return 0;
}
*/

/*    
主函数输入一个字符串,调用sort(char a[]),对该字符串进行排序
    字符串函数文件为string.h (好像做错了,会改的)
*/

/*        再看看这个题 
#include                //引入string.h头文件 
void sort(char a[]){
    int temp;
    int i,j;
    for(i=0;i         for(j=0;j             if(a[i]){
                temp = a[i];
                a[i] = a[i+1];
                a[i+1] = temp;
            }
        }
    }
}
int main(){
    char a[100];
    printf("请输入一个字符串:");
    scanf("%s",&a);
    sort(a);
    printf("%s",a);
    return 0;
}

*/
 

/*    

从键盘输入一个自然数n,然后在输入n个自然数,求出这n个数的最大值max和最小值min 


int main(){
    int n;
    int i;
    printf("请输入一个自然数:%d",n);
    scanf("%d",&n);
    int a[100];
    printf("请输入n个自然数\n");
    for(i=0;i         scanf("%d",&a[i]);
    }
    int max,min;
    max = min = a[0];
    for(i=0;i         if(a[i]>max){
            max = a[i];
        }
        if(a[i]             min = a[i];
        }
    }
    printf("这n个数中的最大值max=%d,最小值min=%d\n",max,min);
    return 0;

*/

 

你可能感兴趣的:(c语言,算法,数据结构)