IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 817-专业课学习-100~199 -> 正文阅读

[C++知识库]817-专业课学习-100~199

100-输出图案

//输出图案
#include<stdio.h>
int main(void)
{
	int i,j;
	for(i=1;i<=4;i++)
	{
		for(j=4-i;j>0;j--)
			printf(" ");
		for(j=1;j<=2*i-1;j++)
			printf("*");
		printf("\n");
	}
	
	for(i=1;i<4;i++)
	{
		for(j=1;j<=i;j++)
			printf(" ");
		for(j=2*(4-i)-1;j>=1;j--)
			printf("*");
		if(i!=3) 
			printf("\n");
	}
	return 0;
} 

101-找队友

//找队友
#include<stdio.h>
int main(void)
{
	char i,j,k;
	for(i='x';i<='z';i++)
	{
		for(j='x';j<='z';j++)
		{
			if(i!=j)
			{
				for(k='x';k<='z';k++)
				{
					if(k!=i&&k!=j)
					{
						if(i!='x' && k!='x' && k!='z')
						{
							printf("A--%c\nB--%c\nC--%c",i,j,k);
						} 
					} 
				}
			} 
		}
	}
	return 0;
} 

102-对数组逆序输出

//102-对数组逆序输出
#include<stdio.h>
int main(void)
{
	int i,a[10];
	for(i=0;i<10;i++)
		a[i]=i+1;
	for(i=9;i>=0;i--)
		printf("%d ",a[i]);
	return 0;
} 

103-用数组来处理Fibonacci数列问题

//用数组来处理Fibonacci数列问题
#include<stdio.h> 
int main(void)
{
	int i;
	int f[20]={1,1};
	for(i=2;i<20;i++)
		f[i]=f[i-2]+f[i-1];
	for(i=0;i<20;i++)
	{
		if(i%5==0)
			printf("\n");
		printf("%-12d",f[i]);
	}
	return 0;
} 

104-冒泡法-我发现我把它和选择排序有点混了,不能这个样子

//用冒泡法来解决排序
#include<stdio.h>
int main(void)
{
	float a[10],t;
	int i,j;
	for(i=0;i<10;i++)
		scanf("%f",&a[i]);
	for(i=0;i<9;i++)
	{
		for(j=0;j<9-i;j++)
		{
			if(a[j]>a[j+1])
			{
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
			}
		}
	}
	for(i=0;i<10;i++)
		printf("%.0f ",a[i]);
	return 0;
} 

105-二维数组的转换

//二维数组的转换
#include<stdio.h>
int main(void)
{
	int a[2][3],b[3][2];
	int i,j;
	for(i=0;i<2;i++)
	{
		for(j=0;j<3;j++)
		{
			scanf("%d",&a[i][j]);
			b[j][i]=a[i][j]; 
		}
	}
	for(i=0;i<3;i++)
	{
		for(j=0;j<2;j++)
		{
			printf("%d  ",b[i][j]);
		}
		printf("\n");
	}
		
			
} 

106-有一个3*4的矩阵,要求编程序输出其中最大的值,以及对应的行和列

//有一个3*4的矩阵,要求编程序输出其中最大的值,以及对应的行和列
#include<stdio.h>
int main(void)
{
	int i,j,max,ii=0,jj=0,a[3][4];
	for(i=0;i<3;i++)
	{
		for(j=0;j<4;j++)
		{
			scanf("%d",&a[i][j]);
			if(i==0&&j==0)
			{
				max=a[0][0];
			}
			if(max<a[i][j])
			{
				max=a[i][j];
				ii=i;
				jj=j;
			}
		} 
			
	}
	printf("%d %d %d",max,ii,jj);
	return 0;
} 

107-输出一个已知的字符串

//输出一个已知的字符串
#include<stdio.h>
#include<string.h>
int main(void)
{
	char a[20];
	gets(a);
	int len = strlen(a);
	//printf("%d\n",len);
	puts(a);
	return 0;
	
}

108-输出一个菱形图

//输出一个菱形图
#include<stdio.h>
int main(void)
{
	int t;
	scanf("%d",&t);
	int n=t/2+1;
	int i,j;
	
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=n-i;j++)
		{
			printf(" ");
		}
		printf("*");
		if(i>1)
		{
			for(j=1;j<=2*(i-1)-1;j++)
				printf(" ");
			printf("*");
		}
		printf("\n");
	}
	//下半部分 
	for(i=1;i<=n-1;i++)
	{
		for(j=1;j<=i;j++)
			printf(" ");
		printf("*");
		if(i!=n-1)
		{
			for(j=1;j<=2*(n-1-i)-1;j++)
			{
				printf(" ");
			}
			printf("*"); 
			printf("\n"); 
		}
	}
	return 0;
}

109-统计其中有多个单词

//109-统计其中有多个单词
#include<stdio.h>
int main(void)
{
	char string[81];
	int i,num=0,word=0;
	char c;
	gets(string);
	for(i=0;(c=string[i])!='\0';i++)
	{
		if(!( (c>= 'a' && c<= 'z')  || (c>= 'A' && c<= 'Z') )|| c== ' ')
		{
			word=0;
		}
		else if(word==0)
		{
			word=1;
			num++;
		}
	}
	printf("%d",num);
	return 0;
} 

111-用筛选法求100之内的素数

