求问2道c++的题目 5
c++1.编程输出1000(测试用20)个数组元素的前10个最大的数。2.统计一个字符串中的单词数,单词以空格、逗号、句号、分号分隔。...
c++ 1. 编程输出1000(测试用20)个数组元素的前10个最大的数。 2.统计一个字符串中的单词数,单词以空格、逗号、句号、分号分隔。
展开
1个回答
展开全部
#include <iostream>
using namespace std;
int main()
{
int num[1000];
int maxNum[10];
for(int i=0;i<1000;i++) //输入数据循环
{
// cin>>num[i];
num[i]=i; //此为测试数据,用时注释此行,使用上一行
if(i<10)
maxNum[i]=num[i];
}
for(int i=0;i<10;i++)
cout<<maxNum[i]<<' ';
cout<<endl;
for(int i=0;i<10;i++) //对目前的最大序列数组进行从大到小冒泡排序;
{
for(int j=0;j<10-i;j++)
{
if(maxNum[j]<maxNum[j+1])
{
int temp=maxNum[j];
maxNum[j]=maxNum[j+1];
maxNum[j+1]=temp;
}
}
}
for(int i=10;i<1000;i++) //用后10个数依次和最大数数组做比较,若大于此数,数组内所有数后移,将此数插入当前位置
{
for(int j=0;j<10;j++)
{
if(num[i]>maxNum[j])
{
for(int k=8;k>=j;k--)
maxNum[k+1]=maxNum[k];
maxNum[j]=num[i];
}
break;
}
}
for(int i=0;i<10;i++)
cout<<maxNum[i]<<' ';
return 0;
}
#include <iostream>
using namespace;
int main()
{
char word[100];
int num=0;
cin.getline(word,100);
cout<<"回车结尾"<<endl;
for(int i=1;word[i]!='\0';i++)
{
switch(word[i])
{
case ' ':
case ',':
case ';':
case '.':
num++;
break;
default:
break;
}
}
cout<<num+1;
}
追问
请问把第一个题目iostream改成stdio是什么样呢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询