c语言编程着急等待答案

1.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:(1)输入10个数;(2)进行处理;(3)输出10个数。

2. 输入两个整数a和b(设a=1500,b=350),求a除以b的商和余数,编写完整程序并按如下形式输出结果(□表示空格)。
  a=□1500,b=□350
  a/b=□□4,the□a□mod□b=□100
3. 输入一行文字,找出其中大写宁母、小写字母、空格、数字及其他字符各有多少?

//第一题
#include <stdio.h>

/*自定义函数(1):输入n个数, 从指针p位置处开始输入n个整数*/
void putin(int *p,int n)
{
    int i;
    printf("Enter %d numbers:",n);
    for(i=0;i<n;i++) scanf("%d",p+i);
}

/*自定义函数(2):进行处理, 将其中最小的数与第一个数对换,最大的数与最后一个数对换*/
void pr(int *p,int n)
{
   int i,*max,*min;
   max=min=p;
    for(i=1;i<n;i++)
   {
       if(*max<*(p+i)) max=p+i;
       if(*min>*(p+i)) min=p+i;
   }
    i=*min;*min=*p;*p=i;   //最小的数与第一个数对换
    i=*max;*max=*(p+n-1);*(p+n-1)=i;   //最大的数与最后一个数对换
}

/*自定义函数(3):输出n个数,从指针p位置处开始输出n个整数*/
void putout(int *p,int n)
{
    int i;
    printf("putout %d numbers:\n",n);
    for(i=0;i<n;i++) printf("%6d",*(p+i));
    printf("\n");

void main()
{
    int a[10];
    putin(a,10);   //输入10个数
    printf("before being dealt:");
    putout(a,10); //处理前输出
    pr(a,10);     //处理
    printf("afte being dealt:");
    putout(a,10); //处理后输出
}

//第二题
#include<stdio.h>

void main()
{
    int a,b,c,d;
    scanf("%d%d",&a,&b);
    c=a/b;
    d=a%b;
    printf("a= %d,b= %d\n",a,b);
    printf("a/b=  %d,the a mod b= %d",c,d);
}

//第三题
#include <string.h>
#include <stdio.h>
int xiaoxie,daxie,digit,space,other;
void count(char str[]);
main()
{
    char str[100];
    xiaoxie=daxie=digit=space=other=0;
    printf("请输入一个字符串:\n");
    gets(str);
    count(str);
    printf("所输入字符串中有大写字母%d个,小写字母%d个,数字%d个,空格%d个,其他字符%d个。\n",daxie,xiaoxie,digit,space,other);
}

void count(char str[])
{
    int i;
    for(i=0;i<strlen(str);i++)
        if(str[i]>='a'&&str[i]<='z')
            xiaoxie++;
        else if(str[i]>='A'&&str[i]<='Z')
            daxie++;
        else if(str[i]>='0'&&str[i]<='9')
            digit++;
        else if(str[i]==32)
            space++;
        else
            other++;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-05-22
1.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:(1)输入10个数;(2)进行处理;(3)输出10个数。

#include<stdio.h>
int a[10];
void input()//输入函数
{
for(int i=0;i<10;i++)
scanf("%d",&a[i]);
}
void run()
{
int min,max,i,kmin,kmax,temp;
kmin=kmax=0;
for(i=0;i<10;i++)
{
if(a[i]<a[kmin]) kmin=i;
if(a[i]>a[kmax]) kmax=i;
}
printf("max:%d\n",a[kmax]); //cout<<"max"<<a[kmax]<<endl;
printf("min:%d\n",a[kmin]);//cout<<"min"<<a[kmin]<<endl;
if(kmin!=0)
{
temp=a[0];a[0]=a[kmin];a[kmin]=temp;
}
if(kmax!=9)
{
temp=a[9];a[9]=a[kmax];a[kmax]=temp;
}

}
void show()//输出函数
{
for(int i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
}
int main()
{
input();
run();
show();
return 0;
}
2. 输入两个整数a和b(设a=1500,b=350),求a除以b的商和余数,编写完整程序并按如下形式输出结果(□表示空格)。
a=□1500,b=□350
a/b=□□4,the□a□mod□b=□100
解答:
#include<stdio.h>
int main()
{
int a,b;
scanf("%d%d",&a,&b);
printf("a= %d,b= %d",a,b);
printf("a/b= %d,the a mod b= %d",a/b,a - a/b*b);
return 0;
}
3. 输入一行文字,找出其中大写宁母、小写字母、空格、数字及其他字符各有多少?

#include<stdio.h>
#include<cstring>
int main()
{
int bigletter=0,smallletter=0,space=0,digit=0,others=0;
char a[1000];
scanf("%s",a);
int len=strlen(a);
for(int i=0;i<len;i++)
{
if(a[i]>='A'&&a[i]<='Z') bigletter++;
else if(a[i]>='a'&&a[i]<='z') smallletter++;
else if(a[i]==' ') space++;
else if(a[i]>='0'&&a[i]<='9') digit++;
else others++;
}
printf("大写字母的个数为%d.",bigletter);
printf("小写字母的个数为%d.",smallletter);
printf("空格的个数为%d.",space);
printf("数字的个数为%d.",digit);
printf("其他字符的个数为%d.",others);
}
第2个回答  2014-05-22

第一题:


#include <stdio.h>

void func1(int*a)
{
for (int i = 0; i < 10; i++)
{
scanf("%d",&a[i]);
}
}

void func2(int*a)
{
int min = 0, max = 0, t;
for (int i = 0; i < 10; i++)
{
if (a[i] < a[min])
{
min = i;
}
if (a[i] > a[max])
{
max = i;
}
}

t = a[0];
a[0] = a[min];
a[min] = t;

t = a[9];
a[9] = a[max];
a[max] = t;

}

void func3(int*a)
{
for (int i = 0; i < 10; i++)
{
printf("%d ",a[i]);
}
printf("\n");
}

void main()
{
int a[10];
func1(a);
func2(a);
func3(a);

}

 第二题:

#include <stdio.h>

void main()
{
int a, b;

scanf("%d", &a);
scanf("%d", &b);

printf("a= %d,b= %d\n",a,b);
printf("a/b=  %d,the a mod b= %d\n", a/b, a%b);

}

 第三题:

int main()
{
int a = 0, b = 0, c = 0, d = 0, e = 0, i = 0;
char s[1000];
gets(s);

for (int i = 0; s[i]!='\0'; i++)
{
if (s[i] >= 'A'&&s[i] <= 'Z')
a++;
else if (s[i] >= 'a'&&s[i] <= 'z')
b++;
else if (s[i] == ' ')
c++;
else if (s[i] >= '0'&&s[i] <= '9')
d++;
else e++;
}


printf("大写字母:%d\n小写字母:%d\n", a, b);
printf("空格:%d\n数字:%d\n其他字符 %d\n", c, d, e);
return 0;
}

第3个回答  2014-05-22
1.(1)
void input(int n,int arr[])
{
int i=0;
for (i=0;i<n;i++)
{
printf("请输入第%d个数:",i+1);
scanf("%d",arr+i);
}
}
(2)
void do(int n,int arr[])
{
int i=0;
int t;
for (i=1;i<n-1;i++)
{
if (arr[i]<arr[0])
{
t = a[i];a[i]=a[0];a[0]=t;
}
if (arr[i]>arr[n-1])
{
t = a[i];a[i]=a[n-1];a[n-1]=t;
}
}
}
(3)
void output(int n,int arr[])
{
int i=0;
for (i=0;i<n;i++)
{
printf("第%d个数:%d\n",i,arr[i]);
}
printf("\n");
}
2.
#include <stdio.h>

void main()
{
int a=0;
int b=0;
printf("请输入A:");
scanf("%d",&a);
printf("请输入B:");
scanf("%d",&b);
if (b==0)
{
printf("b=0;不能进行除法\n");
}
else
{
printf("a=%5d,b=%4d\n",a,b);
printf("a/b=%3d,the a mod b=%4d\n",a/b,a%b);
}
}
3.
#include <stdio.h>

void main()
{
char buff[256]="\0";
char *b=buff;
int nUpper=0;
int nLower=0;
int nDigital=0;
int nSpace=0;
int nOther=0;

printf("请输入字符串(不大于255字符)");
scanf("%s",buff);

while (*b++!='\0')
{
if (*b>='A' && *b<='Z')
nUpper++;
else if (*b>='a' && *b<='z')
nLower++;
else if (*b>='0' && *b<='9')
nDigital++;
else if (*b=='\x20')
nSpace++;
else
nOther++;
}

printf("大写字符共有%d个\n",nUpper);
printf("小写字符共有%d个\n",nLower);
printf("数字共有%d个\n",nDigital);
printf("空格共有%d个\n",nSpace);
printf("其他字符共有%d个\n",nOther);
}
第4个回答  2014-05-22
1.
#include<stdio.h>
int main()
{
    int i,a[10];
    int *min, *max ,temp;
    for(i=0; i<10; i++)
        scanf("%d",&a[i]);
    min=&a[0];
    max=&a[0];
    for(i=0; i<10; i++)
    {
        if(a[i]>*max) max=&a[i];
        if(a[i]<*min) min=&a[i];
    }
    temp=a[0];
    a[0]=*min;
    *min=temp;
    temp=a[9];
    
    a[9]=*max;
    *max=temp;
    for(i=0;i<10;i++)
            printf("%-4d",a[i]);
    return 0;
}'
2.
#include<stdio.h>
int main()
{
    int a,b,c,d;
    scanf("%d%d",&a,&b);
    c=a/b;
    d=a%b;
    printf("a= %d,b=%d\n",a,b);
    printf("a/b=%d,the a mod b=% d",a,b,c,d);
    return 0;
}

3.

#include<stdio.h>
int main()
{
    int a=0,b=0,c=0,d=0,e=0,i=0;
    char *p,s[200];
    while((s[i]=getchar())!='\n')i++;
    p=s;
    while(*p!=10)
    {
        if(*p>='A'&&*p<='Z')
            a++;
        else if(*p>='a'&&*p<='z')
            b++;
        else if(*p==' ')
            c++;
        else if(*p>='0'&&*p<='9')
            d++;
        else e++;
        p++;
    }
    printf("大写字母:%d\n小写字母:%d\n",a,b);
    printf("空格:%d\n数字:%d\n其他字符 %d\n",c,d,e);
    return 0;
}