用C语言编写程序实现下列功能,跪求啊

作者&投稿:佐钓 (若有异议请与网页底部的电邮联系)
用c语言编写一个程序实现以下功能~

#include "stdio.h"int main(int argc,char *argv[]){int a,b;double x,y;char ch1,ch2;printf("Please enter the data...
");scanf("%d%d%lf%lf %c%c",&a,&b,&x,&y,&ch1,&ch2);printf("
a=%d,b=%d
x=%f,y=%f
ch1=%c,ch2=%c
",a,b,x,y,ch1,ch2);return 0;}运行样例:

按照你的愿意把空都填好了,VC++ 6.0下编译能通过,有警告信息,运行基本上能用,不过个人认为这个系统有很大的不足,比如输入账号的时候没有输出反馈信息,以及没有对误操作的处理等等。需要的话可以帮你改改!


#include
#include
#include
#include
#define AN 9 //表示账号8位
#define PN 7 //表示密码6位
#define ASN 3 //表示系统中共有3个账户信息
struct Account
{
char accountnumber[AN]; //表示账号信息
char password[PN]; //表示账户的密码信息
double balance; //表示账户的余额
};
struct Account ats[ASN]={{"00000001","123456",100},{"00000002","123456",200},{"00000003","123456",300}};
//ats数组用于存储系统中三个账户的信息
int isCorrect(char *an,char *psd)
{
int i;
for(i=0;i<ASN;i++)
if(strcmp(ats[i].accountnumber,an)==0 && strcmp(psd,ats[i].password)==0)
return 1;
return 0;
}
double getBalance(char *an)
{
int i;
for(i=0;i<ASN;i++)
if(strcmp(an,ats[i].accountnumber)==0)
return ats[i].balance;
}

void deposit(char *an,int amount)
{
int i;
for(i=0;i<ASN;i++)
if(strcmp(an,ats[i].accountnumber)==0)
ats[i].balance+=amount;
}
int withdraw(char *an,int amount)
{
int i;
for(i=0;i<ASN;i++)
if(strcmp(an,ats[i].accountnumber)==0)
return ats[i].balance-=amount;
}


