1-1 hello,world
任务描述:
编写程序输出一行文字:hello,world。 注释:“hello,world”程序是指在计算机屏幕上输出“hello,world”这行字符串的计算机程序。这个例程因在Brian Kernighan和Dennis M. Ritchie合著的《The C Programme Language》一书中使用而广泛流行。
输入格式:
此程序无需输入
输出格式:
输出一行文本:hello,world
输入样例:
输出样例:
hello,world
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { printf("hello,world\n"); return 0; }
1-2 逆序的三位数
任务描述:
程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。
输入格式:
每个测试是一个3位的正整数。
输出格式:
输出按位逆序的数。
输入样例:
123
输出样例:
321
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { int a,b,c,d; scanf("%d",&a); b=a%10; c=a/10%10; d=a/100; printf("%d",b*100+c*10+d); return 0; }
1-3 分苹果
任务描述:
一袋苹果有n个,每个孩子子可以分4个苹果,请问可以分给几个孩子,还剩几个苹果?
输入格式:
输入一个正整数表示苹果个数。
输出格式:
输出可以得到苹果的孩子人数和剩余苹果个数,两个数据之间用逗号分隔。
输入样例:
101
输出样例:
25,1
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { int a,b,c; scanf("%d",&a); b=a/4; c=a%4; printf("%d,%d",b,c); return 0; }
1-4 计算两个整数之和
任务描述:
要求输入2个整数A和B,然后输出它们的和。
输入格式:
输入在一行中给出整数A和B。
输出格式:
输出A+B的值。
输入样例:
在这里给出一组输入。例如:
3 5
输出样例:
在这里给出相应的输出。例如:
8
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { int a,b; scanf("%d %d",&a,&b); printf("%d",a+b); return 0; }
1-5 求整数均值
任务描述:
本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。
输入格式:
输入在一行中给出4个整数,其间以空格分隔。
输出格式:
在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位。
输入样例:
在这里给出一组输入。例如:
1 2 3 4
输出样例:
在这里给出相应的输出。例如:
Sum = 10; Average = 2.5
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { int a,b,c,d,Sum; double Average; scanf("%d %d %d %d",&a,&b,&c,&d); Sum=a+b+c+d; Average=Sum*1.0/4; printf("Sum = %d; Average = %.1f",Sum,Average); return 0; }
1-6 两个整数最大值
任务描述:
求两个整数a,b的最大值,结果存入max中。
输入格式:
在一行中输入两个整数,之间用一个空格间隔,没有其它任何附加字符。
输出格式:
在一行中按照“max=结果”的顺序输出,结果原样输出,没有其它附加格式。
输入样例:
在这里给出一组输入。例如:
3 5
输出样例:
在这里给出相应的输出。例如:
max=5
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { int a,b,max; scanf("%d %d",&a,&b); if(a>b) max=a; else max=b; printf("max=%d",max); return 0; }
1-7 三个数由小到大输出
任务描述:
输入三个整数x,y,z,请把这三个数由小到大输出。
输入格式:
在一行中直接输入3个整数,之间各用一个空格间隔。
输出格式:
在一行中按照“x=最小值,y=次小值, z=最大值”的顺序输出结果,最大值、次大值和最小值均原样输出,没有宽度控制。
输入样例:
在这里给出一组输入。例如:
2 1 3
输出样例:
在这里给出相应的输出。例如:
x=1,y=2,z=3
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { int a,b,c,d; scanf("%d %d %d",&a,&b,&c); if(a>b) { d=a; a=b; b=d; } if(a>c) { d=a; a=c; c=d; } if(b>c) { d=b; b=c; c=d; } printf("x=%d,y=%d,z=%d",a,b,c); return 0; }
1-8 求该月天数
任务描述:
求一个月有多少天,用switch完成。
输入格式:
输入两个整数,如2021 9
,第一个表示年,第二个表示月,输出该月的天数。需要考虑闰年。如果月份错误,输出ERROR。
输出格式:
31
输入样例:
在这里给出一组输入。例如:
2021 9
输出样例:
在这里给出相应的输出。例如:
30
相关限制:
代码长度限制16KB 时间限制400ms 内存限制64MB 栈限制8192KB
答案:
#include <stdio.h> int main() { int a,b; scanf("%d %d",&a,&b); switch(b) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: printf("31\n"); break; case 4: case 6: case 9: case 11: printf("30\n"); break; case 2: if((a%4==0&&a%100!=0)||(a%400==0)) printf("29\n"); else printf("28\n"); break; default : printf("ERROR\n"); } return 0; }