ACM题库完整版.ppt

ACM题库完整版

* 二项式系数 1.题目描述 二项式系数C(n, k)因它在组合数学中的重要性而被广泛地研究。二项式系数可以如下递归的定义: C(1, 0) = C(1, 1) = 1; C(n, 0) = 1对于所有n 0; C(n, k) = C(n ? 1, k ? 1) + C(n ? 1, k)对于所有0 k ≤ n。 给出n和k,你要确定C(n, k)的奇偶性。 2.输入 输入包含多组测试数据。每组测试数据一对整数n和k(0 ≤ k ≤ n 231),占据独立一行。 文件结束符(EOF)表示输入结束。 3.输出 对每组测试数据,输出一行,包含一个“0” 或一个“1”,即C(n, k)除以2的余数。 4.样例输入 1 1 1 0 2 1 5.样例输出 1 1 0 构造新的模运算 1.题目描述 给定整数a,b,n,要求计算(a^b)mod n 2.输入 多组数据,每组数据一行,为三个用空格隔开的整数a,b,n 1=a=40,0=b=3,1=n=500 3.输出 每组数据输出一行,为所求值 4.样例输入 2 3 5 2 2 4 5.样例输出 3 0 #includemath.h int main() { int a,b,n; while(scanf(%d%d%d\n,a,b,n)!=EOF) { printf(%d\n,(int)(pow(a,b))%n); } return 0; } 计算绩点 1.题目描述 学校对本科生的成绩施行平均学分绩点制(GPA)。将学生的实际考分根据不同的学科的不同学分按一定的公式进行计算。 曾经使用的规定如下: 实际成绩 绩点 90-100 4.0 85-89 3.7 82-84 3.3 78-81 3.0 75-77 2.7 72-74 2.3 68-71 2.0 64-67 1.5 60-63 1.0 60以下 0 1.一门课程的学分绩点=该课绩点*该课学分 2.总评绩点=所有学科绩点之和/所有课程学分之和 现要求你编写程序求出某人A的总评绩点(GPA)。 2.输入 第一行 总的课程数n(n10); 第二行 相应课程的学分(两个学分间用空格隔开); 第三行 对应课程的实际得分; 此处输入的所有数字均为整数。 3.输出 输出有一行,总评绩点,精确到小数点后2位小数。(printf(%.2f,GPA);) 5.样例输入 5 4 3 4 2 3 91 88 72 69 56 6.样例输出 2.52 #includestdio.h #includemath.h int main() { int n,i; float a[10],c[10],b[10],sum=0,GPA,d; scanf(%d,n); for(i=0;i=n-1;i++) scanf(%f,a[i]); for(i=0;i=n-1;i++) { scanf(%f,b[i]); if(b[i]=90) c[i]=4.0; else if(b[i]=85) c[i]=3.7; else if(b[i]=82) c[i]=3.3; else if(b[i]=78) c[i]=3.0; else if(b[i]=72) c[i]=2.3; else if(b[i]=68) c[i]=2.0; else if(b[i]=64) c[i]=1.5; else if(b[i]=60) c[i]=1.0; else b[i]=0; } for(i=0;i=n-1;i++) sum+=a[i]*c[i]; for(i=0;i=n-1;i++) d+=a[i]; GPA=sum/d; printf(%.2f,GPA); return 0; } 将字符串中的小写字母转换成大写字母 1.题目描述 给定一个字符串,将其中所有的小写字母转换成大写字母 2.输入 一个字符串 3.输出 将输入的字符串中所有小写字母转换成大写字母后的字符串 4.样例输入 helloworld123Ha 5.样例输出 HELLOWORLD123HA #includestdio.h #define N 100 int main() { int i; char c,str[N]; gets(str); i=0; while(str[i]!=\0) { if(str[i]=astr[i]=z) { str[i]=str[i]-32; } i++; } puts(str); return 0; } 日

文档评论(0)

1亿VIP精品文档

相关文档