阶段一上机补题报告

 

例一

 

 

 这题我主要忽视了%m.nd的用法,m代表占几个空格,

n代表取多少位小数.若实际位数小于吗,则左边补空格

 

 

正确代码为

#include<stdio.h>
int main()
{
    int a,b,c,d,e,Total;
    scanf("%d",&a);
    scanf("%d",&b);
    scanf("%d",&c);
    scanf("%d",&d);
     scanf("%d",&e);
    Total=a+b+c+d+e;
    printf("Rank      Number\n");
    printf("----------------\n");
           printf("Excellent%7d\n",a);
           printf("Good%12d\n",b);
           printf("Medium%10d\n",c);
           printf("Pass%12d\n",d);
           printf("Fail%12d\n",e);
           printf("----------------\n");
           printf("Total%11d\n",Total);
           return 0;
    
}

例二

 

 做这题时首先想到的是用if-else语句,复杂烦琐,浪费了很多时间。其实最合理的方法是用switch-case语句。

而且我对EOF的用法还不是很熟悉。

正确代码为:

int main()
{
    int year,month,day;
    while(scanf("%d %d",&year,&month)!=EOF){
        switch(month)
        {
            case 1:day=31;break;
            case 2:day=28;break;
            case 3:day=31;break;
            case 4:day=30;break;
            case 5:day=31;break;
            case 6:day=30;break;
            case 7:day=31;break;
            case 8:day=31;break;
            case 9:day=30;break;
            case 10:day=31;break;
            case 11:day=30;break;
            default:day=31;break;
        }
        if(year%4==0&&year%100!=0&&month==2||year%400==0)
            day=day+1;
            printf("%d\n",day);
    }
         
    return 0;
}

  例三

 

 

 这题理应将图形分为上半部分和下半部分,分别对应不同的代码,

我做题时觉得漏斗后面的空格也要输入,把问题想复杂了,同时

对打印图形的题目有点陌生

正确代码为:

 

 

 我的总结完毕

 

 

posted @ 2021-10-24 23:22  软件2111罗良  阅读(30)  评论(0编辑  收藏  举报