前言:今天是咱们第二期刷牛客网上的题目。
目标:对输入输出的格式,方法,类型掌握熟练,对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; }
今天的刷题内容就到这里啦,如果上面的题目你有更优的解法,请打在下面的评论区中,独乐乐不如众乐乐。