首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

几个单件C++标题,求帮忙解答

2013-06-25 
几个单件C++题目,求帮忙解答。我是网络工程专业的,现在的工作主要是java开发。大四了,补考C++,去找老师,老师

几个单件C++题目,求帮忙解答。
我是网络工程专业的,现在的工作主要是java开发。
大四了,补考C++,去找老师,老师直接给题目了。都是最基本的,我会尝试写,会写在回帖中,也请各位朋友们帮忙看一下对不对,或者帮忙写一下。
1.给定一个数组,统计平均值。
2.给定一个数组,统计奇数位和偶数位的总和。
3.求1到100内所有的素数。
4.求1的阶乘到10的阶乘的和。例子:1+1*2+1*2*3+1*2*3*4+。。。。
5.创建一个时钟类,里面包含三个成员变量:时、分、秒。提供输入和输出方法。
6.实现一个2*3的矩阵的转置。

[解决办法]
int nCount = 0;
int n[len]....
for(int i = 0; i != len; i++)
    nCount += n[i];
2 if(i%2 == 0) // 偶数位
     ...
  else  // 奇数位
3 ...
4
5
6
[解决办法]
写了前四题的。。


#include <stdio.h>
#include <string.h>

void f1(int a[], int n){
int sum = 0;
for(int i = 0; i < n; ++i) sum += a[i];
printf("avg = %.2lf\n", 1.0 * sum / n);
}
void f2(int a[], int n){
int sumodd = 0, sumeven = 0;
for(int i = 0; i < n; ++i){
if(i % 2) sumodd +=a[i];
else sumeven += a[i];
}
printf("sumodd = %d sumeven = %d\n", sumodd, sumeven);
}
void f3(){
bool isprime[101];
memset(isprime, true, sizeof(isprime));
for(int i = 2; i * i <= 100; ++i){
if(isprime[i]){
for(int j = i * i; j <= 100; j += i) isprime[j] = false;
}
}
printf("100以内的质数有:");
for(int i = 2; i <= 100; ++i){
if(isprime[i]) printf("%d ", i);
}
putchar('\n');
}
void f4(){
int sum = 0;
for(int i = 1; i <= 10; ++i){
int p = 1;
for(int j = 1; j <= i; ++j) p *= j;
sum += p;
}
printf("1-10的阶乘和:%d\n", sum);
}
int main(){
int a[] = {1, 2, 3, 4, 5, 6};
f1(a, 6);
f2(a, 6);
f3();
f4();
return 0;
}

[解决办法]
在5楼基础上改了下;

double f1(int a[], int n)
{
    double avg = 0;
    int i;
    for (i = 0; i < n; ++i)     
    {              
        avg += ((a[i] - avg) / (i + 1));     
    }
    printf("avg = %.2lf\n", avg);
    return avg;


}

void f2(int a[], int n)
{
int sumodd = 0, sumeven = 0;
int i;

if (n & 1)
{
    sumodd += a[--n];
}

for (i = 0; i < n; i += 2)
{
sumeven += a[i];
sumodd += a[i + 1];
}

printf("sumodd = %d sumeven = %d\n", sumodd, sumeven);
}

int f4()
{
int sum = 0;
int p = 1;
int i;
for(i = 1; i <= 10; ++i)
{
p *= i; 
sum += p;
}
printf("1-10的阶乘和:%d\n", sum);
return sum;
}


[解决办法]
顶个~

话说这么多java的花了,还要补考c++,
还是这么基础的题目,
中国的教育真坑爹啊
术业有专攻的道理那些教授专家们难道 不懂!!!
[解决办法]
java那么多花花的了,怎么C++还算是坎了呢,语言都是相同的啊,就你说的这些问题在java也会有的吧,毕竟都是基础的练习语法用的哎。
[解决办法]
几个单件C++标题,求帮忙解答围观
[解决办法]
引用:
6.实现一个2*3的矩阵的转置。
int test6(){
 int i,j;
 //分配空间
int num=0;
p=new int[2][3];//被赋值的数组
q=new int[3][2];//转置后的数组
 //给数组赋值
p[0][0]=1;
p[0][1]=2;
p[0][2]=3;
p[1][0]=4;
p[2][1]=5;
p[2][2]=6;
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){
q[j][i]=p[i][j];
}
}
//进行输出转置后的数组
 for (int i = 0; i < 2; i++)
 {
  for (int j = 0; j < 3; j++)
  {
   cout << q[i][j] ;
  }
  cout<<endl;
 }



void test6(){
//分配空间
int p[2][3];//被赋值的数组
int q[3][2];//转置后的数组
//给数组赋值
p[0][0]=1;
p[0][1]=2;
p[0][2]=3;
p[1][0]=4;
p[1][1]=5;
p[1][2]=6;
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){
q[j][i]=p[i][j];
}
}
//进行输出转置后的数组
for (int i = 0; i < 3; i++)//
{
for (int j = 0; j < 2; j++)
{
cout << q[i][j] ;
}
cout<<endl;
}
}

改成这样。。

热点排行