//用筛选法求100之内的素数
#include<stdio.h>
#include<math.h>
int main(void)
{
	int i,j,n,a[101];
	for(i=1;i<=100;i++)
		a[i]=i;
	a[1]=0;
	for(i=2;i<=sqrt(100);i++)
	{
		for(j=i+1;j<=100;j++)
		{
			if(a[i]!=0 && a[j]!=0)
				if(a[j]%a[i]==0)
					a[j]=0;
		}
	}
	for(i=2,n=0;i<=100;i++)
	{
		if(a[i]!=0)
		{
			printf("%5d",a[i]);
			n++;
		}
		if(n==10)
		{
			printf("\n");
			n=0;
		} 
	}
	return 0;
} 

112-用选择法对10个整数排序

//用选择法对10个整数排序
#include<stdio.h>
int main(void)
{
	int i,a[10],t,j;
	for(i=0;i<10;i++)
		scanf("%d",&a[i]);
	for(i=0;i<9;i++)
	{
		for(j=i+1;j<10;j++)
		{
			if(a[i]>a[j])
			{
				t=a[i];
				a[i]=a[j];
				a[j]=t;
			}
		}
	}
	for(i=0;i<10;i++)
		printf("%d ",a[i]);
	return 0;
}

113-求一个3*3的整数矩阵的对角线之和

//求一个3*3的整数矩阵的对角线之和
#include<stdio.h>
int main(void)
{
	int sum,a[3][3],i,j;
	for(i=0;i<3;i++)
		for(j=0;j<3;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<3;i++)
		sum += a[i][i];
	printf("%d",sum);
	return 0;
} 

114-有一个已排序好的数组,要求输入一个数后,按原来排序的规律将它插入数组中

//有一个已排序好的数组,要求输入一个数后,按原来排序的规律将它插入数组中
#include<stdio.h>
int main(void)
{
	int n;
	scanf("%d",&n);
	int a[n+10],i,j,t1,t2;
	for(i=1;i<=n;i++)
	{
		scanf("%d",&a[i]);
	}
	int num;
	scanf("%d",&num);
	//插入
	if(num>a[n])
		a[n+1]=num;
	else
	{
		for(i=n;num<a[i];i--)
		{
			a[i+1]=a[i];
		}
		a[i+1]=num;
	}
	
	for(i=1;i<=n+1;i++)
		printf("%d ",a[i]);
	return 0; 
}

115-插入排序

//插入排序
#include<stdio.h>
int main(void)
{
	int a[10]={0,3,2,4,1,8};
	int i,j;
	for(i=2;i<=6;i++)
	{
		if(a[i]<a[i-1])
		{
			a[0]=a[i];
			for(j=i-1;a[0]<a[j];j--)
				a[j+1]=a[j];
			a[j+1]=a[0];
		}
	}
	for(i=1;i<=5;i++)
		printf("%d ",a[i]);
	return 0;
} 

116-折半插入排序

//将一个数组中的值按逆序重排,折半查找
#include<stdio.h>
int main(void)
{
	int n;
	scanf("%d",&n);
	int a[n+10],low,high,mid,i,j;
	for(i=1;i<=n;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=2;i<=n;i++)
	{
		a[0]=a[i];
		low = 1,high=i-1;
		while(low<=high)
		{
			mid=(low+high)/2;
			if(a[mid]>a[0])
				high = mid-1;
			else
				low = mid+1;
		}
		for(j=i-1;j>=high+1;j--)
		a[j+1]=a[j];
		a[high+1]=a[0];
	}
	
	for(i=1;i<=n;i++)
		printf("%d ",a[i]); 

} 

117-去重之后按升序排序

//117-去重之后按升序排序
#include<stdio.h>
int main(void)
{
	int n,m;
	scanf("%d%d",&n,&m);
	int a[n],b[m],c[n+m],i,j,t;
	//输入数组,并合并
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
		c[i]=a[i];
	} 
	for(i=0;i<m;i++)
	{
		scanf("%d",&b[i]);
		c[n+i]=b[i];
	}
	
	//排序
	for(i=0;i<n+m-1;i++)
	{
		for(j=i+1;j<m+n;j++)
		{
			if(c[i]>c[j])
			{
				t=c[i];
				c[i]=c[j];
				c[j]=t;
			}
		}
	} 
	
	//按升序输出 
	for(i=0;i<n+m;i++)
	{
		if(i==0)
			printf("%d ",c[0]);
		else
		{
			if(c[i]!=c[i-1])
				printf("%d ",c[i]);
		}
	}
	return 0;
}

118-去重之后升序排序

//118-去重之后升序排列
#include<stdio.h>
int main(void)
{
	char a[10],b[10];
	int c[20],d[20],i,j,k=0,m=0,t;
	scanf("%s",a);
	scanf("%s",b);
	//合并并转为int数组
	for(i=0;a[i]!='\0';i++)
	{
		c[k]=a[i]-'0';
		k++;
	} 
	for(i=0;b[i]!='\0';i++)
	{
		c[k]=b[i]-'0';
		k++;
	}
	//去重
	for(i=0;i<k-1;i++)
	{
		for(j=i+1;j<k;j++)
		{
			if(c[i]==c[j] &&c[i]!=-1 && c[j]!=-1)
				c[j]=-1;
		}
	} 
	
	//转化为数组
	for(i=0;i<k;i++)
	{
		if(c[i]!=-1)
		{
			d[m]=c[i];
			m++;
		}
	} 
	
	//排序
	for(i=0;i<m-1;i++)
	{
		for(j=0;j<m-1-i;j++)
		{
			if(d[j]>d[j+1])
			{
				t=d[j];
				d[j]=d[j+1];
				d[j+1]=t;
			}
		}
	} 
	
	for(i=0;i<m;i++)
		printf("%d ",d[i]);
	return 0;
} 
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-02 16:34:44  更:2021-12-02 16:36:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:17:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码