程序设计实训总结 |
您所在的位置:网站首页 › vb程序实训总结 › 程序设计实训总结 |
在线自动判题系统练习题集 在线自动判题系统网址http://acmoj.shu.edu.cn。用学号登录(初始密码同学号),进入“比赛”,第254号比赛。其中第01-05题为例题,第06-10题为练习题。所有10道题目都必须提交,其提交情况也作为本练习排名的依据,亦即作为本课程成绩的依据之一。 00 计算两个整数的和问题描述 给定两个整数,计算它们的和。 输入 输入数据有若干行。每行上有两个整数,对应一种情形。 输出 对于每一种情形,先输出“Case #: ”(#为序号,从1起),然后输出算式和结果。 输入样例 98 72 -40 88 -62 -95 输出样例 Case 1: 98 + 72 = 170 Case 2: -40 + 88 = 48 Case 3: -62 - 95 = -157 01 阶乘尾部0的个数问题描述 给定非负整数n,计算n的阶乘尾部0的个数。 输入 输入数据有若干行。每行上有一个正整数n,对应一种情形。 输出 对于每一种情形,先输出“Case #: ”(#为序号,从1起),然后输出n的值,逗号,结果,换行。 输入样例 8 16 30 输出样例 Case 1: 8, 1 Case 2: 16, 3 Case 3: 30, 7 #include int main() { long long int n; long long int i = 0; while (scanf("%d",&n) == 1 ) { long long int count = 0; long long int num = n; while(n>=5) { count += n/5; n /= 5; } printf("Case %d: %d, %d\n",++i,num,count); } return 0; } 02 判断算式的正确性问题描述 给定一个算式,该算式中只含一个四则运算符号,操作数及结果均为整数。要求判断该算式的正确性(规定:除法必须除尽才算正确)。 输入 输入数据有若干行。每行上有一个算式,对应一种情形。 输出 对于每一种情形,先输出“Case #: ”(#为序号,从1起),然后输出结果(Yes或No),换行。 输入样例 1 + 2 = -3 5 / 2 = 2 4 / 2 = 2 输出样例 Case 1: No Case 2: No Case 3: Yes #include #include int main() { int a[3]; char c[2]; int i = 0; char m; while (scanf("%d %c %d %c %d", &a[0], &c[0], &a[1], &c[1], &a[2]) == 5) { if (c[0] == '+') { if (a[0] + a[1] == a[2]) printf("Case %d: Yes\n", ++i); else printf("Case %d: No\n", ++i); } else if (c[0] == '*') { if (a[0] * a[1] == a[2]) printf("Case %d: Yes\n", ++i); else printf("Case %d: No\n", ++i); } else if (c[0] == '/') { if (a[1] != 0) { if ((float)a[0] / (float)a[1] == (float)a[2]) printf("Case %d: Yes\n", ++i); else printf("Case %d: No\n", ++i); } else printf("Case %d: No\n", ++i); } else if (c[0] == '-') { if (a[0] - a[1] == a[2]) printf("Case %d: Yes\n", ++i); else printf("Case %d: No\n", ++i); } } return 0; } 03 求给定的n个实数中的最大值问题描述 给定正整数n及n个实数,找出其中的最大值。 输入 输入数据有若干行。每行上第一个数为正整数n,紧接其后有n个实数,对应一种情形,数据之间用空格分隔。 输出 对于每一种情形,先输出“Case #: ”(#为序号,从1起,冒号后输出一个空格),然后输出计算结果(保留1位小数),最后换行。 输入样例 3 1.0 3.0 2.0 5 10.0 8.5 15.3 7.8 5.8 1 3.3 输出样例 Case 1: 3.0 Case 2: 15.3 Case 3: 3.3 #include #include using namespace std; int main() { int n; float a[1000]; for(int num = 1;n != '\n';num++) { cin >> n; for (int i = 0; i < n; i++) cin >> a[i]; float maximum = a[0]; for (int j = 0; j < n; j++) { if (a[j] > maximum) maximum = a[j]; } cout |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |