重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

c语言函数ctof c语言函数返回类型的默认定义类型是

c语言编程问题,求解,谢谢我写的代码错了,也有可能我没看懂题目,这个题目就是这样

#includestdio.h

十余年的武昌网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整武昌建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“武昌网站设计”,“武昌网站推广”以来,每个客户项目都认真落实执行。

#includestdlib.h

#define SIZE 50

#define x 32

#define y 9

#define z 5

float ctof(float F,float c)

{

F= x+c*y/z;

return (F);

}

int main(void)

{

float F=0, c;

for(c=-1000; c=1500;c+=SIZE)

{

ctof(F,c);

printf("%12.4f℃ %12.4fF\n", c, ctof(F,c));

}

system("pause");

return 0;

}

c语言,急!!!

我发了几个我以前学数据结构的时候做的程序,你自己看着选吧

许多程序只要你换点关键字(词)就可以变成你想要的,每个完整程序前我用一行星号隔开了并编号了,别搞错了说我程序不完整哈

1.

// sqlist.cpp : 定义控制台应用程序的入口点。

//学生成绩管理系统(简单版)

#include "stdio.h"

#include "conio.h"

#include "string.h"

#include "process.h"

#include malloc.h

#define MAXSIZE 100

#define LISTNCREMENT 10

struct student

{

char sNo[10];

char sName[10];

float fScore1;

float fScore2;

float fScore3;

float fTotal;

};

typedef struct student ElemType;

//顺序表定义

struct sqlist

{

ElemType *elem;

int length;

};

struct statistic

{

int iA;

int iB;

int iC;

int iD;

int iE;

};

typedef struct statistic Level;

typedef int status;

/********************************************

形式:status Init(sqllist sl)

功能:顺序表初始化函数。

输入:顺序表引用变量。

输出:返回1表示初始化成功,0表示失败。

*********************************************/

status Init(sqlist sl)

{

sl.elem = new ElemType[MAXSIZE+1];

sl.length = 0;

if (!sl.elem) return 0;

else return 1;

}

status Creat(sqlist sl)

{

if (!sl.elem) return 0;

printf("输入表的长度:");

scanf("%d",sl.length);

if (sl.length MAXSIZE)

{

sl.elem=(ElemType*)realloc(sl.elem,(sl.length+LISTNCREMENT)*sizeof(ElemType));

return 0;

}

for (int i=1; isl.length+1; i++)

{

printf("输入学号 名字 成绩1 成绩2 成绩3\n");

scanf("%s%s%f%f%f",sl.elem[i].sNo,sl.elem[i].sName,sl.elem[i].fScore1,sl.elem[i].fScore2,sl.elem[i].fScore3);

}

return 1;

}

status OutPut(sqlist sl)

{

if (!sl.length)

{

printf("表为空!");

return 0;

}

else if (sl.length = 0 || sl.length MAXSIZE)

{

printf("表没有初始化!");

return 0;

}

printf("表如下(包含%d个记录):",sl.length);

printf("\n学号\t姓名\t成绩1\t成绩2\t成绩3\n");

for (int i=1; isl.length+1; i++)

{

printf("%s\t%s\t%f\t%f\t%f\n",sl.elem[i].sNo,sl.elem[i].sName,sl.elem[i].fScore1,sl.elem[i].fScore2,sl.elem[i].fScore3);

}

return 1;

}

status Insert(sqlist sl,int iPos,ElemType elem)

{

if (sl.length == MAXSIZE)

{

printf("表满,不能插入");

return 0;

}

if (iPos sl.length+1)

{

printf("插入位置不正确!");

return 0;

}

//如果是插入到最后一个

if (iPos == sl.length+1 )

{

sl.elem[sl.length+1] = elem;

sl.length++;

return 1;

}

//移动元素

for (int i=sl.length; i=iPos; i--)

{

sl.elem[i+1] = sl.elem[i];

}

sl.elem[iPos] = elem;

sl.length++;

return 1;

}

status Delete(sqlist sl,int iPos,ElemType elem)

{

if (!sl.length)

{

printf("表空,不能删除");

return 0;

}

if (iPos sl.length)

{

printf("删除位置不正确!");

return 0;

}

if (iPos == sl.length)

{

elem = sl.elem[sl.length];

sl.length--;

return 1;

}

elem = sl.elem[iPos];

for (int i=iPos+1; i=sl.length; i++)

{

sl.elem[i-1] = sl.elem[i];

}

sl.length--;

return 1;

}

status Find(sqlist sl,char *no)

