- 给定行数的不定长int型数据排序
这原本是道非常容易的题目,后来考虑到 不定长 多行 整形 数据的输入比较麻烦,定义char型数据比较容易,但是它只能输入个位数,故有了现在的方法
#include <iostream>
#include <string>
#include <stdio.h>
using namespace std;
int len,i,j,temp;
void BubbleSort(int *st)
{
len=sizeof(st);
for(i=0; i<len; i++)
for(j=len-1;j>i;j--)
if (st[j-1]>st[j])
{
temp=st[j];
st[j]=st[j-1];
st[j-1]=temp;
}
for(i=0; i<len; i++)
cout<<st[i]<<' ';
cout<<endl;
}
int main()
{
int n,cont;
int temp;
cout << "Input group number:";
cin >> n;
int ch[n][20];
char c;
for(int j=0;j<n;j++)
for (int i=0; i<20; i++)
{
scanf("%d%c",&ch[j][i],&c);//回车,一行表一组
if(c=='\n'){ //遇到回车退出
break;
}
}
for (int i=0; i<n; i++)
{
BubbleSort(ch[i]);
}
return 0;
}
- {}[]()括号匹配的问题
/*同2018 全局变量和局部变量,要声明清楚*/ #include <iostream> #include <cstring> #include <stack> using namespace std; stack <char> Stack; bool JudgeMatch(char *str) { bool flag=true; int len=strlen(str); for(int i=0;i<len;i++) { if(str[i]=='{'||str[i]=='['||str[i]=='(') Stack.push(str[i]); else if((str[i]=='}'&&Stack.top()=='{')||(str[i]==']'&&Stack.top()=='[')||(str[i]==')'&&Stack.top()=='(')) Stack.pop(); else continue; } if(!Stack.empty()) flag=false; return flag; } int main() { int n,i; cin>>n; cin.get(); char ch[n][20]; for(i=0;i<n;i++) cin.getline(ch[i],20); for(i=0;i<n;i++) if(JudgeMatch(ch[i])) cout<<"Yes"<<endl; else cout<<"No"<<endl; return 0; }