我从简单到难,一起走上漫漫刷题路!
我会持续在我的博客中更新我每天刷题的内容!
相互交流!
大家一键三连,多多关注!
这是今天我给大家带来的题!以后难度逐渐加深!
1.猜数字游戏
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<time.h> void game() { int n = rand() % 100 + 1; int input = 0; while (1) { printf("输入你要猜的数字>:"); scanf("%d", &input); if (input > n) { printf("猜大了\n"); } else if (input < n) { printf("猜小了\n"); } else { printf("恭喜你猜对了\n"); break; } } } void menu() { printf("********************************\n"); printf("********** 1.play ************\n"); printf("********** 0.exit ************\n"); printf("********************************\n"); } int main() { int input = 0; srand((unsigned)time(NULL)); do { menu(); printf("请选择>:"); scanf("%d", &input); switch (input) { case 1: game(); break; case 0: break; default: printf("选择错误,请重新输入"); } } while (input); return 0; }
2.小乐乐求和
描述
小乐乐最近接触了求和符号Σ,他想计算
的结果。但是小乐乐很笨,请你帮助他解答。
输入描述:
输入一个正整数n (1 ≤ n ≤ 109)
输出描述:
输出一个值,为求和结果。
#include <stdio.h> int main() { int n=0,m=0; long sum=0; scanf("%d",&n); for(m=1;m<=n;m++) { sum+=m; } printf("%ld",sum); return 0; }
3.小乐乐找最大数
描述
小乐乐获得4个最大数,请帮他编程找到最大的数。
输入描述:
一行,4个整数,用空格分开。
输出描述:
一行,一个整数,为输入的4个整数中最大的整数。
#include <stdio.h> int main() { int a = 0; int b = 0; int c = 0; int d = 0; scanf("%d %d %d %d", &a, &b, &c, &d); int max1 = a > b ? a : b; int max2 = c > d ? c : d; int max = max1 > max2 ? max1 : max2; printf("%d", max); return 0; }
4.判断是不是字母
描述
KiKi想判断输入的字符是不是字母,请帮他编程实现。
输入描述:
多组输入,每一行输入一个字符。
输出描述:
针对每组输入,输出单独占一行,判断输入字符是否为字母,输出内容详见输出样例。
#include <stdio.h> int main() { char ch; while (scanf("%c", &ch) != EOF) { getchar(); if (('a' <= ch && ch <= 'z') || ('A' <= ch && ch <= 'Z')) { printf("%c is an alphabet.\n", ch); } else { printf("%c is not an alphabet.\n", ch); } } return 0; }
5.网购
输入描述:
一行,四个数字,第一个数表示小明看中的衣服价格,第二和第三个整数分别表示当天的月份、当天的日期、第四个整数表示是否有优惠券(有优惠券用1表示,无优惠券用0表示)。 注:输入日期保证只有“双11”和“双12”。
输出描述:
一行,小明实际花的钱数(保留两位小数)。(提示:不要指望商家倒找你钱)
#include <stdio.h> int main() { float price = 0, result = 0; int mouth = 0, day = 0, num = 0; scanf("%f %d %d %d", &price, &mouth, &day, &num); int coupon = (num == 1) ? 50 : 0; if (mouth == 11) { result = price * 0.7 - coupon; } else { result = price * 0.8 - coupon; } printf("%.2f", (result > 0) ? result : 0.00); return 0; }
6.N个数之和
描述
输入数字N,然后输入N个数,计算这N个数的和。
输入描述:
第一行输入一个整数N(0≤N≤50),第二行输入用空格分隔的N个整数。
输出描述:
输出为一行,为第二行输入的“N个整数之和”的计算结果。
#include <stdio.h> #include <stdlib.h> int main() { int n; scanf("%d",&n); getchar(); int* a=malloc(sizeof(int)*n); for(int i=0;i<n;i++) { scanf("%d ",&a[i]); } int ret=0; for(int i=0;i<n;i++) { ret+=a[i]; } printf("%d",ret); free(a); return 0; }
7.最高分与最低分之差
描述
输入n个成绩,换行输出n个成绩中最高分数和最低分数的差。
输入描述:
两行,第一行为n,表示n个成绩,不会大于10000。
第二行为n个成绩(整数表示,范围0~100),以空格隔开。
输出描述:
一行,输出n个成绩中最高分数和最低分数的差。
#include <stdio.h> int main() { int n = 0; int min, max; scanf("%d", &n); int arr[n]; for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } min = max = arr[0]; for (int i = 0; i < n; i++) { if (arr[i] < min) min = arr[i]; if (arr[i] > max) max = arr[i]; } printf("%d\n", max - min); return 0; }
8.有序序列判断
描述
输入一个整数序列,判断是否是有序序列,有序,指序列中的整数从小到大排序或者从大到小排序(相同元素也视为有序)。
数据范围: 3≤n≤50 序列中的值都满足 1≤val≤100
输入描述:
第一行输入一个整数N(3≤N≤50)。
第二行输入N个整数,用空格分隔N个整数。
输出描述:
输出为一行,如果序列有序输出sorted,否则输出unsorted。
#include <stdio.h> int main() { int n = 0; scanf("%d", &n); int arr[n]; for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } int min, max; min = max = arr[0]; for (int i = 0; i < n; i++) { if (arr[i] < min) min = arr[i]; if (arr[i] > max) max = arr[i]; } if (min == arr[0] && max == arr[n - 1] || min == arr[n - 1] && max == arr[0]) { printf("sorted\n"); } else { printf("unsorted\n"); } return 0; }