{

for (int i=1; i=sl.length; i++)

if (strcmp(sl.elem[i].sNo,no)==0)

{

printf("找到的学生成绩信息\n%s\t%s\t%f\t%f\t%f\n",sl.elem[i].sNo,sl.elem[i].sName,sl.elem[i].fScore1,sl.elem[i].fScore2,sl.elem[i].fScore3);

return 1;

}

if (isl.length)

{

printf("没有该记录!");

return 0;

}

return 0;

}

/*void GetLevel(sqlist sl,int iA,int iB,int iC,int iD,int iE)

{

for(int i=1;i=sl.length;i++)

{

}

}*/

/*void SetTotalScore(sqlist sl)

{

}

*/

int main()

{

char ch;

int flag;

sqlist sl;

int iPos;

ElemType elem;

char *name = new char[10];

printf("/******学生成绩管理系统*****/\n");

printf("\n/******本系统基本操作如下:\n/******0:退出\n/******1:初始化\n/******2: 创建\n/******3: 输出\n");

printf("/******4: 插入\n/******5: 删除\n/******6: 查找\n");

//printf("请输入操作提示:(0~6)");

while (1)

{

printf("请输入操作提示:(0~6)");

rewind(stdin);

ch = getchar();

switch (ch)

{

case '0':

break;

case '1':

flag = Init(sl);

if (flag) printf("初始化成功!");

else printf("初始化失败!");

break;

case '2':

flag = Creat(sl);

if (flag) printf("创建成功!");

else printf("创建失败!");

break;

case '3':

OutPut(sl);

break;

case '4':

printf("输入插入位置:");

scanf("%d",iPos);

printf("输入插入元素:学号 姓名 成绩1 成绩2 成绩3\n");

scanf("%s%s%f%f%f",elem.sNo,elem.sName,elem.fScore1,elem.fScore2,elem.fScore3);

flag = Insert(sl,iPos,elem);

if (flag) printf("插入成功!");

else printf("插入失败!");

break;

case '5':

printf("输入删除位置:");

scanf("%d",iPos);

flag = Delete(sl,iPos,elem);

if (flag) printf("删除成功!");

else printf("删除失败!");

break;

case '6':

printf("输入学号:");

scanf("%s",name);

flag = Find(sl,name);

break;

default:

continue;

}

if (ch == '0')

{

if (sl.length =0 sl.length = MAXSIZE)

delete []sl.elem;

_exit(1);

}

//printf("请输入操作提示:(0~6)");

}

return 0;

}

***************************************************************

2.

//四则运算.cpp

#include"stdio.h"

#include"stdlib.h"

#include"conio.h"

#include"string.h"

double fhe(double s);

double fcha(double s);

double fji(double s);

double fsh(double s);

double a,b,s;;

char c;

int main(void)

{

int n;

printf("\t\t\t***--------简单四则运算---------***\t\t\t\n");

printf("\t\t*--1.求和\t\t*--2.求差\t\t\n");

printf("\t\t*--3.求积\t\t*--4.求商\t\t\n");

printf("\t\t*--0.退出\t\t\n\n");

printf("\t\t请输入选择(1~4):");

scanf("%d",n);

switch(n)

{

case'1':double fhe(double s);break;

case'2':double fcha(double s);break;

case'3':double fji(double s);break;

case'4':double fsh(double s);break;

case'0':exit(0);

default:printf("Unknown operator!\n");break;

}

system("cls");

return 0;

}

double fhe(double s)

{

scanf("%lf%c%lf",a,c,b);

s=a+b;

printf("%lf%c%lf=%.2f",a,c,b,s);

return s;

}

double fcha(double s)

{

scanf("%lf%c%lf",a,c,b);

s=a-b;

printf("%lf%c%lf=%.2f",a,c,b,s);

return s;

}

double fji(double s)

{

scanf("%lf%c%lf",a,c,b);

s=a*b;

printf("%lf%c%lf=%.2f",a,c,b,s);

return s;

}

double fsh(double s)

{

scanf("%lf%c%lf",a,c,b);

s=a/b;

printf("%lf%c%lf=%.2f",a,c,b,s);

return s;

}

**********************************************************************

3.

//表达式求值转化并求值.cpp

#include stdlib.h

#include stdio.h

#include conio.h

#include string.h

#define maxsize 100

#define error -6

typedef struct //运算符栈

{

char *base;

char *top;

int stacksize;

}sqstack;

typedef struct //操作数栈

{

double *base;

double *top;

int stacksize;

}dbstack;

void creat_charstack_exp(sqstack s)

{

s.base = new char[maxsize];

if(!s.base) exit(1);

s.top=s.base;

s.stacksize=maxsize;

}

