第18周

课后1

#include<stdio.h>
int dt[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

int isr(int year)
{
    if(year%4==0 &&  year%100!=0 || year%400==0)
    return 1;
    else return 0;
}
int main()
{
    int n;
    int y,m,d;
    int sum;
    scanf("%d",&n);
    while(n--)
    {   sum=0;
        scanf("%d %d %d",&y,&m,&d);
      if(isr(y)==1) dt[2]=29;
      else dt[2]=28;
        for(int i=1;i<m;i++)
        {
            sum+=dt[i];
        }
        sum+=d;
        printf("%d\n",sum);
    }
    return 0;
}

 
课后2

#include <stdio.h>
#include <stdlib.h>
#include "test.h"
#include<string.h>

void registerStaff(int n,staff *head)
{
    int i;
    for(i=0;i<n;i++)
    {
        staff *s=(staff*)malloc(sizeof(staff));
        scanf("%d %d %d %s",&s->id,&s->age,&s->wages,s->name);
        s->next=NULL;
        head->next=s;
        head=s;
    }
}
void getMaxWages(staff *head)
{
    staff *p,*q,*pre,*c;
    q=head;
    p=head->next;
    int m=-999;
    while(p!=NULL)
    {
        if(m<p->wages)
        {
            pre = q;
            c =p;
            m=p->wages;
        }
        q=p;
        p=p->next;
    }
    pre->next = c->next;
    c->next = head->next;
    head->next = c;
}
 
课后3

#include <stdio.h>
#include<stdlib.h>
#include "test.h"

void insertStaff(staff *head){
    staff*p=(staff*)malloc(sizeof(staff));
    scanf("%d%d%d %s",&p->id,&p->age,&p->wages,p->name);
    p->next=NULL;
    staff*q=head;
    while(q->next!=NULL){
        q=q->next;
    }
    q->next=p;
}

void deleteStaff(staff *head,int id){
    staff*curr=head->next,*pre=head;
    while(curr!=NULL&&curr->id!=id){
        curr=curr->next;
        pre=pre->next;
    }
    if(curr!=NULL){
        pre->next=curr->next;
        free(curr);
    }
}

int getTotalStaff(staff *head){
    staff*p=head->next;
    int sum=0;
    while(p!=NULL){
        sum++;
        p=p->next;
    }
    return sum;
}

int getAvgWages(staff *head){
    if(getTotalStaff(head)==0){
        return 0;
    }
    staff*p=head->next;
    int totalwages=0;
    while(p!=NULL){
        totalwages+=p->wages;
        p=p->next;
    }
    return totalwages/getTotalStaff(head);
}

int getMaxAge(staff *head){
    staff*p=head->next,*temp=p;
    if(p==NULL){
        return 0;
    }
    int MaxAge=p->age;
    while(p!=NULL){
        if(p->age>MaxAge){
            temp=p;
            MaxAge=p->age;
        }
        p=p->next;
    }
    return MaxAge;
}

 
 

巩固1

#include<stdio.h>
struct std {
    int a;
    int b;
};
int main()
{
    int n,s,i,j;
    struct std a[105];
    struct std t;
    while ( scanf( "%d %d",&n ,&s)&&!(n==0 && s==0) )
     {
        for ( i=0;i<n;i++ )
         {
            scanf( "%d%d",&a[i].a,&a[i].b );
        }
        for ( i=0;i<n;i++ ) {
            for ( j=0;j<n-i-1;j++ ) {
                if ( a[j].b>a[j+1].b ) {
                    t=a[j];
                    a[j]=a[j+1];
                    a[j+1]=t;
                }
            }
        }
        for ( i=0;i<n;i++ )
         {
            if ( s<a[i].b )  break;
            else s+=a[i].a;
        }
        if (i==n)  printf( "YES\n" );
        else   printf( "NO\n" );
    }
    return 0;
}
 
巩固2

#include<stdio.h>

int main()
{
    int m,n,t=0;;
    scanf("%d%d",&m,&n);
    for(int i=m/5;i>=0;i--)
    {
        for(int j=0;j<=n;j++)
        {
            for(int k=n;k>=0;k--)
            {
                if(i+j+3*k==n && 5*i+3*j+k==m)
                {
                    printf("%d %d %d\n",i,j,3*k);
                    t=1;
                }
            }
        }
    }
    if(t==0) printf("no answer\n");
    return 0;
}
 
巩固3

#include<stdio.h>

int d[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

int isr(int year)
{
    if(year%4==0 &&  year%100!=0 || year%400==0)
    return 1;
    else return 0;

}

int main()
{
    int y,fd,m;
    int c[13];

    scanf("%d %d %d",&y,&fd,&m);
    if(isr(y)==1) d[2]=29;
    c[1]=fd;
    for(int i=2;i<=12;i++)
    {
        c[i]=(c[i-1]+d[i-1])%7;
    }

    int t=0;
    switch(m)
    {
        case 1:printf("January ");break;
        case 2:printf("February ");break;
        case 3:printf("March ");break;
        case 4:printf("April ");break;
        case 5:printf("May ");break;
        case 6:printf("June ");break;
        case 7:printf("July ");break;
        case 8:printf("August ");break;
        case 9:printf("September ");break;
        case 10:printf("October ");break;
        case 11:printf("November ");break;
        case 12:printf("December ");break;
    }
    printf("%d\n",y);
    printf("     Sun     Mon     Tue     Wed     Thu     Fri     Sat\n");
    for(int j=1;j<=c[m];j++)
    {
        printf("        ");t++;
    }
    for(int k=1;k<=d[m];k++)
    {
        printf("%8d",k);
        t++;
        if(t==7)
        {
            printf("\n");
            t=0;
        }
    }
    return 0;
}

推荐这些文章:

java基础总结——java中continue&break&return关键字

 
 
 
 
 
 
continue关键字

 
 
 
 
 
 
 
 
 
 
 
 
break关键字

 
 
 ...

正则表达式(?<=<(\w+)>).*(?=<\/\1>) 分组

问题
正则表达式(?<=<(\w+)>).*(?=<\/\1>)里面\1代表的是 (\w+) 还是 (?<=<(\w+)>)     ?请解释一下,谢谢!

最佳回答
测试了下   是指...

在mybatis中使用sum函数返回对象为Null

首先大家看一下我的XML中的SQL 、DAO  和实体对象
XML

 DAO

 PO

 乍一看 没毛病。
但是在Mybatis中使用sum函数,如果返回值是0(就是你在Navicat中运行的的sql正常,结果都是0),那么其实是不会返回0的,而是返回Null,并且呢 我们在mapper中定义...

循环结构 while do-while for break continue语法

循环固定内容组成:1.声明定义初始化;2.条件判断语句;3.要执行的代码语句;4.自身改变。
循环语句的用法:重复执行固定的代码,直到条件不出来
1.while循环语法
首先要定好初始值
while(条件){
 循环体(要有改变循环条件的语句)
}
if(条件){
   执行代码
}
2.do-while循...

return终止函数

return语句之后的代码不被执行
例:

 
 
return返回值 :
return只能返回一个值。如果用逗号隔开多个值,以最后一个为准。

 
那就让它返回一个数组:
 
 
 
函数没有return返回undefined:
我们的函数如果有return则返回的是retu...

使用类做为Dictionary<T,K>的key需什么要求?

问题
<P>&nbsp;</P>

最佳回答
没有要求

...

写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。

#include<stdio.h>int test(int x){ int i=1; for(i=1;i<x;i++){ if(x%i==0&&x>2) return 0; else return 1; }
}int main(){ ...

shell脚本中的循环(for循环,while循环)及break、continue的用法示例

Shell脚本中也算是一门简易的编程语言了,当然循环是不能缺少的。常用到的循环有for循环和while循环。下面就分别介绍一下两种循环的结构。
【for循环】:
Shell脚本中的for循环示例:

#! /bin/bash
## author:Xiong Xuehao
## Use for in this script.
for i ...

完成一个指针函数,该函数 返回一个 数组的首地址,数组中保存学生成绩, 然后在main函数中调用,打印学生成绩

方法1: 动态内存分配

#include <stdio.h>
#include <stdlib.h>
int *get_score()
{
int i;
int *s = malloc(5 * sizeof(int));
for(i = 0; i < 5; i++)
{
...

BM15 删除有序链表中重复的元素-I

/*
* function ListNode(x){
* this.val = x;
* this.next = null;
* }
*/

/**
*
* @param head ListNode类
* @return ListNode类
*/
function deleteDuplicates...

文章标题:第18周
文章链接:https://www.dianjilingqu.com/3836.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>