1.编写一个函数,字符串逆序:
#include<stdio.h>
#include<string.h>
#include <stdlib.h>
void reverse(char *str,int len)
{
int i;
char temp[100];
for(i = 0;i < len;i++)
{
temp[i] = str[i];
}
temp[len] = '\0';
for(i = 0;i<len;i++)
{
str[i] = temp[len - i -1];
}
printf("%s",str);
}
int main()
{
char src[]="nihao";
int len1;
len1 = strlen(src);
reverse(src,len1);
return 0;
}
2.编写一个程序,输出类似蛇形代码:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
#include<stdio.h>
#include<string.h>
#include <stdlib.h>
#define n 5
int main()
{
int a[n + 1][n + 1] = {0};
int i,j;
int count = 1;
a[0][0] = 1;
i = 0;
j = 0;
while(count < (n * n))
{
while(i + 1 < n && a[j][i + 1] == 0)
{
a[j][++i] = ++count;
}
while(j + 1 < n && a[j + 1][i] == 0)
{
a[++j][i] = ++count;
}
while(i - 1 >= 0 && a[j][i - 1] == 0)
{
a[j][--i] = ++count;
}
while(j - 1 >= 0 && a[j - 1][i] == 0)
{
a[--j][i] = ++count;
}
}
for(j = 0;j < n;j++)
{
for(i = 0;i < n; i++)
{
printf("%d ",a[j][i]);
}
printf("\n");
}
return 0;
}