ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第三周暑假作业

2021-07-21 11:02:37  阅读:129  来源: 互联网

标签:score int sum 第三周 stu num printf 暑假作业


二级题库
double fun(double  *x)
{ int  i, j;    double  av, y[N];
  av=0;
  for(i=0; i<N; i++)
/**********found**********/
    av+=x[i]/N;
  for(i=j=0; i<N; i++)
    if( x[i]<av ){
      y[j]=x[i]; x[i]=-1;
/**********found**********/
      j++;
    }
  i=0;
  while(i<N)
  {  if( x[i]!= -1 ) y[j++]=x[i];
/**********found**********/
     i++;
  }
  for(i=0; i<N; i++)x[i] = y[i];
  return  av;
}


/*************found**************/
void fun(char *s, int num[5])
{ int k, i=5;
  for(k=0;k<i;k++)
/*************found**************/
      num[k]=0;
  for(;*s;s++)
      { i=-1;
/*************found**************/
        switch(*s)
           { case 'a': case'A':{i=0;break;}
             case 'e': case 'E':{i=1;break;}
             case 'i': case 'I':{i=2;break;}
             case 'o': case 'O':{i=3;break;}
             case 'u': case 'U':{i=4;break;}
           }
       if(i>=0)
       num[i]++;
      }
}


int fun( int a [M][N])
{
      int i,j,sum=0;
      for(i=0;i<M;i++)
      for(j=0;j<M;j++)
      if(i==0||i==M-1||j==0||j==n-1)
      sum+=a[i][j];
          return sum;
}

c语言
输入三个字符串,按由小到大的顺序输出(指针)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    char *s[3],st[3][10],**p,*t;
    int i,j;
    for(i=0;i<3;s[i]=st[i],scanf("%s", s[i++]))
    for(i=0; i<3; i++)
        for(j=i+1;j<3;strcmp(s[i],s[j])>0?t=s[i],s[i]=s[j],s[j]=t,j++:j++)
    for(p=s;p<s+3;printf("%s ", *p++))
    printf("\n");
    system("pause");
    return 0;
}

输入三个整数,按由小到大的顺序输出。
#include <stdio.h>
int main()
{
    int a,b,c,*i,*j,*k;
    i=&a,j=&b,k=&c;
    scanf("%d %d %d",i,j,k);
    if(*i<*j)
    {
        if(*j<*k)
            printf("%d %d %d\n",*i,*j,*k);
        else
        {
            if(*i<*k)
                printf("%d %d %d\n",*i,*k,*j);
            else
                printf("%d %d %d\n",*k,*i,*j);
        }
    }
    else
    {
        if(*j>*k)
            printf("%d %d %d\n",*k,*j,*i);
        else
        {
            if(*i<*k)
                printf("%d %d %d\n",*j,*i,*k);
            else
                printf("%d %d %d\n",*j,*k,*i);
        }
    }
    return 0;
}

编写程序,求出n1至n2自然数之和。要求使用递归方法。
#include<stdio.h>
he(int n,int m)
{
    int sum=0;
    if(n==m)
        return(n);
    else
        return(n+he(n+1,m));
}
main()
{
    int n,m;
    scanf("%d%d",&n,&m);
    printf("%d",he(n,m));
}

两个乒乓球队进行比赛,各出三人。甲队为A、B、C三人,乙队为X、Y、Z三,已抽签决定比赛名单。 有人向队员打的比赛的名单,A说他不和X比,C说他不和X、Z比。请编程序找出三对比赛选手名单。#include <stdio.h>
int main()
{
    int i,j,k;
    for(i='X';i<='Z';i++)
    {
        for(j='X';j<='Z';j++)
        {
            for(k='X';k<='Z';k++)
            {
                if(i=='X'||j==i||k=='X'||k=='Z'||j==k||i==k)
                {
                    continue;
                }
                printf("A对%c,B对%c,C对%c",i,j,k);
            }
        }
    }
    return 0;
}

梅森素数
#include <stdio.h>
#include <math.h>
int prime(int n)
{
    int i;
    long k;
    k=sqrt(n)+1;
    for(i=2;i<=k;i++)
        if(n%i==0)
            return 0;
        return 1;
}
int main()
{
    int mp,n=0,i;
    for (i=2;i<=20;i++)
    {
        mp=pow(2, i)-1;
        if(prime(mp))
        {
            n++;
            printf("M(%d)=%d",i,mp);
                   printf("\n");
        }
    }
    printf("%d\n",n);
    return 0;
}

