赞
踩
见前两篇博客
参考题解:
- #include <stdio.h>
- int main(){
- //问题 0: 平面分割
- int m,n,p;scanf("%d",&m);
- while(m--){
- scanf("%d %d",&n,&p);
- int ans = 2*p;
- for(int i = p+1;i<=n;i++) ans+=i;
- printf("%d\n",ans);
- }
- return 0;
- }
参考题解:
- #include <stdio.h>
- #include <string.h>
- char s[1005];
- int main(){
- //问题 1: 数字反转
- scanf("%s",&s[0]);
- int type = 0;
- if(s[0]=='-'){
- printf("-");
- for(int i = strlen(s)-1;i>=1;i--){
- if(!type&&s[i]=='0') continue;
- else{
- type = 1;
- printf("%c",s[i]);
- }
- }
- }else{
- for(int i = strlen(s)-1;i>=0;i--){
- if(!type&&s[i]=='0') continue;
- else{
- type = 1;
- printf("%c",s[i]);
- }
- }
- }
- return 0;
- }
参考题解1:
- #include <stdio.h>
- int main(){
- //问题 2: 最大公约数和最小公倍数
- int m,n;scanf("%d %d",&m,&n);
- int temp;
- if(m<n){
- temp = m;
- m = n;
- n = temp;
- }
- int tempm = m,tempn = n;
- while(tempm%tempn!=0){
- temp = tempm;
- tempm = tempn;
- tempn = temp%tempn;
- }
- printf("%d %d",tempn,(m/tempn)*(n/tempn)*tempn);
- return 0;
- }
参考题解2:
- #include <bits/stdc++.h>
- using namespace std;
- int main(){
- //问题 2: 最大公约数和最小公倍数
- int m,n;cin >> m >> n;
- cout << __gcd(m,n) << ' ' << (m/__gcd(m,n))*(n/__gcd(m,n))*__gcd(m,n);
- return 0;
- }
参考题解:
- #include <stdio.h>
- int main(){
- //问题 3: 数字统计
- int l,r;scanf("%d %d",&l,&r);
- int ans = 0,temp;
- for(int i = l;i<=r;i++){
- temp = i;
- while(temp!=0){
- if(temp%10==2) ans++;
- temp/=10;
- }
- }
- printf("%d",ans);
- return 0;
- }
参考题解:
- #include <stdio.h>
- int main(){
- //问题 4: 分数序列求和
- double a = 2,b = 1,ans = 0,temp;
- int n;scanf("%d",&n);
- for(int i = 1;i<=n;i++){
- ans+=a/b;
- temp=a;
- a+=b;
- b=temp;
- }
- printf("%.2lf",ans);
- return 0;
- }
参考题解:
- #include <stdio.h>
- int main(){
- //问题 5: 增增减减
- int a,b;scanf("%d %d",&a,&b);
- printf("%d",(a-1)*(b+1));
- return 0;
- }
参考题解:
- #include <stdio.h>
- int main(){
- //问题 6: 提现手续费
- int n;scanf("%d",&n);
- if(n<=100) printf("0.10");
- else printf("%.2lf",0.001*n);
- return 0;
- }
参考题解:
- #include <stdio.h>
- int main(){
- //问题 7: 平均数
- int n,temp;double ans;
- while(~scanf("%d",&n)){
- ans = 0;
- for(int i = 1;i<=n;i++){
- scanf("%d",&temp);
- ans+=temp;
- }
- printf("%.3lf\n",ans/n);
- }
- return 0;
- }
参考题解:
- #include <stdio.h>
- int a[11];
- int main(){
- //问题 8: 逆序输出
- for(int i = 1;i<=10;i++) scanf("%d",&a[i]);
- for(int i = 10;i>=1;i--){
- if(i==10) printf("%d",a[i]);
- else printf(" %d",a[i]);
- }
- return 0;
- }
参考题解:
- #include <stdio.h>
- int a[105];
- int main(){
- //问题 9: 数组逆序重存放
- int n;scanf("%d",&n);
- for(int i = 1;i<=n;i++) scanf("%d",&a[i]);
- for(int i = n;i>=1;i--){
- if(i==n) printf("%d",a[i]);
- else printf(" %d",a[i]);
- }
- return 0;
- }
参考题解:
- #include <stdio.h>
- int a[11];
- int main(){
- //问题 : 插队
- for(int i = 1;i<=9;i++) scanf("%d",&a[i]);
- int temp;scanf("%d",&temp);
- int idx;
- for(int i = 1;i<=9;i++) if(a[i]>=temp){idx=i;break;}
- for(int i = 10;i>=idx+1;i--) a[i] = a[i-1];
- a[idx] = temp;
- for(int i = 1;i<=10;i++) printf("%d\n",a[i]);
- return 0;
- }
参考题解:
- #include <stdio.h>
- int a[11];
- int main(){
- //问题 : 冒泡法排序
- for(int i = 1;i<=10;i++) scanf("%d",&a[i]);
- int temp;
- for(int i = 1;i<=9;i++){
- for(int j = 1;j<=10-i;j++){
- if(a[j]>a[j+1]){
- temp = a[j];
- a[j] = a[j+1];
- a[j+1] = temp;
- }
- }
- }
- for(int i = 1;i<=10;i++) printf("%d\n",a[i]);
- return 0;
- }
参考题解:
- #include <stdio.h>
- int a[1005];
- int main(){
- //问题 : 筛法求素数
- int n;scanf("%d",&n);
- for(int i = 2;i<=n;i++) a[i] = i;
- for(int i = 2;i<=n;i++){
- for(int j = 2;j<i;j++){
- if(i%j==0) a[i] = 0;
- }
- }
- for(int i = 2;i<=n;i++) if(a[i]) printf("%d\n",a[i]);
- return 0;
- }
参考题解:
- #include <stdio.h>
- #include <string.h>
- #define N int(1e5+5)
- char s[N];
- int main(){
- //问题 : 嘉航的加密程序
- int k;
- gets(s);
- scanf("%d",&k);
- int len = strlen(s);
- for(int i = 0;i<len;i++){
- if(s[i]>='a'&&s[i]<='z'){
- s[i] = 'a'+(s[i]-'a'+k%26)%26;
- }else if(s[i]>='A'&&s[i]<='Z'){
- s[i] = 'A'+(s[i]-'A'+k%26)%26;
- }else if(s[i]>='0'&&s[i]<='9'){
- s[i] = '0'+(s[i]-'0'+k%10)%10;
- }
- }
- printf("%s",s);
- return 0;
- }
参考题解:
- #include <stdio.h>
- int main(){
- //问题 : 交替字符倒三角形
- int n;scanf("%d",&n);
- for(int i = 1;i<=n;i++){
- for(int j = 1;j<=i-1;j++) printf(" ");
- for(int j = 1;j<=2*(n+1-i)-1;j++){
- if(j%2==1) printf("S");
- else printf("T");
- }
- printf("\n");
- }
- return 0;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。