c语言的2个实验题

一 实验目的
1. 熟练数组的概念、定义、初始化和输入输出方法
2. 掌握字符数组和字符串函数的使用
3. 掌握使用数组的编程方法
二、实验内容
1. 用选择法对20个整数进行排序,要求这20个数用scanf函数输入
2. 已知有15个数存放在一个数组中,现要求概据输入的一个数用折 半 查找法找出该数在数组中的位置。如果数组中不存在该数,就输出“此数不存在”。数组的初始化在程序中完成。
3. 把1999年每月的天数初始化到数组中,计算1999年某月某日是星期几(1999年元旦是星期四,二月份有28天)

实验4 循环结构程序设计

一、 实验目的
1. 进一步了解循环基本概念,熟练掌握三种循环语句的使用
2. 掌握break和continue语句的使用
3. 熟练掌握用循环的方法实现各种算法
二、实验内容
1. 编程计算1至50中是7的倍数的数值之和
2. 编程输入一批正整数,并求出最大值和最小值,输入0结束循环。
3. 编程输出所有的“水仙花数”。所谓水仙花数,是指一个三位十进制数,该数的各位数字立方之和等于该数本身。例如:153是一个水仙花数,因为13+5 3+3 3=153

这么多题才给15分少了。。。
====================================================

1,排序:
#include<stdio.h>
int main()
{
int a[20],i,j,n=0,m,temp;
printf("请输入20个整数:\n" );
while(n<20){scanf("%d",&a[n]);n++;}
for(i=0;i<20;i++){
m=i;
for(j=i+1;j<20;j++)
if(a[m]>a[j+1])m=j+1;
temp=a[i];
a[i]=a[m];
a[m]=temp;
}
i=0;
do {printf("%d",a[i]);
i++;}
while(i<20);
}

=============2================
#include<stdio.h>
int main()
{ int mid(int,int,int);
int a[15]={1,3,5,4,6,7,8,10,12,15,18,19,23,24,25};
int n,i,j,m;
printf("数组中有1~30的数15个,输入想查找的数:");
scanf("%d",&n);
m=7;
if(n>a[7]){
for(j=8;j<15;j++)
if(a[j]==n)i=j;
else i=-1;
}
else if(n<a[7]){
for(j=0;j<6;j++)
if(a[j]==n)i=j;
else i=-1;
}
else if(n==a[7])i=7;
else i=-1;
if(i<0)printf("此数不存在!");
else printf("该数在数组第%d位",i);
return 0;
}

==============3==================
#include<stdio.h>
int main()
{
int mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int i,j,n=0,week,m,d;
printf("输入月:");
scanf("%d",&m);
printf("输入日:");
scanf("%d",&d);
if(m==1)n=d+3;
else
{n=0;
for(i=1;i<m;i++)n+=mon[i];
n+=d+3;}
week=n%7;
if(week==0)printf("这天是星期日");
else printf("这天是星期%d",week);

}
==================1-50========================
#include<stdio.h>
int main()
{int i,sum=0,n=50;
for(i=1;i<=n;i++)
if(i%7==0)sum+=i;
printf("%d",sum);
}

============最大最小======================
#include<stdio.h>
int main()
{int a[500],max,min,i=0,sum=0,n,j;
do {scanf("%d",&n);
a[i]=n;
i++; }
while(n!=0);
max=a[0];
min=a[0];
for(j=1;j<=i;j++){
if(a[j]>=max)max=a[j];
if(a[j]<=min)min=a[j];}
printf("最大值:%d\n最小值:%d\n",max,min);
}
==============水仙花数================================

#include<stdio.h>
#include<math.h>
int main()
{int i;
int a,b,c;

for(i=100;i<1000;i++){
a=i%10;
b=(i/10)%10;
c=i/100;
if((pow(a,3)+pow(b,3)+pow(c,3))==i)printf("%d\n",i);}
}
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