//第一题
#include
/*自定义函数(1):输入n个数, 从指针p位置处开始输入n个整数*/
void putin(int *p,int n)
{
int i;
printf("Enter %d numbers:",n);
for(i=0;i}
/*自定义函数(2):进行处理, 将其中最小的数与第一个数对换,最大的数与最后一个数对换*/
void pr(int *p,int n)
{
int i,*max,*min;
max=min=p;
for(i=1;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;iprintf("\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
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
#include
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;iif(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.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:(1)输入10个数;(2)进行处理;(3)输出10个数。
#include
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] if(a[i]>a[kmax]) kmax=i;
}
printf("max:%d\n",a[kmax]); //cout<<"max"< printf("min:%d\n",a[kmin]);//cout<<"min"< 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
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
#include
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
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);
}
第一题:
#include
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
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;
}
1.(1)
void input(int n,int arr[])
{
int i=0;
for (i=0;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
if (arr[i]
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
printf("第%d个数:%d\n",i,arr[i]);
}
printf("\n");
}
2.
#include
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
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);
}
1.
#include
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
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
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;
}