1. 程式人生 > 實用技巧 >國產資料庫人大金倉 KingbaseES V8 R2 在 x86_64 Linux 安裝過程

國產資料庫人大金倉 KingbaseES V8 R2 在 x86_64 Linux 安裝過程

技術標籤:慕課課後作業

1插入字串(30分)
題目內容:

從鍵盤輸入一個字串,並在串中的第一次出現的最大元素後邊插入字串”ab”。

輸入格式:

任意輸入一個字串

輸出格式:

在串中的最大元素後邊插入字串”ab”

輸入樣例:

123csCUMT

輸出樣例:

123csabCUMT

想法

  1. 用一個字元陣列過渡。
#include <iostream>
using namespace std; 

int main(int argc, char** argv) {
	char a[1000];
	cin>>a;
	int i;
	int maxx=0;
	for(i=0;a[i]!=
'\0';i++) { if(a[maxx]<a[i]) maxx=i; } char b[1002]="\0"; for(i=0;i<=maxx;i++) b[i]=a[i]; b[i]='a'; b[i+1]='b'; for(i;a[i]!='\0';i++) { b[i+2]=a[i]; } for(i=0;b[i]!='\0';i++) { cout<<b[i]; } return 0; }

2統計整數個數(40分)
題目內容:

輸入一個字串,其包括數字和非數字字元,如:a123x456 17935? 098tab,將其中連續的數字作為一個整數,依次存放到陣列a中,統計共有多少個整數,並輸出這些數。

輸入格式:

數字和非數字字元的字串

輸出格式:

1)整數個數2)分別輸出整數

輸入樣例:

a123x456 17935? 098tab583【注意需要保留帶有空格的字串,請不要使用gets,cin,練習使用cin.getline(char *str, int maxnum)】

輸出樣例:

5

123

456

17935

98

583

注意
並不是只要連續的數字,單獨的數字也作為整數記錄。

#include <iostream>
#include<string.h>
using namespace std;
int main(int argc, char** argv) {
char a[100]="\0"; cin.getline(a,100,'\n'); int i; for(i=0;a[i]!='\0';i++) { } i--; int temp[100]={0}; int l=0; for(i;a[i]!='\0';i--) { if((a[i]>='0'&&a[i]<='9')&&(a[i-1]>='0'&&a[i-1]<='9')) { int sum=0;int p=1; for(i;a[i]>='0'&&a[i]<='9';i--) { sum+=(int(a[i]-'0'))*p; p*=10; } temp[l++]=sum; } else if((a[i]>='0'&&a[i]<='9')&&!(a[i-1]>='0'&&a[i-1]<='9')) { temp[l++]=a[i]-'0'; } } cout<<l<<endl; l--; for(l;l>=0;l--) { cout<<temp[l]<<endl; } return 0; }

3字串排序(30分)
題目內容:

有5個字串,首先將它們按照字串中字元個數由小到大排序,再分別取出每個字串的第三個字母合併成一個新的字串輸出(若少於三個字元的輸出空格)。要求:利用字串指標和指標陣列實現。

輸入格式:

5個字串,用回車分隔

輸出格式:

輸出一個字串:按5個字串中字元個數由小到大排序,每個字串後面有一個空格;再分別取出每個字串的第三個字母合併成一個新的字串輸出,若少於三個字元的輸出空格

輸入樣例:

test1234

123test

cumt

think

apples

輸出樣例:

cumt think apples 123test test1234

concatenate string:mip3s

#include <iostream>
	#include <string.h>
	using namespace std;
	int main(){
		char *a[5];
		for(int i=0;i<5;i++)
		{
			a[i]=new char[100];
			cin>>a[i];
		}
		
		
		for(int i=0;i<4;i++)
		for(int j=0;j<5-i-1;j++)
		{
			if(strlen(a[j])>strlen(a[j+1]))
			{
				char *temp;
				temp=a[j];
				a[j]=a[j+1];
				a[j+1]=temp;
				
			}
		 } 
		for(int i=0;i<5;i++)
		{
			cout<<a[i]<<' ';
		}
		cout<<endl;
		cout<<"concatenate string:";
		for(int i=0;i<5;i++)
		{
			if(strlen(a[i])<3)
			cout<<" ";
			else
			cout<<a[i][2];
			delete a[i];
		}
		
		
		
		return 0;
	}