姓名:任光烨 日期:2018年7月20日
今日学习任务:学习Linux操作指令,在Linux环境下完善通讯录程序,用*输出sin cos函数等。
今日完成情况:都已完成,200~300代码。
今日开发中出现的问题汇总:无。
今日未解决问题:无。
今日开发收获:学习并操练Linux操作指令。
自我评价:一般。
其他:附课堂笔记以及程序。
练习题程序:
1-1
#include<stdio.h>
#include<math.h>
int main()
{
float y;
float x,m;
for(y=1;y>=-1;y-=0.1)
{
m=asin(y)*10;
for(x=-15;x<m;x++)
{
printf(" ");
}
printf("*");
for(;x<46-m;x++)
{
printf(" ");
}
printf("*\n");
}
while(1);
}
1-2
#include<stdio.h>
#include<math.h>
int main()
{
float y;
float x,m;
for(y=1;y>=-1;y-=0.1)
{
m=acos(y)*10;
for(x=1;x<m;x++)
{
printf(" ");
}
printf("*");
for(;x<62-m;x++)
{
printf(" ");
}
printf("*\n");
}
while(1);
}
2-1
#include<stdio.h>
#include<math.h>
int main()
{
int x,a,m,n;
double y;
for(a=0;a<=20;a++)
{
y=0.1*a;
m=acos(1-y)*10;
n=45*(y-1)+31;
for(x=0;x<=62;x++)
{
if(x==m&&x==n)
{
printf("+");
}
else if(x==n)
{
printf("+");
}
else if(x==m||x==62-m)
{
printf("*");
}
else printf(" ");
}
printf("\n");
}
while(1);
}
2-2
#include<stdio.h>
#include<math.h>
int main()
{
int a,m,n;
double y,x;
for(a=0;a<=20;a++)
{
y=0.1*a;;
m=acos(1-y)*10;
n=asin(1-y)*10;
for(x=0;x<=62;x++)
{
if(x==n||x==62-n)
{
printf("*");
}
else if(x==m||x==62-m)
{
printf("*");
}
else printf(" ");
}
printf("\n");
}
while(1);
}
通讯录2.0版本
#include<stdio.h>
#include<string.h>
int i=0;
struct
{
int num;
char name[10];
unsigned long int tel;
}stu[10];
void screen1();
void screen2()
{
int b=0;
for(b=0;b<i;b++)
{
printf("序号为:%d\n",stu[b].num);
printf("姓名为:%s\n",stu[b].name);
printf("电话为:%lu\n",stu[b].tel);
}
screen1();
}
void screen3()
{
int c=0,d=0;
for(c=i;c<10;c++)
{
// printf("请输入序号:");
// scanf("%d",&stu[c].num);
printf("请输入姓名:");
scanf("%s",stu[c].name);
printf("请输入号码:");
scanf("%lu",&stu[c].tel);
printf("输入成功\n");
i++;
lopa:printf("继续输入请按1,退出请按2\n");
printf("请输入:");
scanf("%d",&d);
if(d==1);
else if(d==2) break;
else
{
goto lopa;
}
if(i==9)
{
printf("通讯录已满");
}
}
screen1();
}
void screen4()
{
int e=0,f=0,g=0;
for(g=0;g<i;g++)
{
printf("序号为:%d\n",stu[g].num);
printf("姓名为:%s\n",stu[g].name);
printf("电话为:%lu\n",stu[g].tel);
}
printf("请选择需要删除的序号:");
scanf("%d",&e);
for(f=e;f<i;f++)
{
// stu[f-1].num=stu[f].num;
strcpy( stu[f-1].name,stu[f].name);
stu[f-1].tel=stu[f].tel;
}
// stu[i-1].num=0;
//strcpy(stu[i-1].name,NULL);
stu[i-1].tel=0;
i--;
printf("删除成功\n");
screen1();
}
void screen5()
{
int j=0,k=0;
char name1[10];
unsigned long int aaa=0;
kkk: printf("请选择查找方法:1.按电话号码查找 2.按姓名查找 3.返回主菜单\n");
printf("请输入:");
scanf("%d",&j);
if(j==1)
{
printf("请输入所要查询的电话号码:");
scanf("%lu",&aaa);
for(k=0;k<10;k++)
{
if(aaa==stu[k].tel)
{
printf("已找到相关信息:\n");
printf("序号为:%d\n",stu[k].num);
printf("姓名为:%s\n",stu[k].name);
printf("电话为:%lu\n",stu[k].tel);
break;
}
if(k==9)
{
printf("未找到相关信息\n");
}
}
}
else if(j==2)
{
printf("请输入所要查找的姓名:");
scanf("%s",name1);
for(k=0;k<10;k++)
{
if(strcmp(name1,stu[k].name)==0)
{
printf("已找到相关信息:\n");
printf("序号为:%d\n",stu[k].num);
printf("姓名为:%s\n",stu[k].name);
printf("电话为:%lu\n",stu[k].tel);
break;
}
if(k==9)
{
printf("未找到相关信息\n");
}
}
}
else if(j==3)
{
screen1();
}
else
{
printf("输入错误\n");
goto kkk;
}
screen1();
}
void screen1()//主屏幕
{
int a=0;
printf("****************************\n");
printf("************功能************\n");
printf(" 1. 显示通讯录 \n");
printf(" 2. 添加新信息 \n");
printf(" 3. 删除信息 \n");
printf(" 4. 查找信息 \n");
printf("****************************\n");
printf("请选择功能(1~4):");
scanf("%d",&a);
switch(a)
{
case 1:screen2();break;
case 2:screen3();break;
case 3:screen4();break;
case 4:screen5();break;
default :printf("输入错误\n");break;
}
screen1();
}
int main()
{
int h=0;
for(h=0;h<10;h++)
{
stu[h].num=h+1;
}
screen1();
return 0;
}