Lab3:数据处理基本方法及创新应用(基础)

image

  1. ++x 是先进行 x=x+1,再返回 x;x++ 是先返回 x,再进行 x++
  2. 55/7=7,因为是整型运算;55/7.0=7.85714286,因为是浮点型运算
  3. 'b'<'a' 返回值为 1;
    x>y 返回值在 x>y时为 1,x<=y 为0
  4. x>0 时返回 x,否则返回 -1
  5. x<<2 == x*4
  6. 8=1000,9=1001,z=8&9=1000=8
  7. 66 && 88 返回值为 1,是逻辑与;66&88返回值是两者按位与的结果(经上机运算是64),是位运算
  8. x=8 是赋值语句,返回值为8;x == 8是判断语句,返回值为x == 8的真值

image
(1)是(2)的子问题,所以只给出(2)写法

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int INF = 0x3f3f3f3f;
inline ll read()
{
	ll ret=0;char ch=' ',c=getchar();
	while(!(c>='0'&&c<='9')) ch=c,c=getchar();
	while(c>='0'&&c<='9') ret=(ret<<1)+(ret<<3)+c-'0',c=getchar();
	return ch=='-'?-ret:ret;
}
int main()
{
	int n=read();
	int a[n+2],maxn=-INF,minn=INF;
	for(int i=1;i<=n;i++)
	{
		a[i]=read();
		minn=min(minn,a[i]);
		maxn=max(maxn,a[i]);
	}
	printf("%d %d",minn,maxn);
	return 0;
}

输出

image
image

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int INF = 0x3f3f3f3f;
inline ll read()
{
	ll ret=0;char ch=' ',c=getchar();
	while(!(c>='0'&&c<='9')) ch=c,c=getchar();
	while(c>='0'&&c<='9') ret=(ret<<1)+(ret<<3)+c-'0',c=getchar();
	return ch=='-'?-ret:ret;
}
int main()
{
	for(int i=1;i<=5;i++)
	{
		int x=read();
		switch(x/10)
		{
			case 10: cout<<"A+"<<endl;break;
			case 9: cout<<"A"<<endl;break;
			case 8: cout<<"B"<<endl;break;
			default: cout<<"C"<<endl; 
		}
	}
	return 0;
}

输出

image
image

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int INF = 0x3f3f3f3f;
inline ll read()
{
	ll ret=0;char ch=' ',c=getchar();
	while(!(c>='0'&&c<='9')) ch=c,c=getchar();
	while(c>='0'&&c<='9') ret=(ret<<1)+(ret<<3)+c-'0',c=getchar();
	return ch=='-'?-ret:ret;
}
char s[10];
int buc[30];
bool prime(int x)
{
	if(x==1||!x) return false;
	for(int i=2;i<=sqrt(x);i++)
		if(x%i==0) return false;
	return true;
}
int main()
{
	cin>>s;
	int len=strlen(s);
	for(int i=0;i<len;i++)	
		buc[s[i]-'a'+1]++;
	for(int i=1;i<=26;i++)	
	{
		if(prime(buc[i])) printf("%c\n",('a'+i-1));
	}
	return 0;
}

输出

image

image

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int INF = 0x3f3f3f3f;
inline ll read()
{
	ll ret=0;char ch=' ',c=getchar();
	while(!(c>='0'&&c<='9')) ch=c,c=getchar();
	while(c>='0'&&c<='9') ret=(ret<<1)+(ret<<3)+c-'0',c=getchar();
	return ch=='-'?-ret:ret;
}
int main()
{
	int n=read();
	int a[20];
	int cnt=0,x=n;
	while(x)
	{
		a[++cnt]=x%10;
		x/=10;
	}
	for(int i=cnt;i>=1;i--) cout<<a[i];
	puts("");
	int m=0;
	for(int i=cnt;i>=1;i--)
	{
		m+=a[i];
		if(i!=1) m*=10;
	}
	cout<<m;
	return 0;
}

输出

image

总结

Lab3 的题目整体比较简单,所以没有什么可说的。思考的都在代码中体现了,就不过多赘述了。

posted @ 2023-10-31 19:14  conprour  阅读(6)  评论(0编辑  收藏  举报