int popchar_exp(sqstack s,char e)

{

if(s.top==s.base)

{

printf("栈已空!");

return 0;

}

e=*--s.top;

return 1;

}

int getchar_exp(sqstack s,char e)

{

if(s.top==s.base)

{

printf("栈已空!");

return 0;

}

e=*(s.top-1);

return 1;

}

int emptychar_exp(sqstack s)

{

if(s.top==s.base)

{

printf("栈已空!");

return 1;

}

return 0;

}

int pushchar_exp(sqstack s,char e)

{

if(s.top-s.base=s.stacksize)

{

printf("栈已满!");

return 0;

}

*s.top++=e;

return 1;

}

void disp(sqstack s)//显示元素

{

char *p=s.top;

while(p!=s.base){

printf("%c ",*(p-1));p--;

}

printf("\n");

}

void creat_dbstack_exp(dbstack l)

{

l.base=new double[maxsize];

if(!l.base) exit(1);

l.top=l.base;

l.stacksize=maxsize;

}

int pushdb_exp(dbstack L,double e)

{

if(L.top=L.stacksize+L.base)

{

printf("栈已满!");

return 0;

}

*L.top++=e;

return 1;

}

int popdb_exp(dbstack L,double e)

{

if(L.top==L.base)

{

printf("栈空!");

return 0;

}

e=*--L.top;

return 1;

}

int prior(char a)

{

if(a=='+'||a=='-') return 1;

if(a=='#') return -1;

if(a=='*'||a=='/') return 2;

if(a=='(') return 0;

else return error;

}

void input(char exp[],char expcl[]){

int i=0,j=0;

while(exp[i]){

if(i==0 exp[i]=='-'){

expcl[j++]='0'; expcl[j++]='-'; i++;

}

else if(exp[i]=='(' exp[i+1]=='-'){

expcl[j++]='(';

expcl[j++]='0';

expcl[j++]='-';

i=i+2;

}

else {expcl[j++]=exp[i++];}

}

expcl[j++]='#';

expcl[j]='\0';

}

void transform_exp(char exp[],char tran[])

{

int i=0,j=0,n=0;

char c;

sqstack s;

creat_charstack_exp(s);

pushchar_exp(s,'#');

while(!emptychar_exp(s))

{ printf("\n当前遇到的是:%c\n",exp[i]);

if(exp[i]='0' exp[i]='9'||exp[i]=='.')

tran[j++]=exp[i];

else {

if(exp[i]!='#')tran[j++]=' ';

switch(exp[i]){

case '(': pushchar_exp(s,'('); break;

case ')': popchar_exp(s,c);

while( c!='('){

tran[j++]=c;

popchar_exp(s,c);

}

break;

default: while(getchar_exp(s,c)prior(c)=prior(exp[i])){

if(c!='#')tran[j++]=c;

popchar_exp(s,c);

}

if(exp[i]!='#')pushchar_exp(s,exp[i]);

}

}

i++;

printf("当前的后缀式是:");

for(n=0;nj;n++)

putchar(tran[n]);

putchar('\n');

printf("当前的运算符栈是:");

disp(s);

getch();

}

tran[j]='\0';

}

double ctof(char c[]){

int i,j;

int x=0;

double y=0.0;

for(i=0;istrlen(c);i++){

if(c[i]=='.')break;

else x=x*10+c[i]-48;

}

if(c[i]=='.')

for(j=strlen(c)-1;ji;j--)y=(y+(c[j]-48))*0.1;

return x+y;

}

double calculate_exp(char exp[])

{

double x=0,y=0,t1,t2,temp;

int i=0;

int j=0;

int k=1;

char num[30];

dbstack t;

creat_dbstack_exp(t);

while(exp[i]!='\0')

{

if(exp[i]='0'exp[i]='9'||exp[i]=='.'){

for(j=0; exp[i]='0'exp[i]='9'||exp[i]=='.'; i++)

num[j++]=exp[i];

num[j]='\0';

x=ctof(num);

pushdb_exp(t,x);

}

if(exp[i]==' ')i++;

if(exp[i]=='+'||exp[i]=='-'||exp[i]=='*'||exp[i]=='/')

{

popdb_exp(t,t2);

popdb_exp(t,t1);

char m=exp[i];

switch(m)

{

case '+':temp=t1+t2;

pushdb_exp(t,temp);break;

case '-':temp=t1-t2;

pushdb_exp(t,temp);break;

case '*':temp=t1*t2;

pushdb_exp(t,temp);break;

case '/':temp=t1/t2;

pushdb_exp(t,temp);break;

}

i++;

}

}

popdb_exp(t,temp);

return temp;

}

