-
简述Linux下的C语言开发流程以及每个步骤对应的工具。
需求分析,算法设计
程序代码编辑
编译
功能逻辑调试
链接,生成可执行文件 编辑工具:vim和emacs等
编译工具:gcc编译器
调试工具:GDB
项目管理和维护工具:make -
sqrtf是平方根函数,对其标准调用格式说明如下
#include <math.h>
float sqrtf(float x);
使用该函数以及scanf和printf函数实现从键盘输入n个实型数据,分别求其对应的平方根,并且在屏幕上输出。
#include <math.h>
#include <stdio.h>
int main(void)
{
int n,i;
printf("please enter n:\n");
scanf("%d",&n);
for(i=0;i<n;i++){
float x,y;
printf("please enter num:\n");
scanf("%f",&x);
y = sqrtf(x);
printf("The sqrt is:%f\n",y);
}
return 0;
}
Linux环境下gcc编译时要加-lm,否则无法链接到math库,报错undefined reference to `sqrtf’
- 使用malloc函数编写一段程序,用于模拟在内存中为一个手机的通讯录增加存储空间的情况,该通讯录的结构体定义为struct co,对其中各个分量说明如下。
·index:编号。
·name:姓名。
·MTel:手机号码。
·Tel:座机号码。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
struct co
{
int index;
char name[20];
char MTel[12];
char Tel[12];
};
int x;
int main(void)
{
struct co *p;
char ch;
printf("Do you add a user?Y/N\n");
ch = getchar();
if(ch=='y'||ch=='Y'){
p = (struct co *)malloc(sizeof(struct co));
p->index = ++x;
printf("Please enter name:\n");
scanf("%s",p->name);
printf("Please enter mobile:\n");
scanf("%s",p->MTel);
printf("Please enter home tel:\n");
scanf("%s",p->Tel);
printf("index:%d\nname:%s\nmobile:%s\nhome tel:%s\n",p->index,p->name,p->MTel,p->Tel);
}
}