void main()
{
char AccountNumber[AN]={'\0'};
char psd[PN]={'\0'};
int i,errorcount=0;
while(1)
{
printf("
请输入8位账号:");
for(i=0;i<8;i++)
AccountNumber[i]=getch();
printf("
请输入6为密码:");
for(i=0;i<6;i++)
{
psd[i]=getch();
putchar('*');
}
if(isCorrect(AccountNumber,psd)==1)
{
int tag,amount;
while(1)
{
printf("
欢迎登录银行账户管理系统,请选择您要的服务:1、查询余额;2、存款操作;3、取款操作;4、退出系统
");
scanf("%d",&tag);
switch(tag)
{
case 1:
printf("您现在的余额为%f元
",getBalance(AccountNumber));
break;
case 2:
printf("请输入您的存款金额:");
scanf("%d",&amount);
deposit(AccountNumber,amount);
printf("存款成功!您的当前余额为:%f元
",getBalance(AccountNumber));
break;
case 3:
printf("请输入您的取款金额:");
scanf("%d",&amount);
if(amount<=getBalance(AccountNumber))
printf("取款成功!您的当前余额为:%f元
",withdraw(AccountNumber,amount));
else
printf("取款失败!
");
break;
case 4:
break;
}
if(tag==4)
break;
}

}
else
{
errorcount++;
if(errorcount==3)
{
printf("您已经连续三次输入错误,系统将自动关闭
");
break;
}
}
}
}

下面是正确的算法,用C语言描述的,删除二叉排序树*root中值为value的算法,并且删除后仍然保持了二叉排序性质。你只要将*root替换为bt,将value替换为x,就行了。
希望对你有所帮助,如果还有问题,欢迎交流:)
代码如下:
/* Delete node whose data is value from BSTree *root*/
void DeleteBSTNode(BSTree *root, ElemType value)
{
BSTNode *f = NULL;
BSTNode *p = *root;
BSTNode *q, *child;

/* search from the root */
while (p)
{
if (p->data == value)
break;
/* f points to the parent of *p */
f = p;
p = (p->data > value) ? p->lchild : p->rchild;
}

if (p == NULL) /* no such node */
return;
q = p;
if (q->lchild != NULL && q->rchild != NULL)
for (f = q, p = q->rchild; p->lchild != NULL; f = p, p = p->lchild)
;
child = (p->lchild != NULL) ? p->lchild : p->rchild;
if (f == NULL)
*root = child;
else
{
if (p == f->lchild)
f->lchild = child;
else
f->rchild = child;
if (p != q)
q->data = p->data;
}

free(p);
}

一般数据结构课本上都有代码吧

#include<stdio.h>
void bubblesort(int d[],int n)
{
int i,j;
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(d[i]>d[j])
{
int temp=d[i];
d[i]=d[j];
d[j]=temp;
}
}
}
}
void selectionsort(int d[],int n)
{
int i,j,k;
for(i=0;i<n;i++)
{
int temp=d[i];
k=i;
for(j=i+1;j<n;j++)
{
if(temp>d[j])
{
temp=d[j];
k=j;
}
}
if(k!=i)
{
temp=d[i];
d[i]=d[k];
d[k]=temp;
}
}
}
int main()
{
int n,d[100],choice,i;
printf("输入数据的个数n:");
scanf("%d",&n);
printf("依次输入n个数据:");
for(i=0;i<n;i++)scanf("%d",&d[i]);
printf("选择排序输入 1 冒泡排序输入 0:");
scanf("%d",&choice);
if(choice)
{
printf("选择排序结果:\n");
selectionsort(d,n);
for(i=0;i<n;i++)printf("%d ",d[i]);
}
else
{
printf("冒泡排序结果:\n");
bubblesort(d,n);
for(i=0;i<n;i++)printf("%d ",d[i]);
}
return 0;
}



一个c语言的程序题?
然后,在main()函数中定义一个头节点指针,并用它来存储整个链表 请点击输入图片描述 接下来,实现从键盘输入五个整数并将它们尾插入链表中 请点击输入图片描述 最后,实现链表中的插入和删除操作,并输出链表中的所有元素 下面是一个可行的c语言程序,该程序实现了从键盘输入五个整数并存储在链表中,...

编写一个c语言程序,实现录入学生学号和姓名信息的功能
include<stdio.h> include<stdlib.h> intmain(void){ chars[10];\/\/姓名 intnum;\/\/学号 printf("请输入姓名:\\n");gets(s);printf("请输学号:\\n");scanf("%d",&num);printf("姓名是:%s\\n学号是:%d\\n",s,num);system("pause");return0;} ...

用C语言编写程序:输入体重和身高,输出体重指数BMI
1. C语言程序可以轻松实现用户输入体重和身高,随后计算并展示BMI指数。2. BMI指数,作为评估人体健康状况的重要指标,是通过体重(公斤)除以身高(米)的平方得出的数值。3. BMI最初设计用于公共卫生研究,作为统计标准,在比较不同身高个体体重对健康影响方面具有一定参考价值。4. 然而,BMI并非绝对的...

怎么编写C语言程序,如:Helloworld的?
1、点击确定即可,创建出一个helloworld.c的小程序,然后我们就可以编写我们的Hello World小程序了。此时就需要我们的VC++ 6.0来编译此程序,编译无错误才运行此程序,编译按钮和运行按钮如下图的红色箭头处:2、或者可以点击组建工具栏下的编译菜单项,然后再点击执行菜单项,也有快捷键,按Ctrl+F7编译...

用C语言怎么编写一个从1加到10的程序...新手求解
include <stdio.h> void main(){ int n;int sum=0; \/\/初始sum变量值为0;for(n=1;n<=10;n++){ sum=sum+n; \/\/从一加到10;} printf("1+2+...+10=%d",sum);}

用C语言编写一个程序,从键盘上输入一个小写字母,将其本身及对应的大写字...
程序如下:include <stdio.h> int main(){ char ch;scanf("%c",&ch);printf("%c",ch-'a'+'A');return(0);} 示例一:include<stdio.h> int main(){ char ch;scanf("%c",&ch);printf("Letter %c converted into a letter %c!",ch,ch-32);\/\/大写字母ASCII码比小写字母小32 ...

【C语言】编写程序,将一维数组中的元素向右循环移动N次。
2013-11-20 在c语言中,将一个数插入一个数组中,程序怎么写? 67 2015-07-09 c语言编写程序实现求一维数组(8个元素)元素之和。 2011-05-06 c语言,数组程序设计 15 2015-06-01 c语言编写程序,实现以下功能:定义一个有10个元素的一维数组... 4 2014-03-28 编写C语言程序,求任一一维数组中的最大...

用C语言编写程序必须经过哪些步骤
B)由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体(中级语言)。利用C语言等过程化语言编程必须告诉计算机"做什么",同时还得告诉计算机"怎么做"。对 C)编写C语言程序一般应该经历下面的几个基本步骤:确定程序要完成的目标和功能,进行分析和设计;编写程序;编辑、编译、...

c语言如何实现一个简单的计算器?
c语言:1.简介:C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的...

用C语言编写下列程序?
include <stdio.h> int main(){ int a=1,b=2,c=3,t;t=a;a=b;b=t;t=b;b=c;c=t;printf("a=%d,b=%d,c=%d\\n",a,b,c);return 0;} 请点击输入图片描述 include <stdio.h> int main(){ int a=1234,t;for(t=0;a;a\/=10)t=t*10+a%10;printf("%d\\n",t);return ...

鸠江区13651988115: C语言基础,编写一个程序,实现以下功能: -
殷勤凤泻痢: #include “stdio.h” int main() {static int a[10],b[10];int i,j=0,count=0,aver,count2=0;for(i=0;i<10;i++){printf("请输入第%d个同学的成绩:",i+1);scanf("%d",&a[i]);count+=a[i];}aver=count/10;printf("10个同学的平均成绩是:%d...

鸠江区13651988115: 用C语言编写程序,完成如下功能 -
殷勤凤泻痢: #include<stdio.h>#include<Windows.h> struct STU{ long sno; char sname[8]; int sage; int sclass; struct STU *next; }; int *pi; void Print_slist_no(struct STU *h) { struct STU *p; p=h->next; if(p=='\0') { printf("Linklist is null!\n"); } else { // printf("heead...

鸠江区13651988115: 用C语言如何实现以下功能程序. -
殷勤凤泻痢: 根据你的要求,只要将以下代码写入程序即可实现你说的功能,具体如下:#include <stdio.h>#include <stdlib.h>#include <malloc.h>#define LIST_INIT_SIZE 20#define LISTINCREMENT 10 struct myList { int elem; int length; int listsize; }; int InitList(...

鸠江区13651988115: 试用C语言编程实现以下功能:求出表达式1 - 2+3 - 4+5 - ... - 100的结果. -
殷勤凤泻痢: #include void main() {int i,s=0;for(i=1;i<=100;i++){if(i%2==0)s-=i;elses+=i;}printf("1-2+3-4+5-...-100=%d\n",s); }

鸠江区13651988115: 用C语言编程实现以下功能: -
殷勤凤泻痢: 用C++帮你做了一个,觉得还可以的话就采纳吧.#include<iostream.h>#include<stdlib.h> typedef struct { int *elem; int length; int listsize; }SqList; int InitList_sq(SqList *L,int n) { int i; L->elem=(int*)malloc(100*sizeof(int)); if(!L->elem) return 0; else ...

鸠江区13651988115: 用c语言编写一个程序实现以下功能 -
殷勤凤泻痢: 12345678910 #include "stdio.h" intmain(intargc,char*argv[]){ 5261int a,b; doublex,y; charch1,ch2; printf("Please enter the data...\n"); scanf("%d%d%lf%lf %c%c",&a,&b,&x,&y,&ch1,&ch2); printf("\na=%d,b=%d\nx=%f,y=%f\nch1=%c,ch2=%c\n",a,b,x,y,ch1,ch2); return0; } 运行样例:

鸠江区13651988115: 用C语言编写下列一个程序,高手帮帮?
殷勤凤泻痢:#include "stdio.h" #include "math.h" #include "conio.h" #define PI 3.1415926 float SIN(float a,float b,float c) { return sqrt(1-pow((b*b+c*c-a*a)/(2*b*c),2)); } void yuan() { float d; printf("输入直径:");scanf("%f",&d); printf("周长:...

鸠江区13651988115: 如果用C语言编写一个程序实现以下功能: 1、产生N个随机数(N可以更改) 2、用选择排序和堆排 -
殷勤凤泻痢: #include<stdio.h> #include<stdlib.h> #include<time.h> //获取N个0~999的随机数,方便打印阅读 int *getRandNum(int n) {int i;int *p; p=(int *)malloc(sizeof(int)*n);srand(time(NULL));for (i=0; i<n; i++){p[i] = rand()%1000;//随机数范围可修改...

鸠江区13651988115: 用C语言编程实现如下功能按照如下方法加密数据. -
殷勤凤泻痢: #include <stdio.h> int power(int x,int y) { int w; w=1; do { if (y==0) break; if (y%2) { w*=x; y--; } else { x*=x; y/=2; } }while (y); return (w); } int main() { int i,o,w,n,j; printf("Please input a integer:"); scanf("%d",&i); w=0; o=0;do{ n=i; i=i/10; n=(n十2); n=...

鸠江区13651988115: 编写一个程序,完成以下功能:(C语言) -
殷勤凤泻痢: #include<stdio.h>#define N 10/*选择排序*/void sort(int a[]){int i,j,k,temp;for(i=0; i<N; i++){k = i;for(j=i+1; j<N; j++){if(a[k] > a[j]){k = j;}}if(k != i){temp = a[k];a[k] = a[i];a[i] = temp;}}}/*二分查找*/int find(int a[], int x){ int low,high,mid,index; low = 0; high = 19;...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网