-
C++ ~超難我不會
Posted on 二月 7th, 2010 1 comment1. 請宣告一個一維陣列(int),由使用者輸入10個數字,程式必須能夠找出最大值、最小值、平均值、標準差及從大排到小的輸出。以上程式需利用指標完成。
#include<iostream.h>
void main()
{
int*num=new int[10];
int temp,i=0;
cout<<"[請輸入10個數字]"<<endl;
while(i<10)
{
cout<<"數字"<<i+1<<">";
cin>>*(num+i);
i++;}
for(i=0;i<9;i++)
for(int j=i+1;j<10;j++)
{
if(*(num+i)<*(num+j))
{
temp=*(num+i);
*(num+i)=*(num+j);
*(num+j)=temp;
}
}
cout<<"[由大而小的順序是]";
for(i=0;i<10;i++)
cout<<*(num+i)<<’\t’;
cout<<endl;
delete [] num;
}我已打出大小排序了那如何分辨最大值跟最小值等等呢??
1 responses to “C++ ~超難我不會”

-
#include<iostream> /* 標準差就留待高手幫忙補充一下 */
using namespace std;
int main() {
int*num=new int[10];
int temp,i, sum = 0;
double avg;
cout<<"請輸入 10 個數字:"<<endl;
for( i = 0; i < 10; i++) {
cout<<"數字 "<<i+1<<":";
cin>>*(num+i);
}
for(i=0;i<9;i++)
for(int j=i+1;j<10;j++)
if(*(num+i)<*(num+j)) {
temp=*(num+i);
*(num+i)=*(num+j);
*(num+j)=temp;
}
cout << "最大值:" << *(num) << endl;
cout << "最小值:" << *(num + 9) << endl;
cout << "由大而小的順序是:" << endl;
for(i=0;i<10;i++) {
cout<<*(num+i)<<’\t’;
sum += *(num+i);
}
cout << endl;
avg = (double)sum / 10;
cout << "平均值:" << avg << endl;
delete [] num;
system("pause");
return 0;
}
-

x幻翼﹋飛o翔c☆〃 二月 7th, 2010 at 05:57