论坛: 编程破解 标题: 这个谁回呀? 复制本贴地址    
作者: nightcolor [nightcolor]    版主   登录
有n个学生。每个学生的数据包括学号,姓名,性别,年龄,三门课的成绩
,输入n个学生的数据,要求
   1,在函数中输出每个学生的总分和平均分
   2,按分数从高到低对学生进行排列输出。
   3,查找是否有不及格科目,如有输出该学生及各科成绩。

谁能用c语言编这个题  快快帮帮忙谢谢各位大哥了



[此贴被 夜色撩人(nightcolor) 在 12月27日23时39分 编辑过]

地主 发表时间: 2002-12-27 23:33:39

回复: nightcolor [nightcolor]   版主   登录
昏迷````

B1层 发表时间: 12/27 23:34

回复: quake [quake]   论坛用户   登录
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct info
{
 int ID;
 char name[10];
 char sex[2];
 int age;
 int c1;
 int c2;
 int c3;
 int total;
 int av;
 int fail;
};

main(int argc,char **argv)
{
 int n=atoi(argv[1]);
 int max,index,tf=0;
 struct info s[100];
 struct info tmp;
 int i,j,k,a,b;
 if (argc!=2)
 {
  printf("\nUsage:\n%s n\nn must be a int value.",argv[0]);
  exit(0);
  /*n must be a int; ignore valid check*/
 }
 printf("\nPlease input information of the n students:\n");
 for(i=0;i<n;i++)
 {
  printf("\n%d:",i+1);
  printf("\nID:");
  scanf("%d",&s[i].ID);
  printf("Name:");
  scanf("%s",s[i].name);
  printf("Sex(M/F):");
  scanf("%s",s[i].sex);
  printf("Age:");
  scanf("%d",&s[i].age);
  printf("Class1'score:");
  scanf("%d",&s[i].c1);
  printf("Class2'score:");
  scanf("%d",&s[i].c2);
  printf("Class3'score:");
  scanf("%d",&s[i].c3);
  s[i].total=s[i].c1+s[i].c2+s[i].c3;
  s[i].av=s[i].total/3;
  if(s[i].c1<60||s[i].c2<60||s[i].c3<60)
    s[i].fail=1;
  else
   s[i].fail=0;
 }
 for(k=0;k<n-1;k++)
 {
  max=s[k].total;
  index=k;
  for(j=k+1;j<n;j++)
   {
    if(s[j].total>max)
    {
     max=s[j].total;
     index=j;
    }
   }
   if(index!=k)
   {
    tmp.ID=s[k].ID;
    strcpy(tmp.name,s[k].name);
    strcpy(tmp.sex,s[k].sex);
    tmp.age=s[k].age;
    tmp.c1=s[k].c1;
    tmp.c2=s[k].c2;
    tmp.c3=s[k].c3;
    tmp.total=s[k].total;
    tmp.av=s[k].av;
    tmp.fail=s[k].fail;

    s[k].ID=s[index].ID;
    strcpy(s[k].name,s[index].name);
    strcpy(s[k].sex,s[index].sex);
    s[k].age=s[index].age;
    s[k].c1=s[index].c1;
    s[k].c2=s[index].c2;
    s[k].c3=s[index].c3;
    s[k].total=s[index].total;
    s[k].av=s[index].av;
    s[k].fail=s[index].fail;

    s[index].ID=tmp.ID;
    strcpy(s[index].name,tmp.name);
    strcpy(s[index].sex,tmp.sex);
    s[index].age=tmp.age;
    s[index].c1=tmp.c1;
    s[index].c2=tmp.c2;
    s[index].c3=tmp.c3;
    s[index].total=tmp.total;
    s[index].av=tmp.av;
    s[index].fail=tmp.fail;
   }
 }
 printf("\n=START=\nList of Total:\n");
 printf("ID\tName\tSex\tAge\tClass1\tClass2\tClass3\tTotal\tAverage\tFail\n");
 for(a=0;a<n;a++)
 

printf("%d\t%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n",s[a].ID,s[a].name,s[a].sex,s[a].age,s[a].c

1,s[a].c2,s[a].c3,s[a].total,s[a].av,s[a].fail);
 printf("\nList of Fail:\n");
 for(b=0;b<n;b++)
   if(s[b].fail==1)
   {
    tf++;
    

printf("%d\t%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n",s[b].ID,s[b].name,s[b].sex,s[b].age,s[b].c

1,s[b].c2,s[b].c3,s[b].total,s[b].av,s[b].fail);
   }
 printf("\nTotal Fail:\t\t\t\t\t\t\t\t%d\n=END=\n",tf);
 return 0;
}
本程序在TC3.0下调试通过!(不过没有做很多合法性检查!)
版主啊,给我加等级啊!

B2层 发表时间: 12/28 20:59

回复: ypy [ypy]   见习版主   登录

学c语言课程的作业题

B3层 发表时间: 12/28 22:28

回复: hugh [hugh]   论坛用户   登录
夜色撩人 
你好懒啊,作业也搞到这里来做了!

B4层 发表时间: 01/01 23:10

回复: stone [stone]   论坛用户   登录
哈哈。。。这里是个完成作业的好地方哦!哈哈

B5层 发表时间: 01/02 08:20

回复: quake [quake]   论坛用户   登录
我也好久没有用C写程序了,现在一般都用VB,心情好,玩一把!
版主大人啊,能不能给我加等级啊!?

B6层 发表时间: 01/03 14:33

回复: hacker [hackerest]   论坛用户   登录
quake老兄,你不要马p拍到马腿上!!!be  careful!!!!!!!!!

B7层 发表时间: 01/09 21:21

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号