7-1 查找整数
分数 10
全屏浏览题目
切换布局
作者 杨起帆
单位 浙大城市学院
本题要求从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。
输入格式:
输入在第一行中给出两个正整数N(≤20)和X,第二行给出N个整数。数字均不超过长整型,其间以空格分隔。
输出格式:
在一行中输出X的位置,或者“Not Found”。
输入样例1:
1. 5 7 2. 3 5 7 1 9
输出样例1:
2
输入样例2:
1. 5 7 2. 3 5 8 1 9
输出样例2:
Not Found
1. #include<bits/stdc++.h> 2. using namespace std; 3. int main() 4. { 5. int a[20]; 6. int n,x; 7. cin>>n>>x; 8. for(int i=0;i<n;i++) 9. { 10. cin>>a[i]; 11. if(a[i]==x) 12. { 13. cout<<i; 14. return 0; 15. } 16. } 17. cout<<"Not Found"<<endl; 18. return 0; 19. }
7-2 将数组中的数逆序存放
分数 10
全屏浏览题目
切换布局
作者 C课程组
单位 浙江大学
本题要求编写程序,将给定的n个整数存入数组中,将数组中的这n个数逆序存放,再按顺序输出数组中的元素。
输入格式:
输入在第一行中给出一个正整数n(1≤n≤10)。第二行输入n个整数,用空格分开。
输出格式:
在一行中输出这n个整数的处理结果,相邻数字中间用一个空格分开,行末不得有多余空格。
输入样例:
1. 4 2. 10 8 1 2
输出样例:
2 1 8 10
1. #include<bits/stdc++.h> 2. using namespace std; 3. int main() 4. { 5. int a[10]; 6. int n; 7. cin>>n; 8. for(int i=0;i<n;i++) 9. { 10. cin>>a[i]; 11. } 12. for(int i=n-1;i>=0;i--) 13. { 14. cout<<a[i]; 15. if(i>0) 16. { 17. cout<<" "; 18. } 19. } 20. return 0; 21. }
7-3 交换最小值和最大值
分数 10
全屏浏览题目
切换布局
作者 C课程组
单位 浙江大学
本题要求编写程序,先将输入的一系列整数中的最小值与第一个数交换,然后将最大值与最后一个数交换,最后输出交换后的序列。
注意:题目保证最大和最小值都是唯一的。
输入格式:
输入在第一行中给出一个正整数N(≤10),第二行给出N个整数,数字间以空格分隔。
输出格式:
在一行中顺序输出交换后的序列,每个整数后跟一个空格。
输入样例:
1. 5 2. 8 2 5 1 4
输出样例:
1 2 5 4 8
1. #include<bits/stdc++.h> 2. using namespace std; 3. int main() 4. { 5. int n,only; 6. int a[10]; 7. cin>>n; 8. if(n==1) 9. { 10. cin>>only; 11. cout<<only<<" "; 12. return 0; 13. } 14. int max=0; 15. int min=1; 16. for(int i=0;i<n;i++) 17. { 18. cin>>a[i]; 19. if(a[min]>a[i]) 20. { 21. min=i; 22. } 23. else if(a[max]<a[i]) 24. { 25. max=i; 26. } 27. } 28. if(min==n-1&&max==0) 29. { 30. swap(a[0],a[n-1]); 31. } 32. if(max==0&&min!=n-1) 33. { 34. swap(a[max],a[n-1]); 35. swap(a[min],a[0]); 36. } 37. else if(min==n-1&&max!=0) 38. { 39. swap(a[0],a[n-1]); 40. swap(a[max],a[n-1]); 41. } 42. else 43. { 44. swap(a[max],a[n-1]); 45. swap(a[min],a[0]); 46. } 47. for(int i=0;i<n;i++) 48. { 49. cout<<a[i]; 50. if(i<n) 51. { 52. cout<<" "; 53. } 54. } 55. return 0; 56. }
7-4 输出数组元素
分数 10
全屏浏览题目
切换布局
作者 颜晖
单位 浙江大学
本题要求编写程序,对顺序读入的n个整数,顺次计算后项减前项之差,并按每行三个元素的格式输出结果。
输入格式:
输入的第一行给出正整数n(1<n≤10)。随后一行给出n个整数,其间以空格分隔。
输出格式:
顺次计算后项减前项之差,并按每行三个元素的格式输出结果。数字间空一格,行末不得有多余空格。
输入样例:
1. 10 2. 5 1 7 14 6 36 4 28 50 100
输出样例:
1. -4 6 7 2. -8 30 -32 3. 24 22 50
1. #include<bits/stdc++.h> 2. using namespace std; 3. int main() 4. { 5. int n; 6. int a[20]; 7. cin>>n; 8. for(int i=0;i<n;i++) 9. { 10. cin>>a[i]; 11. } 12. for(int i=1;i<n;i++) 13. { 14. a[i-1]=a[i]-a[i-1]; 15. } 16. for(int i=0;i<n-1;i++) 17. { 18. cout<<a[i]; 19. if((i+1)%3!=0&&i!=n-2) 20. { 21. cout<<" "; 22. } 23. if((i+1)%3==0) 24. { 25. cout<<endl; 26. } 27. } 28. return 0; 29. }
7-5 求整数序列中出现次数最多的数
分数 10
全屏浏览题目
切换布局
作者 张彤彧
单位 浙江大学
本题要求统计一个整型序列中出现次数最多的整数及其出现次数。
输入格式:
输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔。
输出格式:
在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。
输入样例:
10 3 2 -1 5 3 4 3 0 3 2
输出样例:
3 4
1. #include<bits/stdc++.h> 2. using namespace std; 3. int main() 4. { 5. int n,f; 6. int a[1000],time[1000]={0}; 7. int i,j; 8. cin>>n; 9. if(n==1) 10. { 11. cin>>f; 12. cout<<f<<" "<<n; 13. return 0; 14. } 15. for(int i=0;i<n;i++) 16. { 17. cin>>a[i]; 18. } 19. for(int i=1;i<=n;i++) 20. { 21. int number=0; 22. for(int j=0;j<n;j++) 23. { 24. if(a[i]==a[j]) 25. { 26. number++; 27. } 28. } 29. time[i]=number; 30. } 31. int max_time=0; 32. int max_a=0; 33. for(int i=0;i<n;i++) 34. { 35. if(time[max_time]<time[i]) 36. { 37. time[max_time]=time[i]; 38. a[max_a]=a[i]; 39. } 40. } 41. cout<<a[max_a]<<" "<<time[max_time]<<endl; 42. return 0; 43. }