几个用C语言编程问题
求高手解决以下问题,要用C语言编程阿!!1.编一个函数fun(char*s),函数的功能是把字符串中的内容逆置。例如:字符串中原有的内容为:abcdefg,则调用该函数后...
求高手解决以下问题,要用C语言编程阿!!
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. 编一个函数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,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。 展开
5个回答
展开全部
记得给我分,一个5分
1.
#include<string.h>
/*注意:执行此函数后原串将不存在,而是变成了其逆串*/
char* fun(char *s)
{
int i=0,j=strlen(s)-1;
char tmp;
while(i<j)
{
tmp=s[i];
s[i++]=s[j]
s[j++]=tmp;
}
return s;
}
2.
n为行数
int** rMatrix( int** m , int n )
{
if(m==0)return 0;
int tmp;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(i!=j)
{
tmp=m[i][j];
m[i][j]=m[j][i];
m[j][i]=tmp;
}
return m;
}
1.
#include<string.h>
/*注意:执行此函数后原串将不存在,而是变成了其逆串*/
char* fun(char *s)
{
int i=0,j=strlen(s)-1;
char tmp;
while(i<j)
{
tmp=s[i];
s[i++]=s[j]
s[j++]=tmp;
}
return s;
}
2.
n为行数
int** rMatrix( int** m , int n )
{
if(m==0)return 0;
int tmp;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(i!=j)
{
tmp=m[i][j];
m[i][j]=m[j][i];
m[j][i]=tmp;
}
return m;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void f2(char * s)
{
char* b=s;
int i=0,j=0;
for(;b[i]!='\0';i++);//得出字符总数
char c;
for(;j<i/2;j++)//前后交换
{
c=b[j];
b[j]=b[i-j-1];
b[i-j-1]=c;
}
for(j=0;j<i;j++)//显示得到的数组
{
printf("%c",b[j]);
}
}
int main()
{
char s[10];
gets(s);
f2(s);
return 0;
}
void f2(char * s)
{
char* b=s;
int i=0,j=0;
for(;b[i]!='\0';i++);//得出字符总数
char c;
for(;j<i/2;j++)//前后交换
{
c=b[j];
b[j]=b[i-j-1];
b[i-j-1]=c;
}
for(j=0;j<i;j++)//显示得到的数组
{
printf("%c",b[j]);
}
}
int main()
{
char s[10];
gets(s);
f2(s);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
记得多给我点分啊!
第二题
void fun(int array[3][3])
{
int I,j,temp;
for(i=0;i<3;i++)
for(j=0;j<I,j++)
{
temp=array[i][j];
array[i][j]=array[j][i];
array[j][i]=temp;
}
}
第六题,
void fun(char a[],char b[], int n)
{
int I,j=0;
for (i=0;i<LEN;i++)
if (i!=n)
{
b[j]=a[i];
j++;
}
b[j]=‘\0’;
}
第七题
unsigned fun(unsigned w)
{
unsigned t,s=0,s1=1,p=0;
t=w;
while(t>10)
{
if(t/10)
p=t%10;
s=s+p*s1;
s1=s1*10;
t=t/10;
}
return s;
}
第八题
int fun(int lim, int aa[MAX])
{
int k=0,I,j;
for(i=lim;i>1;i--)
{
for(j=2;j<i;j++)
if(i%j==0)
break;
else
continue;
if(j>=i)
{
aa[k]=i;
k++;
}
}
return k++;
}
第10题,
int fun(int a[M][N])
{
int I,j,s=0;
for(j=0;j<N;j++)
{
s+=a[0][j];
s+=a[M-1][j];
}
for(i=1;i<=M-2;i++)
{
s+=a[i][0];
s+=a[i][N-1];
}
return s;
}
第二题
void fun(int array[3][3])
{
int I,j,temp;
for(i=0;i<3;i++)
for(j=0;j<I,j++)
{
temp=array[i][j];
array[i][j]=array[j][i];
array[j][i]=temp;
}
}
第六题,
void fun(char a[],char b[], int n)
{
int I,j=0;
for (i=0;i<LEN;i++)
if (i!=n)
{
b[j]=a[i];
j++;
}
b[j]=‘\0’;
}
第七题
unsigned fun(unsigned w)
{
unsigned t,s=0,s1=1,p=0;
t=w;
while(t>10)
{
if(t/10)
p=t%10;
s=s+p*s1;
s1=s1*10;
t=t/10;
}
return s;
}
第八题
int fun(int lim, int aa[MAX])
{
int k=0,I,j;
for(i=lim;i>1;i--)
{
for(j=2;j<i;j++)
if(i%j==0)
break;
else
continue;
if(j>=i)
{
aa[k]=i;
k++;
}
}
return k++;
}
第10题,
int fun(int a[M][N])
{
int I,j,s=0;
for(j=0;j<N;j++)
{
s+=a[0][j];
s+=a[M-1][j];
}
for(i=1;i<=M-2;i++)
{
s+=a[i][0];
s+=a[i][N-1];
}
return s;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
太多了~~~一个个来吧
2、
#include"stdio.h"
void main()
{
int a[3][3],b[3][3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(j=0;j<3;j++)
for(i=0;i<3;i++)
{b[j][i]=a[i][j];
printf("%d",b[j][i]);
}
}
2、
#include"stdio.h"
void main()
{
int a[3][3],b[3][3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(j=0;j<3;j++)
for(i=0;i<3;i++)
{b[j][i]=a[i][j];
printf("%d",b[j][i]);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个5分
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询