综合练习二

问题 A: 高级语言程序设计实验3-2

编写程序,读入一个整数x,输出整数y。

当x<1时,y等于x。

当1<=x<10时,y等于2x-1。

当x>=10时,y等于3x-11。

#include<stdio.h>
int main(void)
{
    int x,y;
    scanf("%d",&x);
 
    if(x<1){
        y=x;
    }
    else if(x>=10){
        y=3*x-11;
    }
    else{
        y=2*x-1;
    }
    printf("%d\n",y);
return 0;
}

 

 

问题 B: 求商和余数

题目描述

先输入一个数n,表示有n组数据。

每组输入整数a和b,如果a能被b整除,就输出算式的商,否则输出整数商和余数,如果b=0,输出error。

输入要求

整数a和整数b

输出要求

商或者商和余数或者error

假如输入

3
100 10
75 20
1 0

应当输出

10
3 15
error
#include<stdio.h>
int main(void)
{
    int n;
    scanf("%d\n",&n);
    int i,a,b,c,x,y;
    for(i=1;i<=n;i++){
        scanf("%d %d",&a,&b);
        if(b==0)
            printf("error\n");
        else if(a%b==0){
            c=a/b;
        printf("%d\n",c);
        }
        else{
            x=a/b;
            y=a%b;
            printf("%d %d\n",x,y);
        }
    }
    return 0;
}
 

问题 C: 高级语言程序设计实验4-4计算级数

输入一个正整数n,编写程序计算1-1/4+1/7-1/10+......+(-1)(n+1)(3*n-2)

输入要求

输入一个正整数n。

输出要求

输出级数的值。

假如输入

10

应当输出

sum = 0.818743
#include<stdio.h>
int main(void)
{
    int n,i,x,y;
    double sum,item;
    scanf("%d",&n);
    x=1;
    y=1;
    sum=0;
    for(i=1;i<=n;i++){
        item=x*1.0/y;
        sum=sum+item;
        x=-x;
        y=3*(i+1)-2;
    }
 
    printf("sum = %f\n",sum);
 
    return 0;
}
 

问题 D: 高级语言程序设计实验6-3

输入一个正整数n1n10),再输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,然后输出交换后的n个数。

输入要求

第一行输入一个整数n,第二行输入n个整数。

输出要求

将最小值与第一个数交换,最大值与最后一个数交换输出交换后数组的整数,每两个整数之间用空格分隔。

假如输入

5
3 1 0 4 2

应当输出

0 1 3 2 4
#include<stdio.h>
int main(void)
{
    int i,index,n,temp,max;
    int a[10];
    scanf("%d\n",&n);
    for(i=0;i<n;i++)
    scanf("%d",&a[i]);
 
    index=0;
    for(i=1;i<n;i++)
        if(a[i]<a[index])
            index=i;
        temp=a[index];
        a[index]=a[0];
        a[0]=temp;
 
    max=0;
    for(i=1;i<n;i++)
        if(a[i]>a[max])
            max=i;
        temp=a[max];
        a[max]=a[n-1];
        a[n-1]=temp;
 
        for(i=0;i<n;i++)
            printf("%d ",a[i]);
        return 0;
}
 

问题 E: C二级辅导-对角线和

求一个3×3矩阵对角线元素之和。

 

输入要求

 

输出要求

 

假如输入

1 2 3
4 5 6
7 8 9

应当输出

15
#include<stdio.h>
int main(void)
{
    int i,j,sum;
    int a[3][3];
    for(i=0;i<3;i++)
        for(j=0;j<3;j++)
            scanf("%d",&a[i][j]);
 
        sum=a[0][0]+a[1][1]+a[2][2];
        printf("%d\n",sum);
 
        return 0;
}
 
 

 


posted @ 2013-12-15 19:52  simple9495  阅读(759)  评论(0编辑  收藏  举报