买卖提将养的一缸金鱼分五次出售系统上一次卖出全部的一半加二分之一条; 第二次卖出余下的三分之一加三分之一条; 第三次卖出余下的四分之一加四分之一条; 第四次卖出余下的五分之一加五分之一条; 最后卖出余几条
#include<stdio.h>  
void main()  
{  
    int i,j,n=0,x;  
      for(i=23;n==0;i+=2)     
    {  
        for(j=1,x=i;j<=4&&x>=11;j++)
        {  
            if((x+1)%(j+1)==0)  
                x-=(x+1)/(j+1);  
              else
            {
                x=0;
                break;
            }
        }  
    if(j==5&&x==11)   
    {       
        printf("%d",i);
          n=1;          
      }  
    }   
}  

孪生素数
#include <stdio.h>
#include <math.h>
int isPrime(int num)
{    
    int i;    
    for(i=2;i<=sqrt(num); i++)    
    {        
        if(num%i==0)        
        {            
            return 0;        
        }    
    }    
    return 1;
}
int main()
{    
    int i,temp,a,b;    
    temp=2;      
    scanf("%ld,%ld",&a,&b);    
    for(i=a;i<=b;i++)    
    {        
        if(isPrime(i))        
        {            
            if(i-temp==2)            
            {                
                printf("(%ld,%ld)\n",temp,i);                         
            }            
            temp=i;        
        }    
    }
    return 0;
}

定义一个结构体变量(包括年月日)。计算该日在本年中是第几天,注意闰年问题。用函数实现
#include<stdio.h>
struct Date
{
    int year;
    int month;
    int day;
};
int main()
{
      struct Date p;
      scanf("%d,%d,%d",&p.year,&p.month,&p.day);
      int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
      int sum,i;
    sum=p.day;
    for(i=0;i<p.month-1;i++)
          sum+=a[i];
          if(((p.year%4==0&&p.year%100!=0)||p.year%400==0)&&p.month>2)
               printf("该日是在%d年中的第%d天", p.year,sum+1);   
          else
               printf("该日是在%d年中的第%d天", p.year,sum);
}

编写一个print函数,打印一个学生的成绩数组,该数组中有5个学生的记录, 每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。
#include<stdio.h>
struct Student
{
    int num;
    char name[20];
    int score[3];
};
int print(struct Student stu[])
{
     int i,j;
     for(i=0;i<5;i++)
     {
         printf("%5d%10s\t",stu[i].num,stu[i].name);    
         for(j=0;j<3;j++)
            printf("%d\t",stu[i].score[j]);
            printf("\n");    
     }
}
int input(struct Student stu[])
{
      int i,j;
     for(i=0;i<5;i++)
     {
         scanf("%d",&stu[i].num);
         scanf("%s",&stu[i].name);    
         for(j=0;j<3;j++)
         {
              printf("stu[%d].score[%d]:",i,j);
              scanf("%d",&stu[i].score[j]);
         }   
          printf("\n");    
     }
}
int main()
{
      struct Student stu[5];
      input(stu);
    print(stu);
}

有10个学生,每个学数据包括学号、姓名、3门课的成绩。从键盘输入10学生的数据,要求打印出3门课的平均成绩,以及最高分的学生数据。
#include<stdio.h>
struct Student
{
    int num;
    char name[20];
    int score[3];
}stu[10];
void score_ave(struct Student s[])
{
    float n=10;
    int m=3,j,i;
    float score_ave[3];
    for(j=0;j<m;j++)
    {         
        float sum=0;                    
        for(i=0;i<n;i++)
        {      
            sum+=s[i].score[j];        
        }                              
        score_ave[j]=sum/n;            
    }
    for(j=0;j<m;j++)
    {
        printf("%.2f ",score_ave[j]);    
    }
    printf("\n");
}
void person_ave(struct Student s[])
{
    float p_ave[10];
    float sum;
    float max=0;
    float m=3;
    int num;    
    int n=10;
    int i,j;
    for(i=0;i<n;i++)
    {          
        sum=0;                         
        for(j=0; j<m; j++)
        {      
            sum+=s[i].score[j];         
        }
        p_ave[i]=sum/m;
        if (max<p_ave[i])
        {
            max=p_ave[i];    
            num=i;
        }
    }
    printf("%d %s %d %d %d\n",s[num].num,s[num].name,s[num].score[0],s[num].score[1],s[num].score[2]);
}
int main()
{
    int n=10;
    int i,j;
    for (i=0;i<n;i++)
    {
        scanf("%d %s",&stu[i].num,&stu[i].name);
        for(j=0;j<3;j++)
        {
            scanf("%d",&stu[i].score[j]);
        }
    }
    score_ave(stu);
    person_ave(stu);
    return 0;
}

标签:score,int,sum,第三周,stu,num,printf,暑假作业
来源: https://blog.csdn.net/qq_53079169/article/details/118961488

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有