6-1 求解一元二次方程
分数 5
全屏浏览题目
切换布局
作者 王和兴
单位 东北大学秦皇岛分校
求解一元二次方程,如果有实根则在函数中输出计算结果,否则在函数中输出Wrong!。
函数接口定义:
void solve(double a, double b, double c);
其中a,b,c分别是一元二次方程的系数。
裁判测试程序样例:
#include <iostream> #include <cmath> using namespace std; void solve(double a, double b, double c); int main() { double a,b,c; cin>>a>>b>>c; solve(a,b,c); return 0; } /* 请在这里填写答案 */
输入样例1:
在这里给出一组输入。例如:
1 2 1
输出样例1:
在这里给出相应的输出。例如:
x1=-1,x2=-1
输入样例2:
在这里给出一组输入。例如:
1 1 1
输出样例2:
在这里给出相应的输出。例如:
Wrong!
1. void solve(double a, double b, double c) 2. { 3. double t=b*b-4*a*c; 4. if(t>=0) 5. { 6. cout<<"x1="<<(-b-sqrt(t))/(2*a)<<",x2="<<(-b+sqrt(t))/(2*a); 7. } 8. else 9. { 10. cout<<"Wrong!"<<endl; 11. } 12. }
6-2 编写一个素数判定函数,如果是素数则输出true,否则输出false。
分数 5
全屏浏览题目
切换布局
作者 王和兴
单位 东北大学秦皇岛分校
编写一个素数判定函数,如果是素数则输出true,否则输出false。
函数接口定义:
bool prime(int x);
其中x是待判定整数。
裁判测试程序样例:
#include <iostream> #include <cmath> using namespace std; bool prime(int x); int main() { int n; cin>>n; if(prime(n)) cout<<n<<" is a prime."<<endl; else cout<<n<<" is not a prime."<<endl; return 0; } /* 请在这里填写答案 */
输入样例:
在这里给出一组输入。例如:
5
输出样例:
在这里给出相应的输出。例如:
5 is a prime.
1. bool prime(int x) 2. { 3. if(x==1) 4. { 5. return 0; 6. } 7. for(int i=2;i*i<=x;i++) 8. { 9. if(x%i==0) 10. { 11. return 0; 12. } 13. } 14. return 1; 15. }
7-1 判断给定的方阵是否上三角矩阵。
分数 10
全屏浏览题目
切换布局
作者 王和兴
单位 东北大学秦皇岛分校
题目描述:
判断给定的方阵是否上三角矩阵。
输入:
输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。
输出:
每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出“YES”,否则输出“NO”
输入样例:
1. 2 2. 3 3. 1 2 3 4. 0 4 5 5. 0 0 6 6. 2 7. 1 0 8. -8 2
输出样例:
YES
1. #include<bits/stdc++.h> 2. using namespace std; 3. bool check(int a[10][10],int n) 4. { 5. int flag=1; 6. for(int i=1;i<n;i++) 7. { 8. for(int j=0;j<i;j++) 9. { 10. if(a[i][j]!=0) 11. { 12. flag=0; 13. break; 14. } 15. } 16. } 17. if(flag==1) 18. { 19. return 1; 20. } 21. else 22. { 23. return 0; 24. } 25. } 26. int main() 27. { 28. int n; 29. cin>>n; 30. int num[n]; 31. for(int i=0;i<n;i++) 32. { 33. cin>>num[i]; 34. int t=num[i]; 35. int temp[10][10]; 36. for(int i=0;i<t;i++) 37. { 38. for(int j=0;j<t;j++) 39. { 40. cin>>temp[i][j]; 41. } 42. } 43. if(check(temp,t)) 44. { 45. cout<<"YES"<<endl; 46. } 47. else 48. { 49. cout<<"NO"<<endl; 50. } 51. } 52. return 0; 53. }
7-2 分段函数求值
分数 10
全屏浏览题目
切换布局
作者 王和兴
单位 东北大学秦皇岛分校
按照要求计算下列分段函数f(x)
的值
f(x)={4x+1x−6x≥2x<2
输入:
在一行中给出实数x。
输出:
在一行中按“f=result”的格式输出计算结果,要求保留两位小数位数。结尾有换行。
输入样例:
2.5
输出样例:
f=11.00
1. #include<bits/stdc++.h> 2. using namespace std; 3. int main() 4. { 5. double x; 6. cin>>x; 7. if(x>=2) 8. { 9. cout<<"f="<<fixed<<setprecision(2)<<4*x+1; 10. } 11. else 12. { 13. cout<<"f="<<fixed<<setprecision(2)<<x-6; 14. } 15. return 0; 16. }
7-3 学生信息处理
分数 10
全屏浏览题目
切换布局
作者 王和兴
单位 东北大学秦皇岛分校
题目描述:
给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和3门课程的成绩([0,100]区间内的整数),要求输出总分最高学生的姓名、学号和总分。
输入:
输入在一行中给出正整数N(≤10)。随后N行,每行给出一位学生的信息,格式为“学号 姓名 成绩1 成绩2 成绩3”,中间以空格分隔。
输出:
在一行中输出总分最高学生的姓名、学号和总分,间隔一个空格。题目保证这样的学生是唯一的。
输入样例:
1. 5 2. 00001 huanglan 78 83 75 3. 00002 wanghai 76 80 77 4. 00003 shenqiang 87 83 76 5. 10001 zhangfeng 92 88 78 6. 21987 zhangmeng 80 82 75
输出样例:
zhangfeng 10001 258
1. #include<bits/stdc++.h> 2. using namespace std; 3. struct student 4. { 5. string num; 6. string name; 7. int score[3]; 8. int sum=0; 9. }; 10. int main() 11. { 12. int n; 13. cin>>n; 14. student s[n]; 15. for(int i=0;i<n;i++) 16. { 17. cin>>s[i].num>>s[i].name; 18. for(int j=0;j<3;j++) 19. { 20. cin>>s[i].score[j]; 21. s[i].sum+=s[i].score[j]; 22. } 23. } 24. int max=0; 25. for(int i=0;i<n;i++) 26. { 27. if(s[max].sum<s[i].sum) 28. { 29. max=i; 30. } 31. } 32. cout<<s[max].name<<" "<<s[max].num<<" "<<s[max].sum; 33. return 0; 34. }