void main()

{

char ch='y';

double result=0;

while(ch=='y'||ch=='Y')

{system("cls");

int b;

printf("\n 表达式计算\n");

printf("\n 1.将表达式转化为后缀表达式计算\n");

printf("\n 2.退出\n");

printf("\n 请选择(1/2):");

scanf("%d",b);

switch(b)

{

case 1:

char *exp,*expcl,*tran;

exp=new char[maxsize];

expcl=new char[maxsize];

tran=new char[maxsize];

printf("请输入表达式:");

scanf("%s",exp);

input(exp,expcl);

puts(expcl);

transform_exp(expcl,tran);

printf("\n原表达式转化的后缀表达式为:%s\n",tran);

result=calculate_exp(tran);

printf("\n计算结果:%f",result);

break;

default:

exit(1);

break;

}

fflush(stdin);

printf("\n是否继续计算,输入(y/n):");

scanf("%c",ch);

}

}

*****************************************************************

4.

//银行模拟

//bank.cpp

#include "stdio.h"

#include "conio.h"

/******************************************

定义数据结构

*******************************************/

typedef struct _CUSTOMER_INFO{//客户信息数据结构

int nNO;

_CUSTOMER_INFO *pNext;

}CUSTOMER_INFO,*CUSTOMER_INFO_PTR;

typedef struct{//链式队列数据结构

CUSTOMER_INFO_PTR pFront;

CUSTOMER_INFO_PTR pRear;

}QUEUE;

/********************************************

形式:bool InitQueue(QUEUE Q)

功能:队列初始化函数。

输入:队列引用变量。

输出:返回true表示创建成功,false表示创建失败。

*********************************************/

bool InitQueue(QUEUE Q)

{

Q.pFront = Q.pRear = new CUSTOMER_INFO;

if(Q.pFront == NULL)

return false;

else{

Q.pFront-pNext = NULL;

return true;

}

}

/********************************************

形式:void UnInitQueue(QUEUE Q)

功能:队列清空函数。

输入:队列引用变量。

输出:无。

*********************************************/

void UnInitQueue(QUEUE Q)

{

CUSTOMER_INFO_PTR p;

while(Q.pFront-pNext != NULL){

p = Q.pFront-pNext;

Q.pFront-pNext = p-pNext;

delete p;

}

delete Q.pFront;

Q.pFront = Q.pRear = NULL;

}

/********************************************

形式:void EnterQueue(QUEUE Q, CUSTOMER_INFO_PTR pCustomer)

功能:元素入队。

输入:队列引用变量,欲入队元素的指针。

输出:无。

*********************************************/

void EnterQueue(QUEUE Q, CUSTOMER_INFO_PTR pCustomer)

{

Q.pRear-pNext = pCustomer;//新元素入队

Q.pRear = pCustomer;//修改队列尾指针

}

/********************************************

形式:CUSTOMER_INFO_PTR* LeaveQueue(QUEUE Q)

功能:获取队头元素。

输入:队列引用变量。

输出:返回NULL表示队列为空,否则返回指向队头元素的指针。

*********************************************/

CUSTOMER_INFO_PTR LeaveQueue(QUEUE Q)

{

if(Q.pFront == Q.pRear)

return NULL;

else{

CUSTOMER_INFO_PTR p;

p = Q.pFront-pNext;//获取指向队头元素的指针

Q.pFront-pNext = p-pNext;//从队列中摘除队头元素

if(Q.pRear == p)//如果是最后一个元素,则设置为空队列

Q.pRear = Q.pFront;

p-pNext = NULL;

return p;

}

}

int main(int argc, char* argv[])

