c编程题汇总

文章介绍了几个基础的编程练习,包括计算学生平均成绩、多维度成绩处理、简单函数实现、计费逻辑、百分制成绩等级判定等,展示了基础数据处理和控制结构的运用。
摘要由CSDN通过智能技术生成

1、已知一个班10个学生的成绩,要求输入这10个学生的成绩,然后求出他们的平均成绩

// 已知一个班10个学生的成绩,要求输入这10个学生的成绩,然后求出他们的平均成绩
int main() 
{
    int grade[10];
    int i = 0;
    int avg = 0;
    int sum = 0;
    for(i = 0;i < 10;i++){
        scanf("%d",&grade[i]);
    }
    for(i = 0;i < 10;i++){
        sum+=grade[i];
    }
    avg = sum/10;
    printf("平均成绩为%d",avg);
    return 0;
}

 2、已知5个学生的4门课的成绩,要求求出每个学生的平均成绩,然后对平均成绩从高到低将各学生的成绩排序记录

#include <stdio.h>
#include <string.h>

// 已知5个学生的4门课的成绩,要求求出每个学生的平均成绩,然后对平均成绩从高到低将各学生的成绩排序记录
int main() 
{
    int grade[5][4]={};
    int i = 0;
    int j = 0;
    int max[5];
    // 输入5个学生的4门课的成绩
    for(i = 0;i < 5;i++){
        int avg = 0;
        int sum = 0;
        for(j = 0; j < 4;j++){
            scanf("%d",&grade[i][j]);
            sum+=grade[i][j];
        }
        avg = sum / 4;
        printf("第%d个学生的平均成绩是:%d\n",i+1,avg);
        max[i]=avg;
    }
    // 冒泡排序
    for(i = 0; i < 4;i++){
        int flag = 1;
        for(j = 0; j < 4-i;j++){
            if(max[j]<max[j+1]){
                flag = 0;
                int m = max[j+1];
                max[j+1] = max[j];
                max[j] = m;
            }
        }
        if(flag == 1){
                break;
        }
    }
    // 
    for(i = 0;i < 5;i++){
        printf("%d ",max[i]);
    }
   
    return 0;
}

3、输入2个整数,求两数的平方和并输出

//输入2个整数,求两数的平方和并输出
int main() 
{
    int x = 0;
    int y = 0;
    int sum = 0;
    scanf("%d %d",&x,&y);
    sum = x*x + y*y;
    printf("%d\n",sum);
    return 0;
}

4、输入一个圆半径r,当r>=0时,计算并输出圆的面积和周长,否则,输出提示信息

#include <stdio.h>
#include <string.h>

//输入一个圆半径r,当r>=0时,计算并输出圆的面积和周长,否则,输出提示信息
#define PI 3.14
int main() 
{
    double r = 0;
    double z = 0;
    double s = 0;
    scanf("%lf",&r);
    if(r >= 0){
        z = 2*PI*r;
        s = PI*r*r;
        printf("Area of a circle:%.2lf\n",s);
        printf("The circumference of a circle:%.2lf\n",z);
    }else{
        printf("err");
    }
    
    return 0;
}

5、已知函数y=f(x),编写实现输入一个x值,输出y值
1)、y=2x+1  ,x<0     2)、y=0     ,x=0      3)、y=2x-1  ,x>0

#include <stdio.h>
#include <string.h>

//已知函数y=f(x),编写实现输入一个x值,输出y值
// y=2x+1  ,x<0
// y=0     ,x=0
// y=2x-1  ,x>0
int main() 
{
    int x = 0 ;
    int y = 0;
    scanf("%d",&x);
    if(x < 0){
        y = 2*x+1;
    }else if(x == 0){
        y = 0;
    }else{
        y = 2*x-1;
    }
    printf("%d\n",y);
    
    return 0;
}

6、从键盘上输入一个百分制成绩score,按下列原则输出其等级:
 score>=90,等级为A;80<=score<90,等级为B;70<=score<80,等级为C;60<=score<70,等级为D;core<60,等级为E;

#include <stdio.h>
#include <string.h>

//从键盘上输入一个百分制成绩score,按下列原则输出其等级:
// score>=90,等级为A;80<=score<90,等级为B;70<=score<80,等级为C;60<=score<70,等级为D;core<60,等级为E;
int main() 
{
    int score = 0 ;
    char level = '0';
    scanf("%d",&score);
    switch(score/10){
        case 9:
            level = 'A';
            break;
        case 8:
            level = 'B';
            break;
        case 7:
            level = 'C';
            break;
        case 6:
            level = 'D';
            break;
        default:
            level = 'E';
    }
    printf("level is:%c\n",level);
    return 0;
}

7、编写一个程序每个月上网时间计算上网费用,计算方法如下:

#include <stdio.h>

//编写一个程序每个月上网时间计算上网费用,计算方法如下:
// 费用 = 30元         <=10小时
// 费用 = 每小时3元     10-50小时
// 费用 = 每小时2.5元   >=50小时

int main() 
{
    double prize = 0;
    int t = 0;
    scanf("%d\n",&t);
    if(t <= 10){
        prize = 30;
    }else if(t>=10&&t<=50){
        prize = t*3;
    }else{
        prize = t*2.5;
    }
    printf("%.2lf\n",prize);
    return 0;
}

8、从键盘上输入10个整数,统计其中正数、负数、和零的个数,并在屏幕上输出

#include <stdio.h>

//从键盘上输入10个整数,统计其中正数、负数、和零的个数,并在屏幕上输出

int main() 
{
    int a = 0;
    int i = 0;
    int z = 0; //统计正数
    int x = 0; //统计负数
    int n = 0; //统计零
    for(i = 0;i < 10;i++){
        scanf("%d",&a);
        if (a > 0){
            z++;
        }else if(a < 0){
            x++;
        }else{
            n++;
        }
    }
    printf("%d %d %d",z,x,n);
    return 0;
}

9、编程序实现求1-10之间的所有数的乘积并输出

#include <stdio.h>

//编程序实现求1-10之间的所有数的乘积并输出

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

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值