在编程时,往往都采用了函数这种模块,而且等级考试一般都采用了函数实现。几乎没有程序是只用一个mian 函数来实现的。
现在就弄些函数习题来慢慢参透一下。
-
#include<stdio.h>
#include<string.h>
void fun(char [][10],int );
#define n 10
int main()
{
int m,i;
char a[5][10];
scanf("%d",&m);
for(i=0;i<m;i++)
scanf("%s",&a[i]);
fun(a,m);
puts(a[0]);
return 0;
}
void fun(char a[][10],int c)
{
int i;
for(i=1;i<c;i++)
strcat(a[0],a[i]);
}```
2.
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/1694063-8987c856044dc58f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
```cpp
#include <stdio.h>
void fun(char ss[][11],int M,int k)
{
int i;
for(i=0;i<M;i++)
ss[i][k]='\0';
}
int main()
{
int M,k,i;
char ss[5][11];
scanf("%d",&M);
scanf("%d",&k);
gets(ss[0]);
for(i=0;i<M;i++)
gets(ss[i]);
fun(ss,M,k);
for(i=0;i<M;i++)
puts(ss[i]);
return 0;
}```
3.
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/1694063-92b6ef50422cfe02.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
```cpp
#include<stdio.h>
#include<string.h>
void fun(char [][11],int );
#define n 10
int main()
{
int m,i;
char a[5][11];
scanf("%d",&m);
for(i=0;i<m;i++)
scanf("%s",&a[i]);
fun(a,m);
for(i=0;i<m;i++)
puts(a[i]);
return 0;
}
void fun(char a[][11],int c)
{
int i,j;
char t[11];
for(i=0;i<c-1;i++)
for(j=0;j<c-1-i;j++)
if(strlen(a[j])>strlen(a[j+1]))
{
strcpy(t,a[j]);
strcpy(a[j],a[j+1]);
strcpy(a[j+1],t);
}
}```
4.
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/1694063-0064b023bff087ce.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
```cpp
#include"stdio.h"
#include"string.h"
int main()
{
char ss[5][10];
char b[10]="dcdscsasdf";
int i,M,j,k=0,N,len,m,n;
scanf("%d",&M);
for(i=0; i<M; i++)
scanf("%s",&ss[i]);
for(i=0; i<M; i++)
{ len=strlen(ss[i]);
if(i==0) n=len;
if(len>n) {
n=len; k=i;
}
}
for(i=0; i<M; i++)
if (i!=k)
{ m=n;
len=strlen(ss[i]);
for(j=len; j>=0; j--)
ss[i][m--]=ss[i][j];
for(j=0; j<n-len; j++)
ss[i][j]='*';
}
for(i=0;i<M;i++)
puts(ss[i]);}```
5.
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/1694063-4ede4f49ce2fc898.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
```cpp
#include <stdio.h>
void fun( int m, int a[10])
{ int i;
for (i=0; i<10; i++)
a[i]= 0;
while (m > 0)
{
i = m%10;
a[i]++;
m = m/10;
}
}
main()
{ int m, a[10],i;
scanf("%d", &m);
fun(m, a);
for (i=0; i<10; i++) printf("%d,",a[i]); printf("\n");
}```