用C语言写个代码 要像初学者一样的

大一上机布置的 不可以用网上的代码 要自己写 还得像初学者不能那么老练 上学期C语言一点没学 有错误也没关系!不用太完美 只要求个及格!!这周就要交有点急!

img

img

img

img

【1】

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

//定义结构体类型
struct STUDENT
{
    int id; //学号
    float score; //成绩
};

//定义函数,找出成绩最高的学生记录,通过形参指针传回主函数
void fiun(struct STUDENT a[], int N, struct STUDENT *pmax)
{
    int i, max = 0; //max用来保存最高分的下标
    for(i = 1; i < N; i++)
    {
        if(a[i].score > a[max].score) //比较每个元素的成绩
        {
            max = i; //更新最高分的下标
        }
    }
    *pmax = a[max]; //通过指针传回最高分的学生记录
}

//主函数
int main(void)
{
    int N = 5; //假设有5名学生
    struct STUDENT a[N]; //定义结构体数组,存放学生记录
    struct STUDENT max; //定义结构体变量,存放最高分的学生记录
    int i;
    
    //从键盘输入学生记录
    for(i = 0; i < N; i++)
    {
        printf("请输入第%d个学生的学号和成绩:", i + 1);
        scanf("%d%f", &a[i].id, &a[i].score);
    }
    
    //调用函数,找出成绩最高的学生记录
    fiun(a, N, &max);
    
    //输出结果
    printf("成绩最高的学生是:\n");
    printf("学号:%d\n", max.id);
    printf("成绩:%f\n", max.score);
    
    return 0;
}

img

你需要把结构图a的定义发一下才好写啊


#include <stdio.h> 
#include <string.h> 
#define N 10 
typedef struct ss 
{     char num[10]; int s; } STU; 
/***************fun函数**************/
void fun( STU a[], STU *s ) 
{      
    
    int i;
    *s=a[0];    
    for (i=0; i<N; i++) 
        if((s->s)<a[i].s)
            *s=a[i];
}
/***************fun函数**************/
void main ( ) 
{     STU a[N]={{"A01",81},{"A02",89},{"A03",66},{"A04",87},{"A05",77},{"A06",90},{"A07",79}, {"A08",61}, {"A09",80},{"A10",71} }, m ; 
    int i; 
    printf("***** The original data *****\n"); 
    for ( i=0; i< N; i++ )
        printf("No=%s Mark=%d\n", a[i].num,a[i].s); 
    fun ( a, &m ); 
    printf ("***** THE RESULT *****\n"); 
    printf ("The lowest : %s , %d\n",m.num, m.s); 
} 


该回答引用ChatGPT
好的,我来给您写一个简单的C语言代码,用于求五个数的平均值、最大值和最小值,并输出结果。代码如下:

c
#include

int main() {
int num1, num2, num3, num4, num5;
float average;
int max, min;

printf("请输入五个整数,用空格隔开:");
scanf("%d %d %d %d %d", &num1, &num2, &num3, &num4, &num5);

// 求平均值
average = (num1 + num2 + num3 + num4 + num5) / 5.0;
printf("五个数的平均值是:%.2f
", average);

// 求最大值和最小值
max = num1;
if (num2 > max) {
max = num2;
}
if (num3 > max) {
max = num3;
}
if (num4 > max) {
max = num4;
}
if (num5 > max) {
max = num5;
}
printf("五个数中的最大值是:%d
", max);

min = num1;
if (num2 < min) {
min = num2;
}
if (num3 < min) {
min = num3;
}
if (num4 < min) {
min = num4;
}
if (num5 < min) {
min = num5;
}
printf("五个数中的最小值是:%d
", min);

return 0;
}


代码分析:

首先,我们定义了五个整数变量num1, num2, num3, num4, num5,用于存储输入的五个整数。

然后,我们定义了一个浮点型变量average,用于存储五个数的平均值,以及两个整数变量max和min,分别用于存储五个数中的最大值和最小值。

接下来,使用printf和scanf函数获取用户输入的五个整数。

接着,我们使用简单的算术运算求出这五个数的平均值,并输出结果。

最后,我们使用if语句找到这五个数中的最大值和最小值,并分别输出结果。

希望这个代码可以帮助您完成作业。