{

int nChoice;//选择功能

int nCount = 0;//排队序号计数器

int nIteration = 1;//模拟次数计数

QUEUE Q[4];

CUSTOMER_INFO_PTR pCustomer;

printf(" ****************************************\n");

printf(" * 银行排队服务模拟系统 *\n");

printf(" ****************************************\n");

for(int i = 0; i 4; i++)

InitQueue(Q[i]);//initialize queue

for(; ;){

printf("\n\n==========第%d次模拟处理============\n",nIteration++);

for(int j = 0; j 4; j++){

if(j == 0)

printf("正在等待服务的顾客: ");

else

printf("%d号柜台已服务顾客: ", j);

pCustomer = Q[j].pFront-pNext;

while(pCustomer != NULL){

printf("%3d", pCustomer-nNO);

pCustomer = pCustomer-pNext;

}

printf("\n");

}

printf("\n");

printf("1----1号柜台服务\n");

printf("2----2号柜台服务\n");

printf("3----3号柜台服务\n");

printf("4----新客户取号等待服务\n");

printf("0----退出排队服务模拟程序\n");

printf("请选择: ");

scanf("%d",nChoice);

if(nChoice 0 || nChoice 4){//处理输入非法的情况

getchar();

printf("\n输入非法!\n");

}

if(nChoice == 0)

break;

else if(nChoice == 4){//新客户到来

pCustomer = new CUSTOMER_INFO;

pCustomer-nNO = nCount++;

pCustomer-pNext = NULL;

EnterQueue(Q[0], pCustomer);

}else if(nChoice =1 nChoice =3){//为队头客户服务

pCustomer = LeaveQueue(Q[0]);

if(pCustomer != NULL)

EnterQueue(Q[nChoice], pCustomer);

else{

printf("\n当前没有等待客户!\n");

}

}

}

return 0;

}

*********************************************************************

5.

//banklink.cpp

//银行叫号模拟

#include stdio.h

#include stdlib.h

#include conio.h

//链队列类型描述

typedef struct lnode{

int bh;

struct lnode *next;

}Node,*Qulink;

typedef struct {

Qulink f;

Qulink r;

}QueueLink;

//函数说明

void initqueue(QueueLink Q);//初始化

void enqueue(QueueLink Q,int e);//进队列

void outqueue(QueueLink Q,int e);//出队列

void dispqueue(QueueLink Q);//显示队列

int emptyqueue(QueueLink Q);//判断队列是否为空

int menu();

//函数定义

void initqueue(QueueLink Q){

Q.f=Q.r=new Node;

Q.f-next=NULL;

}

void enqueue(QueueLink Q,int e){

Qulink p;

p=new Node;

p-bh=e;

p-next=NULL;

Q.r-next=p;

Q.r=p;

}

void outqueue(QueueLink Q,int e){

Qulink p;

if(Q.f!=Q.r){

p=Q.f-next;

e=p-bh;

Q.f-next=p-next;

if(Q.r==p)Q.r=Q.f;

delete p;

}

}

void dispqueue(QueueLink Q){

Qulink p=Q.f-next;

while(p){

printf("%d-",p-bh); p=p-next;

}

printf("\n");

}

int emptyqueue(QueueLink Q){

if(Q.f==Q.r)return 1;

else return 0;

}

int menu(){

int num ;

while(1){

system("cls");

printf("\n\n **********银行排队模拟系统*********\n");

printf(" 1--拿号排队 2--1号窗口\n\n");

printf(" 3--2号窗口 4--查看等待排队的顾客\n\n");

printf(" 0--退出\n\n");

printf(" 请选择1/2/3/4/0:");

scanf("%d",num);

printf("\n\n");

if(num==0) {return num;break;}

else if(num=1num=4)return num;

else {printf("请重新选择!\n");getch();}

}

}

//主函数

void main(){

QueueLink Q; int num,e,count=0;

initqueue(Q);

while(1){

num=menu();

if (num==0)exit(0);

switch(num){

case 1: count+=1;enqueue(Q,count);printf("你拿的是%d号,请等候\n",count);

getch(); break;

case 2: if(!emptyqueue(Q)){

outqueue(Q,e); printf("正在1号窗口办理业务的顾客是:%d\n",e);

}

else printf("目前没有顾客在排队!\n") ;

getch(); break;

case 3: if(!emptyqueue(Q)){

outqueue(Q,e); printf("正在2号窗口办理业务的顾客是:%d\n",e);

}

else printf("目前没有顾客在排队!\n") ;

getch(); break;

case 4: if(!emptyqueue(Q)){

printf("正在排队的顾客有:");dispqueue(Q);

}

else printf("目前没有顾客在排队!\n") ;

getch(); break;

}

}

}

C语言编程

#includestdio.h

void main()

{

int i;

float F;

double ctof (double c);

for(i=-100;i=150;i+=5)//或者i=i+5

printf("%d\t",i);

printf("\n");

for(i=-100;i=150;i+=5)

{

F=ctof(i);

printf("%f\t",F);

}

}

double ctof (double c)

{

double F;//double c,F:c重定义了

F=32+c*9/5;

return(F);

}//括号问题

这些都是低级错误,用vc可以自己检查出来。

仅仅从语法方面帮你改了一下可用,内容我没看。


本文标题:c语言函数ctof c语言函数返回类型的默认定义类型是
路径分享:http://cqcxhl.cn/article/dosspis.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP