牛客网基础语法11~20题

前言:今天是咱们第二期刷牛客网上的题目。
目标:对输入输出的格式,方法,类型掌握熟练,对double,float理解深入,编程思想更进一步。
鸡汤:人活着,再苦再累,都别抱怨,要努力,越努力,才会越幸运。抱怨,只会增加怨气,努力,才能改变气运。先干为敬,大家随意。

##第一题
在这里插入图片描述

#include <stdio.h>
int main()
{
    
    
    //初始化
    int score1 = 0;
    int score2 = 0;
    int score3 = 0;
    //输入
    scanf("%d %d %d",&score1,&score2,&score3);
    //输出
    printf("score1=%d,score2=%d,score3=%d\n",score1,score2,score3);
    return 0;
}

##第二题
在这里插入图片描述

1.如果使用double不会四舍五入,需要用float,初始化时需要0.0,来区别double
2.输入时,空不能多,符号不要用错
3.输出是,空不能少,符号不要用错

#include <stdio.h>
int main() 
{
    
    
    //初始化
    int num = 0;//学号
    float C = 0.0;//C语言成绩
    float math = 0.0;//数学成绩
    float eng = 0.0;//英语成绩
    //输入
    scanf("%d;%f,%f,%f",&num,&C,&math,&eng);
    //输出
    printf("The each subject score of No. %d is %.2f, %.2f, %.2f.\n",num,C,math,eng);
    return 0;
}

##第三题
在这里插入图片描述

1.输入时没有空格,需要用%4d
2.输入时需要补零

#include <stdio.h>
int main() 
{
    
    
    //初始化
    int year = 0;
    int month = 0;
    int day = 0;
    //输入
    scanf("%4d%2d%2d",&year,&month,&day);
    //输出
    printf("year=%d\nmonth=%02d\ndate=%02d\n",year,month,day);
    return 0;
}

##第四题
在这里插入图片描述

C语言的初阶中https://blog.csdn.net/AAlykk/article/details/130657060有道金典的笔试题,不创建变量交换数值,有兴趣的小伙伴可以去看看
在这里插入图片描述

#include <stdio.h>
int main() 
{
    
    
    //初始化
    int a = 0;
    int b = 0;
    int tmp = 0;
    scanf("a=%d,b=%d",&a,&b);
    //交换
    tmp = a;
    a = b;
    b = tmp;
    printf("a=%d,b=%d\n",a,b);
    return 0;
}

##第五题
在这里插入图片描述

1.EOF意为-1。本语句即只要输入项是字符即可打印
2.因为回车也算一个字符,所以在输入第一个字符换行后,getchar会读取换行的回车键
3.换行的回车被读取,若防止回车被读取,可在其前面多读取一次消耗回车
4.大写的A的ASCLL值为65,小写的a的ASCLL值为97

#include <stdio.h>
int main() 
{
    
    
    //定义变量
    char ch;
    //实现多组输入
    while ((ch = getchar()) != EOF)//EOF意为-1。本语句即只要输入项是字符即可打印
    {
    
    
        //因为回车也算一个字符,所以在输入第一个字符换行后,getchar会读取换行的回车键
        //换行的回车被读取,若防止回车被读取,可在其前面多读取一次消耗回车
        getchar();
        putchar(ch + 32);
        printf("\n");
    }
    return 0;
}

##第六题
在这里插入图片描述

1.十六进制是0x开头
2.%15d是所占宽域为15

#include <stdio.h>
int main() 
{
    
    
    //初始化
    int a=0XABCDEF;
    //输出
    printf("%15d",a); 
    return 0;
}

##第七题
在这里插入图片描述

1.%o是八进制输出
2.%x是十六进制输出

#include <stdio.h>
int main()
{
    
    
    //初始化
    int a=1234;
    //输出
    printf("%#o %#X",a,a);
    return 0;
}

##第八题
在这里插入图片描述

#include <stdio.h>
int main() 
{
    
    
    //初始化
    char ch;
    int a = 0;
    double b = 0;
    //输入
    scanf("%c\n%d\n%lf",&ch,&a,&b);
    //输出
    printf("%c %d %lf\n",ch,a,b);
    return 0;
}

##第九题
在这里插入图片描述

#include <stdio.h>
int main() 
{
    
    
    //初始化
    int a = 0;
    int b = 0;
    int c = 0;
    //输入
    scanf("%d %d %d",&a,&b,&c);
    printf("%d%8d%8d\n",a,b,c);
    return 0;
}

##第十题
在这里插入图片描述

#include <stdio.h>
int main() 
{
    
    
    //初始化
    int a,b,result;
    //输入
    scanf("%x %o",&a,&b);
    //相加
    result=a+b;
    //输出
    printf("%d",result);
    return 0;
}

今天的刷题内容就到这里啦,如果上面的题目你有更优的解法,请打在下面的评论区中,独乐乐不如众乐乐。麻烦大家举起自己的小手,给博主三连,有你们的支持就是我最大的动力。预知后事如何,且听下回分解。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/AAlykk/article/details/130941885
今日推荐