各位C语言的高手们,我写了一段代码,可是运行不了,麻烦帮我修改一下,谢谢
#defineN6#include<stdio.h>#include<string.h>voidchange(intb[N],intj);intintput(inth);...
#define N 6
#include<stdio.h>
#include<string.h>
void change (int b[N],int j);
int intput (int h);
int output (int g);
int zhuan(int z);
void main()
{
int a[N],b[N]={3,6,7,8,9,6};
int i,j,m,n=100000; /*定义四个整型变量i,j,m,c,并对c初始化*/
printf("请插入您的银行卡");/*在终端输出请插入您的银行卡*/
printf("请输入您的密码"); /*在终端输出请输入您的密码*/
for(i=0;i<N;i++) /*控制循环的条件*/
{
scanf("%d",a+i); /*从终端一指针的形式依次输入六个数*/
}
for(i=0;i<N;i++) /*用for循环控制循环的进行*/
for(j=0;j<N;j++) /*用for循环控制循环的进行*/
if(a[i]=b[j]) /*用b[N]代表原密码,a[i]代表输入的密码*/
m=1; /*如果输入的密码和原密码相同用1标记*/
else
m=0;/*如果输入的密码和原密码不相同用0标记*/
if(m=1)
printf("请选择");/*如果输入的密码和原密码相同就输出请选择*/
else
printf("对不起您输入的密码有误");/*如果输入的密码和原密码不相同就输出对不起您输入的密码有误*/
switch(m)
{
case 1:
printf("您卡上的余额为%d",n);/*如果按1键就输出您卡上的余额*/
case 2:
{
change (b[N],N);/*调用change函数*/
printf("恭喜你密码修改成功");/*在终端输出恭喜你密码修改成功*/
}
case 3:
{
int s;/*定义一个整型变量s*/
s=input(n);/*调用input函数*/
printf("您存款后的余额为%d",s);/*在终端输出您的余额*/
}
case 4:{
int w; /*定义一个整型变量w*/
w=zhuan(n);/*把函数的返回值赋给w*/
if(w=1)
printf("您已经成功转账%d元");/*在终端输出您已经成功转账的金额*/
else
printf("您的余额不足");/*在终端输出您的余额不足*/
}
case 5:{
int z;/*定义整型变量z*/
output(z);/*把函数的返回值赋给z*/
if(z=1)
printf("您经成功取出%d元",p);/*已在终端输出您已经成功取出%d元*/
else
printf("您的余额不足");/*在终端输出您的余额不足*/
}
default:
printf("请您持卡");/*在终端输出请您持卡*/
}
}
change (int b[N],int j);/*函数的定义*/
{int c[N],k;/*定义一个整形的一维数组和一个整型变量*/
for(k=0;k<N;k++)/*控制循环的条件*/
scanf("%d",c[k]);/*给一维数组赋初值*/
for(j=0;j<N;j++)/*控制循环的条件*/
for(k=0;k<N;k++)/*控制循环的条件*/
{int temp;/*定义一个整型变量temp*/
temp=*(b+j);/*把b[i]的值赋给整型变量temp*/
*(b+j)=*(c+k);/*把c[i]的值赋给b[i]*/
*(c+k)=temp;/*把temp的值和c[i]的值交换*/
}
int input(int h);/*函数的定义*/
{
int d,e;/*定义两个整型变量d,e*/
printf("请输入您的存款金额");/*输出请输入您的存款金额*/
scanf("%d",&e);
d=e+h;/*把e+h的值赋给d*/
return d;/*把d的值返回主函数*/
}
int output(int p );/*函数的定义*/
{int t,g;/*定义两个整型变量p,t*/
scanf("%d",&p);/*从终端输入一个数把它赋给p*/
scanf("%d",&g);/*从终端输入一个数把它赋给g*/
if(p<g)/*控制程序的条件*/
t=1;/*如果p<g则标记1*/
else
t=0;/*如果p>g则标记0*/
return (t);/*把t的值返回主函数*/
}
int zhuan (int g)/*函数的定义*/
{int p,z;/*定义两个整型变量p,z*/
scanf("%d",&p);/*从终端输入一个数把它赋给p*/
if(p<g)/*控制程序的条件*/
z=1;/*如果p<g则标记1*/
else
z=0;/*如果p>g则标记0*/
return (z);/*把z的值返回主函数*/
}
我要在vc6.0里运行的,最好告诉我错在哪里,谢谢!随便把运行结果贴在下面 展开
#include<stdio.h>
#include<string.h>
void change (int b[N],int j);
int intput (int h);
int output (int g);
int zhuan(int z);
void main()
{
int a[N],b[N]={3,6,7,8,9,6};
int i,j,m,n=100000; /*定义四个整型变量i,j,m,c,并对c初始化*/
printf("请插入您的银行卡");/*在终端输出请插入您的银行卡*/
printf("请输入您的密码"); /*在终端输出请输入您的密码*/
for(i=0;i<N;i++) /*控制循环的条件*/
{
scanf("%d",a+i); /*从终端一指针的形式依次输入六个数*/
}
for(i=0;i<N;i++) /*用for循环控制循环的进行*/
for(j=0;j<N;j++) /*用for循环控制循环的进行*/
if(a[i]=b[j]) /*用b[N]代表原密码,a[i]代表输入的密码*/
m=1; /*如果输入的密码和原密码相同用1标记*/
else
m=0;/*如果输入的密码和原密码不相同用0标记*/
if(m=1)
printf("请选择");/*如果输入的密码和原密码相同就输出请选择*/
else
printf("对不起您输入的密码有误");/*如果输入的密码和原密码不相同就输出对不起您输入的密码有误*/
switch(m)
{
case 1:
printf("您卡上的余额为%d",n);/*如果按1键就输出您卡上的余额*/
case 2:
{
change (b[N],N);/*调用change函数*/
printf("恭喜你密码修改成功");/*在终端输出恭喜你密码修改成功*/
}
case 3:
{
int s;/*定义一个整型变量s*/
s=input(n);/*调用input函数*/
printf("您存款后的余额为%d",s);/*在终端输出您的余额*/
}
case 4:{
int w; /*定义一个整型变量w*/
w=zhuan(n);/*把函数的返回值赋给w*/
if(w=1)
printf("您已经成功转账%d元");/*在终端输出您已经成功转账的金额*/
else
printf("您的余额不足");/*在终端输出您的余额不足*/
}
case 5:{
int z;/*定义整型变量z*/
output(z);/*把函数的返回值赋给z*/
if(z=1)
printf("您经成功取出%d元",p);/*已在终端输出您已经成功取出%d元*/
else
printf("您的余额不足");/*在终端输出您的余额不足*/
}
default:
printf("请您持卡");/*在终端输出请您持卡*/
}
}
change (int b[N],int j);/*函数的定义*/
{int c[N],k;/*定义一个整形的一维数组和一个整型变量*/
for(k=0;k<N;k++)/*控制循环的条件*/
scanf("%d",c[k]);/*给一维数组赋初值*/
for(j=0;j<N;j++)/*控制循环的条件*/
for(k=0;k<N;k++)/*控制循环的条件*/
{int temp;/*定义一个整型变量temp*/
temp=*(b+j);/*把b[i]的值赋给整型变量temp*/
*(b+j)=*(c+k);/*把c[i]的值赋给b[i]*/
*(c+k)=temp;/*把temp的值和c[i]的值交换*/
}
int input(int h);/*函数的定义*/
{
int d,e;/*定义两个整型变量d,e*/
printf("请输入您的存款金额");/*输出请输入您的存款金额*/
scanf("%d",&e);
d=e+h;/*把e+h的值赋给d*/
return d;/*把d的值返回主函数*/
}
int output(int p );/*函数的定义*/
{int t,g;/*定义两个整型变量p,t*/
scanf("%d",&p);/*从终端输入一个数把它赋给p*/
scanf("%d",&g);/*从终端输入一个数把它赋给g*/
if(p<g)/*控制程序的条件*/
t=1;/*如果p<g则标记1*/
else
t=0;/*如果p>g则标记0*/
return (t);/*把t的值返回主函数*/
}
int zhuan (int g)/*函数的定义*/
{int p,z;/*定义两个整型变量p,z*/
scanf("%d",&p);/*从终端输入一个数把它赋给p*/
if(p<g)/*控制程序的条件*/
z=1;/*如果p<g则标记1*/
else
z=0;/*如果p>g则标记0*/
return (z);/*把z的值返回主函数*/
}
我要在vc6.0里运行的,最好告诉我错在哪里,谢谢!随便把运行结果贴在下面 展开
展开全部
问题比较多。
1.函数声明int intput (int h);应该是input吧?
2. if(a[i]=b[j]) /*用b[N]代表原密码,a[i]代表输入的密码*/
判断是否相等应该是==而不是赋值=
3.if(m=1)
还是赋值与等于混了。
4.switch()中判断的m不是只有0和1?怎么会出现那么多选择?是不是写错了?
应该是输入另一个选择的变量吧。
5.switch()看看switch语句关于break的用法,这里我认为应该有break.
6. 函数定义的时候后边是不用分号的。
7.change函数在用的时候有些问题前一个参数的定义和使用有些矛盾,建议查查c语言的书籍。
调试完以上问题再说吧。
1.函数声明int intput (int h);应该是input吧?
2. if(a[i]=b[j]) /*用b[N]代表原密码,a[i]代表输入的密码*/
判断是否相等应该是==而不是赋值=
3.if(m=1)
还是赋值与等于混了。
4.switch()中判断的m不是只有0和1?怎么会出现那么多选择?是不是写错了?
应该是输入另一个选择的变量吧。
5.switch()看看switch语句关于break的用法,这里我认为应该有break.
6. 函数定义的时候后边是不用分号的。
7.change函数在用的时候有些问题前一个参数的定义和使用有些矛盾,建议查查c语言的书籍。
调试完以上问题再说吧。
展开全部
switch(m)
{
case 1:
.......................
后面一定要加break;
change (int b[N],int j);/*函数的定义*/
{
写函数的时候,后面不加“分号",先把这些小错改了再问吧,你函数干嘛用的。说明功能。
{
case 1:
.......................
后面一定要加break;
change (int b[N],int j);/*函数的定义*/
{
写函数的时候,后面不加“分号",先把这些小错改了再问吧,你函数干嘛用的。说明功能。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
前面两位回答者提到的错误很对,给你一下几点建议:
1.查看一下C的基本语法,
2.编程不要一口气编完,一步一步编写,逐步调试,查看是否可以实现你想要的结果。
3.你要实现的功能是银行的ATM提款机的操作界面的程序吧,你可以在网上找找看有没有相关的例程,可以找来学习学习,同时也完善一下你的编程基础。
4.我在<C语言编程100例>这本书找好像见过类似功能的程序,你可以找找看.
祝楼主能够快乐学习C语言.
1.查看一下C的基本语法,
2.编程不要一口气编完,一步一步编写,逐步调试,查看是否可以实现你想要的结果。
3.你要实现的功能是银行的ATM提款机的操作界面的程序吧,你可以在网上找找看有没有相关的例程,可以找来学习学习,同时也完善一下你的编程基础。
4.我在<C语言编程100例>这本书找好像见过类似功能的程序,你可以找找看.
祝楼主能够快乐学习C语言.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
结构太混乱了,最好多用几个子函数来编写,这样既有利于函数的阅读,也便于程序的后期维护!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询