1. 编一个函数fun(char *s),函数的功能是把字符串中的内容逆置。例如:字符串中原有的内容为:abcdefg,则调用该函数后,串中的内容为:gfedcba
2. 写程序,实现矩阵(3行3列)的转置(即行列互换)。
3. 请编一个函数fun(int *a,int n,int *odd,int *even),函数的功能是分别求出数组中所有奇数之和以及所有偶数之和。形参n给了数组中数据的个数:利用指针odd返回奇数之和,利用指针even返回偶娄这和。例如:数组中的值依次为:1,8,2,3,11,6;则利用指针odd返回奇数之和24;利用指针even返回偶数之和8。
4. 把20个随机数存入一个数组,然后输出该数组中的最小值。其中确定最小值的下标的操作在fun函数中实现,请给出该函数的定义。
5. 请编一个函数float fun(double h),函数的功能是对变量h中的值保留2位小数,并对第三位进行四舍五入(规定h中的值为正数)。
6. 编写函数fun,函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。
若程序执行时,输入字符串为:turbo c and Borland c++,从键盘上输入字符:n,则输出后变为:turbo c ad borlad c++. 如果输入的字符串不存在,则字符串照原样输出。
7. 请编写一个unsigned fun(unsigned w),w是一个大于10的无符号整数,若w是n(n>=2)位的整数,函数求出w的后n-1位的数作为函数值返回。例如:w值为5923,则函数返回923;w值为923则函数返回23。
8. 编写函数int fun(int lim,int aa[MAX]),该函数的功能是求出小于lim的所有素数并放在aa数组中,该函数返回所求出素数的个数。
9. 请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。例如,原来的字符串为CEAedca,排序后输出为CedcEAa.
10. 请编写函数fun,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。
1:
void fun(char* s)
{
for( int i = 0; s[i] != '\0'; i++ );
i--;
int j = 0;
while( j < i )
{
char temp = s[j]; s[j] = s[i]; s[i] = temp;
j++;
i--;
}
}
2、
void fun( char m[3][3] )
{
for ( int i = 0; i < 3; i++ )
for ( int j = 0; j < i; j++ )
{
char temp = m[i][j];
m[j][i] = m[i][j];
m[i][j] = m[j][i];
}
}
3、
fun(int *a,int n,int *odd,int *even)
{
*odd = 0;
*even = 0;
for ( int i = 0; i < n; i++)
{
if ( a[i] % 2 == ) *even += a[i];
else *odd += a[i];
}
}
4、
int fun( int a[20] )
{
int value = a[0];
int i = 0;
for ( int j = 1; j < 20; j++ )
if ( a[j] < a[i] )
{
i = j;
}
}
5、
float fun( double h )
{
int a = int( h * 100 + 0.5 );
return a/100.0;
}
6、
void fun( char* s, char n )
{
int i = 0;
int j = 0;
while ( s[j]!='\0' )
{
if ( s[j] == n )
j++;
else
s[i++] = s[j++];
}
}
7、
unsigned fun( unsigned w )
{
int a;
while ( w%10!=0 )
{
a = w%10;
w = a/10;
}
return a;
}
8、
int fun( int lim, int aa[MAX] )
{
int pos = 0;
for ( int i = 2; i < lim; i++ )
{
for ( int j = 2; j < i; j++ )
if ( i%j == 0 )
break;
if ( j==i )
{
a[pos++] = i;
}
}
return pos;
}
9、
void fun( char* s )
{
for ( int i = 0; s[i] != '\0'; i++ );
for ( int j = i-2; j > 0; j-- )
{
bool exchange = false;
for ( int k = 1; k <= j; k++ )
if ( s[k] < s[k+1] )
{
char temp = s[k]; s[k] = s[k+1]; s[k+1] = temp;
exchange = true;
}
if( !exchange )
return;
}
}
10、
设二维数组为a[10][10]
int fun( int a[10][10] )
{
int sum = 0;
for ( int i = 0; i < 10; i++ )
for ( int j = 0; j < 10; j++ )
if ( i==0 || j==0 || i==9 || j==9 )
sum += a[i][j];
return sum;
}