@TOC
1.输入10个学生成绩,计算及格人数,平均成绩,总成绩。
#include<stdio.h>
int main(){float score[10];int i ,cut;float avar=0.0,sum=0.0;for(i=0;i<10;i++)scanf("%f",&score[i]);//输入10个学生的成绩cut=0;for(i=0;i<10;i++){if(score[i]>60)cut++;sum=sum+score[i];}avar=sum/10.0;printf("sum:%.2f\n",sum);printf("cut:%.2d\n",cut);printf("avar:%.2f\n",avar);}
2.删除数组b中下表为2的元素10
#include<stdio.h>
int main(){int i ;int b[6]={90,80,10,60,40,30};int n=6;for(i=2;i<n-1;i++){//删除数组b中下表为2的元素10 b[i]=b[i+1];n=n-1;for(i=0;i<n;i++)printf("%d\t",b[i]);}}
3.在数组b下标为2的元素30之前插入新元素77
#include<stdio.h>
//在数组b下标为2的元素30之前插入新元素77
int main(){int i,n ;int b[8]={100,20,30,40,50,99};n=6;for(i=0;i<n;i++)printf("%d\t ",b[i]);printf("\n");for(i=n;i>3;i--)b[i]=b[i-1];b[2]=77;n=n+1;//数组元素个数+1;for(i=0;i<n;i++)printf("%d\t ",b[i]);}
4.数组收纳:50以为能够被7或者11整除的整数放在数组a里面
#include<stdio.h>
//数组收纳:50以为能够被7或者11整除的整数放在数组a里面
int main(){int a[50];int n,i,j;//符合要求的元素放在数组a里面for(n=1;n<50;n++){if(n%7==0||n%11==0)a[j++]=n;}//输出数组afor(i=0;i<j;i++)printf("%d\t ",a[i]);printf("\n");}
5.将50-100里面所有的素数放在数组b内
#include<stdio.h>
int main(){//将50-100里面所有的素数放在数组b内int b[50];int i,n ,j=0;for(n=50;n<=100;n++){for(i=2;i<n;i++)if(n%i==0)break;if(i>=n)b[j++]=n;}for(i=0;i<j;i++)printf("%d\t",b[i]);printf("\n");}
6.10名学生的考试成绩存在数组S内,成绩及格的学生,低于70分的要做加强训练;60-70的成绩存在数组d内
#include<stdio.h>
//10名学生的考试成绩存在数组S内,成绩及格的学生,低于70分的要做加强训练。
//60-70的成绩存在数组d内。
#define N 10
int main(){float s[N]={79,30,77.5,88.5,100,99.5,60,60.5,66,99};float d[N]; // 用于存储60-70分之间的成绩int i,j=0 ;//这里j要从0开始。for(i=0;i<N;i++){//用i遍历整个数组s[N]if(s[i]>=60&&s[i]<=70){//找到数组s里面60--70的学生d[j++]=s[i];}} //存到数组d里面for(i=0;i<j;i++)printf("%0.2f\t ",d[i]);printf("\n");}
7.顺序查找:查找元素为70的数组
#include<stdio.h>
//顺序查找:查找元素为70的数组int main(){int a[9]={30,40,50,60,70,80,11,23};int i;for(i=0;i<9;i++){if(a[i]==70){printf("70 is at index %d\n",i);break;}}if(i>=9)printf("NO 70\n");
}
8.二分查找
#include<stdio.h>
int main(){int a[9]={3,4,5,6,7,8,9,11,12};int low=0;int high=8;int mid;while(low<=high){mid=(low+high)/2;if(a[mid]<7)low=mid+1;else if(a[mid]>7)high=mid-1;else break;} if(low>high)printf(" can not find 7\n");else printf("7 is at index %d",mid);}
9.选择排序
#include<stdio.h>
//选择排序
#define N 5
int main(){int b[N]={77,67,58,99,44};int t,i,j;for(i=0;i<N-1;i++)for(j=i+1;j<N;j++)if(b[i]>b[j]){t=b[i];b[i]=b[j];b[j]=t; }for(i=0;i<N;i++)printf("%d\t ",b[i]);printf("\n");}