顺序查找/二分查找/冒泡排序/打印金字塔/打印乘法表
程序员文章站
2024-02-24 14:35:16
...
顺序查找
#include<stdio.h>
int seqSearch(int arr[],int arrLen ,int val){
int i;
for(i=0;i<arrLen;i++){
if(arr[i]==val){
return i;
}
}
return -1;
}
void main(){
int arr[]={23,1,34,89,101};
int arrLen = sizeof(arr)/sizeof(int);
int index = seqSearch(arr,arrLen,101);
if(index!=-1){
printf("找到下标为%d",index);
}
else
printf("没有找到!");
getchar();
}
对有序数组进行二分查找
#include <stdio.h>
int binarySearch(int arr[],int leftIndex,int rightIndex,int findVal){
if (leftIndex > rightIndex)
return -1;
int midIndex = (leftIndex + rightIndex)/2;
int midVal = arr[midIndex];
if(midVal > findVal)
binarySearch(arr,leftIndex,midIndex-1,findVal);
else if(midVal < findVal)
binarySearch(arr,midIndex-1,rightIndex,findVal);
else
return midIndex;
}
void main(){
int arr[] = {1,8,10,89,1000,1234};
int arrLen = sizeof(arr)/sizeof(int);
int index = binarySearch(arr,0,arrLen-1,1000);
if(index != -1)
printf("找到index = %d",index);
else
printf("没找到");
getchar();
}
嵌套循环求总分平均分
#include <stdio.h>
void main()
{
int stuNum = 5;
int classNum = 3;
double classTotalScore = 0.0;
double score = 0.0;
int i,j;
double AllclassTotalScore = 0.0;
for(i=1;i<=classNum;i++){
classTotalScore = 0.0;
for(j=1;j<=stuNum;j++){
printf("\n请输入第%d班级的第%d个学生的成绩 ",i,j);
scanf("%lf",&score);
classTotalScore += score;
}
AllclassTotalScore += classTotalScore;
printf("\n 第%d个班级的平均分 = %.2f",i,classTotalScore/stuNum);
}
printf("\n 三个班级的总成绩为%.2f ",AllclassTotalScore);
printf("\n 所有班级的平均分为 %.2f",AllclassTotalScore/(stuNum * classNum));
getchar();
getchar();
}
九九乘法表
#include <stdio.h>
void main(){
int i,j;
for(i=1;i<=9;i++){
for(j=1;j<=i;j++)
printf("%d * %d = %d ",i,j,i*j);
printf("\n");
}
getchar();
}
打印实心金字塔
#include<stdio.h>
void main(){
int i,j,k,TotalLevel;
printf("请输入金字塔的层数");
scanf("%d",&TotalLevel);
for(i=1;i<=TotalLevel;i++){
for(k=1;k<=TotalLevel-i;k++){//控制层数
printf(" ");
}
for(j=1;j<=(i*2)-1;j++){//每行输出若干个*
printf("*");
}
printf("\n");
}
getchar();
getchar();
}
打印空心金字塔
int i,j,k,TotalLevel;
scanf("%d",&TotalLevel);
for(i=1;i<=TotalLevel;i++){
for(k=1;k<=TotalLevel-i;k++){//控制层数
printf(" ");
}
for(j=1;j<=(i*2)-1;j++){//每行输出若干个*
if(j==1||j==(i*2)-1||i==TotalLevel)//每行第一个和最后一个以及最后一层的全部输出*
printf("*");
else
printf(" ");
}
printf("\n");
}
getchar();
getchar();
}
冒泡排序
#include<stdio.h>
void main(){
int i,j,temp;
int arr[]={98,45,100,20,40,55,78};
int arrLen = sizeof(arr)/sizeof(int);
for(i=0;i<arrLen-1;i++){
for(j=0;j<arrLen-1;j++){
if(arr[j]>arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for(j=0;j<=arrLen-1;j++)
printf("%d ",arr[j]);
getchar();
}
上一篇: js金字塔 乘法表
下一篇: python--闭包,递归函数与回调函数
推荐阅读
-
顺序查找/二分查找/冒泡排序/打印金字塔/打印乘法表
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解_PHP
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解_PHP
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解_PHP教程
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解_PHP教程
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
-
php中常用的冒泡排序&快速排序算法以及二分查找&顺序查找的算法实现
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解_php技巧
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解