牛客网基础语法71~80题😘😘😘
💫前言:今天是咱们第八期刷牛客网上的题目。
💫目标:可以掌握循环嵌套,可以采用一些数组来解决问题,对循环知识掌握熟练,对数学知识掌握更加清晰。
💫鸡汤:你要么努力到极致,要么颓废到死亡。先干为敬,大家随意。
🚩第一题
#include <stdio.h> int main() { //初始三条边 int a = 0; int b = 0; int c = 0; //多组输入 while (scanf("%d %d %d", &a, &b, &c) != EOF) { //判断 if (a + b > c && a + c > b && b + c > a && a != 0 && b != 0 && c != 0) { if (a == b || a == c || b == c) { if (a == b && b == c && a == c) { printf("Equilateral triangle!\n"); } else { printf("Isosceles triangle!\n"); } } else { printf("Ordinary triangle!\n"); } } else { printf("Not a triangle!\n"); } } return 0; }
🚩第二题
💦这里不要忘记,只要在同一年同一月天数只要大于等于就可以
#include <stdio.h> int main() { //初始化 int y = 0, m = 0, d = 0; int y1 = 0, m1 = 0, d1 = 0; //输入 scanf("%d %d %d", &y, &m, &d); scanf("%d %d %d", &y1, &m1, &d1); //判断 if(y == y1 && m == m1 && d <= d1){ printf("yes"); } else if(y1>y){ printf("yes"); } else { printf("no"); } return 0; }
🚩第三题
💦这道题纯纯的数学,简单的很😏😏😏
#include <stdio.h> int main() { //初始化 float a = 0.0f; float b = 0.0f; float c = 0.0f; //多组循环 while((scanf("%f %f %f",&a,&b,&c)) != EOF) { if(a == 0) { printf("Not quadratic equation\n"); } else { //定义△ float deta = b * b - 4 * a * c; if (deta >= 0) { float result1 = (-b + sqrt(deta)) / (2 * a); float result2 = (-b - sqrt(deta)) / (2 * a); if (deta > 0) { printf("x1=%.2f;x2=%.2f\n", result2, result1); } else { if (result1 == 0) { printf("x1=x2=0.00\n"); } else { printf("x1=x2=%.2f\n", result1); } } } else { float shibu = (-b) / (2.0 * a); float xubu = (sqrt(-deta)) / (2.0 * a); if(xubu < 0) { xubu = -xubu; printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n", shibu, xubu, shibu, xubu); } else { printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n", shibu, xubu, shibu, xubu); } } } } return 0; }
🚩第四题
💦这里有月份大的月份和月份小的月份,还要判断二月的情况。
💦1.先判断闰年和平年中的二月。
💦2.再判断月份大的月份和月份小的月份。
#include <stdio.h> int main() { //初始化 int a = 0; int b = 0; int year = 0; //多组输入 while (scanf("%d %d", &a, &b) != EOF) { switch (b) { case 2: //判断闰年和平年中的二月 if ((a % 4 == 0 && a % 100 != 0) || (a % 400 == 0)) { printf("29\n"); } else { printf("28\n"); } break; case 4: case 6: case 9: case 11:printf("30\n"); break; default:printf("31\n"); break; } } return 0; }
🚩第五题
#include <stdio.h> int main() { //初始化 int lang = 0; int math = 0; int eng = 0; //输入 scanf("%d %d %d",&lang,&math,&eng); //判断 int ret = (lang + math + eng) / 3; if(ret >= 60) { printf("NO\n"); } else { printf("YES\n"); } return 0; }
🚩第六题
💦这道题其实只要感受一下就好了。
#include<stdio.h> int main() { //定义字符数组 char arr[13]; int i, j; //输入字符串 scanf("%s", arr); int s = 0; //这里循环 for (i = 0, j = 1; i < 11; i++) { if (arr[i] != '-') { //将字符换成int累加:0×1+6×2+……+2×9=158 s += (arr[i] - '0') * j; j++; } } //最后一位识别码 int m = s % 11; //输出 if (m == arr[12] - '0' || (m == 10 && arr[12] == 'X')) { printf("Right\n"); } else { if (m == 10) { for (i = 0; i < 12; i++) { printf("%c", arr[i]); } printf("X"); } else { for (i = 0; i < 12; i++) { printf("%c", arr[i]); } printf("%d", m); } } }
🚩第七题
#include<stdio.h> int main() { //初始化 double a, b; char ch; //多组输入 while (scanf("%lf %c %lf", &a, &ch, &b) != EOF) { //判断 if (ch == '+' || ch == '-' || ch == '*' || ch == '/') { if (ch == '+') printf("%.4lf%c%.4lf=%.4lf\n", a, ch, b, a + b); else if (ch == '-') printf("%.4lf%c%.4lf=%.4lf\n", a, ch, b, a - b); else if (ch == '*') printf("%.4lf%c%.4lf=%.4lf\n", a, ch, b, a * b); else { if (b == 0.0) printf("Wrong!Division by zero!\n"); else printf("%.4lf%c%.4lf=%.4lf\n", a, ch, b, a / b); } } else printf("Invalid operation!\n"); } return 0; }
🚩第八题
#include <stdio.h> int main() { //初始化 int input = 0; int i = 0; //输入 scanf("%d", &input); //循环打印 for (i = 0; i < input; i++) { printf("Happy new year!Good luck!\n"); } return 0; }
🚩第九题
💦记住可能数字相加可能有点大,所以定义 long long sum = 0;
💦这样用**%lld**打印长长整形
#include <stdio.h> int main() { //初始化 int input = 0; int i = 0; long long sum = 0; //输入 scanf("%d", &input); for (i = 1; i <= input; i++) { sum = sum + i; } //打印 printf("%lld", sum); return 0; }
🚩第十题
#include <stdio.h> int main() { //初始化 int input = 0; int odd_count = 0; int even_count = 0; //输入 scanf("%d",&input); int i = 1; for(i = 1;i <= input;i++) { //统计奇数 if(i % 2 == 0) { even_count++; } //统计偶数 if(i % 2 == 1) { odd_count++; } } //打印 printf("%d %d",odd_count,even_count); return 0; }
🎉结束语
今天的刷题内容就到这里啦,如果上面的题目你有更优的解法,请打在下面的评论区中,独乐乐不如众乐乐。麻烦大家举起自己的小手,给博主三连,有你们的支持就是我最大的动力。预知后事如何,且听下回分解。