c语言 第二次实验报告

·实验题目,设计思路,实现方法

11-7 找鞍点

一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。

本题要求编写程序,求一个给定的n阶方阵的鞍点。

利用双重for循环,分别比较各列元素和各行元素即可。

12-4字符串大小写字母转换

本题要求编写程序,对一个以“#”结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出。

先判断为大写字母还是小写字母,再通过+32或-32来进行转换

13-2利用指针寻找最大值

本题要求实现一个简单函数,找出两个数中的最大值

函数接口定义:

void findmax( int *px, int *py, int *pmax );

其中px和px是用户传入的两个整数的指针。函数findmax应找出两个指针所指向的整数中的最大值,存放在pmax指向的位置。

因为利用指针函数不仅是传值,还可以通过所指向地址的变化来传递变量。所以在比较完大小之后还可以进行转换。

14-6通讯录的录入与显示

通讯录中的一条记录包含下述基本信息:朋友的姓名、出生日期、性别、固定电话号码、移动电话号码。 本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录。

构建包含通讯录信息的结构数组,利用下标查找。

15-7用递归求斐波那契数列

本题要求实现求Fabonacci数列项的函数。Fabonacci数列的定义如下:

f(n)=f(n−2)+f(n−1) (n≥2),其中f(0)=0,f(1)=1。

利用递归思想,在函数里调用函数本身来实现复杂的循环计算。

二·源程序

11-7找鞍点

 

for(i=0; i<n; i++)
{
y=i;
for(p=0; p<n; p++) 
{
if(a[i][k]<=a[i][p])
{
k=p;
}
}
for(j=0; j<n; j++)
{
if(a[y][k]>a[j][k])
{
y=j;
break;
}
}
if(i==y)
{
flag=0;
break;
}

 

12-4字符串大小转换

 { 

            if(str[i]>='a'&&str[i]<='z') 

                str[i]=str[i]-32; 

            else if(str[i]>='A'&&str[i]<='Z') 

                str[i]=str[i]+32; 

             i++; 

 } 

13-2利用指针寻找最大值

 

void findmax( int *px, int *py, int *pmax )
{
int a,b,max=0;
if(*px>*py){
*pmax=*px;
}else if(*px<*py){
*pmax=*py;
}


}

14-6通讯录的录入与显示

14-6 通讯录的录入与显示

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct ren{
char name[100];
char sex[100];
char sheng[100];
char shou[100];
char zuo[100];
};

int main(){
struct ren r1[100];
int n,m,i,j,a;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%s",r1[i].name);
scanf("%s",r1[i].sheng);
scanf("%s",r1[i].sex);
scanf("%s",r1[i].zuo);
scanf("%s",r1[i].shou);
}
scanf("%d",&m);
for(j=0;j<m;j++){
scanf("%d",&a);
if(a<=n-1&&a>=0){
printf("%s ",r1[a].name);
printf("%s ",r1[a].zuo);
printf("%s ",r1[a].shou);
printf("%s ",r1[a].sex);
printf("%s\n",r1[a].sheng);
}else{
printf("Not Found\n");
}
}
}

15-7用递归求斐波那契数列

int f( int n )
{
int result;
if(n == 0)
result = 0;
else if(n == 1)
result = 1;
else
result = f(n - 2) + f(n - 1);
return result;
}

三、遇到的问题和解决办法。

一、没有掌握指针的思想。

二、没有透彻理解递归的用法与精髓(类似“雇佣”制)。

三、还不能掌握链表的基本操作。

posted @ 2018-01-23 10:06  残名  阅读(828)  评论(0编辑  收藏  举报