温故而知新,最近几天从新回顾下这个月刷过的 c 语言题目
1. 三个数由小到大排序
输出任意 3 个整数,编程实现对这 3 个整数进行由小到大排序井将排序后的结果显示在屏幕上
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a, b, c, t;
printf("请任意输出三个数(空格分隔):\n");
scanf("%d %d %d", &a, &b, &c);
if (a < b)
{ t = a;
a = b;
b = t;
}
else if (a < c)
{ t = a;
a = c;
c = t;
}
else if (b < c)
{ t = b;
b = c;
c = t;
}
printf("从大到小排列为:%d %d %d\n", a, b, c);
system("pause");
return 0;
}
2. a²+b²
要求输出整数 a 和 b, 若 a²+b²的后果大与 100, 则输入 a²+b²的值,否则输入 a+b 的后果
#include <stdio.h>
void main()
{
int a,b;
printf("请输出两个整数:\n");
scanf("%d,%d,",&a,&b);
if(a*a+b*b>100)
{printf("(a*a+b*b)/100=%d",(a*a+b*b)/100);
}
else
{printf("a+b=%d",a+b);
}
return 0;
}
3. 判断平年
判断任意年份是否为平年,须要满足以下条件中的任意一个:
该年份能被 4 整除同时不能被 100 整除;
该年份能被 400 整除
#include <stdio.h>
int main()
{
int year,a;
printf("请输人年份:\n");
scanf("%d",&year);
if(year%400==0)
a=1;
else
{if(year%4==0&&year%100!=0)
a=1;
else
a=0;
}
if(a==1)
{printf("%d 此年是平年 \n",year);
}
else
{printf("%d 此年非平年 \n",year);
}
return 0;
}
4. 编程判断输出的数是否既是 5 又是 7 的整倍数,如果是输入 yes, 否则输入 no
int main(){
int n;
scanf("%d",&n);
if(n%5==0&&n%7==0)
{printf("yes");
}
else{printf("no");
}
printf("\n");
return 0;
}
- 成绩排名,编程对输出的分数给出相应的等级,分数大于等于 90 为 ”A”,80-89 为 ”B”,70-79 为 ”C”,60-69 为 ”D”,60 分以下为 ”E”。
#include<stdio.h>
int main()
{
int a;
printf("请输出问题:");
scanf("%d",&a);
if(a>=90&&a<=100)
printf("等级是 A\n");
else if(a>=80&&a<=89)
printf("等级是 B\n");
else if(a>=70&&a<=79)
printf("等级是 C\n");
else if(a>=60&&a<=69)
printf("等级是 D\n");
else if(a>=0&&a<=59)
printf("等级是 E\n");
else if(a<0)
printf("输出谬误,请输出 1~100 的成¦绩");
getchar();
return 0;
}
5. 成绩排名,编程对输出的分数给出相应的等级,分数大于等于 90 为 ”A”,80-89 为 ”B”,70-79 为 ”C”,60-69 为 ”D”,60 分以下为 ”E”。
#include<stdio.h>
int main()
{
int a;
printf("请输出问题:");
scanf("%d",&a);
if(a>=90&&a<=100)
printf("等级是 A\n");
else if(a>=80&&a<=89)
printf("等级是 B\n");
else if(a>=70&&a<=79)
printf("等级是 C\n");
else if(a>=60&&a<=69)
printf("等级是 D\n");
else if(a>=0&&a<=59)
printf("等级是 E\n");
else if(a<0)
printf("输出谬误,请输出 1~100 的成¦绩");
getchar();
return 0;
}
6. 打印乘法口诀表
#include<stdio.h>
int main(){
// 外层循环变量, 管制行
int i = 0;
// 内层循环变量, 管制列
int j = 0;
for(i=1;i<=9;i++){for(j=1;j<=i;j++){printf("%dx%d=%d\t",j,i,i*j);
}
// 每行输入完后换行
printf("\n");
}
}
7. 打印三角形
#include <stdio.h>
int main() {
int i, j;
int line;
printf("请输出行数:");
scanf("%d", &line);
for (i = 0; i <= line; i++) {for (j = line - i + 1; j <= line; j++) {printf("*");
}
printf("\n");
}
return 0;
}
8. 序列求和
用 while 循环做一个简略的计算 s =1 + 1/2+ 1/3+ … + 1/n。
#include <stdio.h>
int main()
{
int i=1;
double sum=0;
while(i<=100){
sum += 1.0/i;
i++;
}
printf("sum=%0.2lf",sum);
return;
}
9. 整数加减法练习
练习者本人抉择是进行加法还是减法运算,之后输出进行多少以内的加法或减法运算,具体数值会由计算机随机产生,输出答案,计算机会依据输人的数据判断后果是否正确
#include<stdio.h>
#include<stdlib.h> //srand()
#include<time.h> //time()
int main()
{
int sign,a,b,c;
char sign1;
int max; // 最大范畴
scanf("%d", &sign);
scanf("%d", &max);
srand((unsigned long)time(0));
a = rand() % max;
b = rand() % max;
while (sign==1&&a<b) // 如果为减,a 又比 b 小从新生成随机数
{a = rand() % max;
b = rand() % max;}
sign1 = (sign == 1 ?'-':'+');
printf("%d%c%d=", a, sign1, b);
scanf("%d", &c);
if ((sign == 1) && (a - b == c) || (sign != 1) && (a + b == c))
printf("right");
else
printf("error");
return 0;
}
(继续更新,未完待续)