c语言基础编程入门练习题
[编程入门]成绩评定
题目描述
给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。
输入格式
一个整数0-100以内
输出格式
一个字符,表示成绩等级
样例输入
90
样例输出
A
参考代码
#include <stdio.h>
int main() {int a;scanf_s("%d", &a);if (a > 89) printf("A");else if (a > 79) printf("B");else if (a > 69) printf("C");else printf("D");return 0;
}
[编程入门]分段函数求值
题目描述
有一个函数
y={ x x<1| 2x-1 1<=x<10{ 3x-11 x>=10
写一段程序,输入x,输出y
输入格式
一个数x
输出格式
一个数y
样例输入
14
样例输出
31
参考代码
#include <stdio.h>int main(){int x, y;scanf("%d", &x);if (x < 1) y = x;else if ( x < 10) y = 2 * x - 1;else y = 3 * x - 11;printf("%d", y);return 0;
}
[编程入门]利润计算
题目描述
企业发放的奖金根据利润I提成。
利润I低于或等于100000元的,奖金可提10%;
利润高于100000元,低于或等于200000元(100000<I≤200000)时,低于等于100000元部分按10%提成,高于100000元的部分,可提成 7.5%;
200000<I≤400000时,低于200000元部分仍按上述办法提成(下同),高于200000元的部分按5%提成;
400000<I≤600000元时,高于400000元的部分按3%提成;
600000<I≤1000000时,高于600000元的部分按1.5%提成;
I>1000000时,超过1000000元的部分按1%提成。
从键盘输入当月利润I,求应发奖金总数。
输入格式
一个整数,当月利润。
输出格式
一个整数,奖金。
样例输入
900
样例输出
90
参考代码
#include <stdio.h>
int main() {double w,n; //定义利润w和奖金ndouble a = 100000 * 0.1,b,c,d,e;//低于100000的b = a + 100000 * 0.075;//低于200000的c = b + 200000 * 0.05;//低于400000的d = c + 200000 * 0.03;//低于600000的e = d + 4000000 * 0.015;//低于1000000的scanf("%lf", &w);if (w <= 100000) n = w * 0.1;else if (w < 200000) {n = a + (w - 100000) * 0.075;}else if (w < 400000) {n = b + (w - 200000) * 0.05;}else if (w < 600000) {n = c + (w - 400000) * 0.03;}else if (w < 1000000) {n = d + (w - 600000) * 0.015;}else {n = e + (w - 1000000) * 0.01;}printf("%.2f\n", n);//int m = (int)n;//强制转换//printf("%d", m);return 0;
}
[编程入门]密码破译
题目描述
要将"China"译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母.
例如,字母"A"后面第4个字母是"E".“E"代替"A”。因此,“China"应译为"Glmre”。
请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为,’C’、’h’、’i’、’n’、’a’,经过运算,使c1、c2、c3、c4、c5分别变为’G’、’l’、’m’、’r’、’e’,并输出。
输入格式
China
输出格式
加密后的China
样例输入
China
样例输出
Glmre
参考代码
#include <stdio.h>int main(){char a, b, c, d, e;scanf("%c%c%c%c%c", &a, &b, &c, &d, &e);printf("%c%c%c%c%c", a + 4, b + 4, c + 4, d + 4, e + 4);return 0;
}
[编程入门]三个数最大值
题目描述
编写一个程序,输入a、b、c三个值,输出其中最大值。
输入格式
一行数组,分别为a b c
输出格式
a b c其中最大的数
样例输入
10 20 30
样例输出
30
参考代码
#include <stdio.h>int main(){int a, b, c, max;scanf("%d %d %d", &a, &b, &c);max = a > b ? (a > c ? a : c) : (b > c ? b : c);//[三元运算符]a > b ? ... : ...这个部分首先比较 a 和 b 的大小。如果 a 大于 b,//则执行问号后面的第一个表达式;否则,执行冒号后面的第二个表达式。printf("%d", max);return 0;
}