【新手】关于c++主函数传递值到自定义函数中 本帖最后由 u012786758 于 2013-11-12 00:08:30 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 #include "stdafx.h"#include<iostream>using namespace std;int print_first_and_last_edge (int b);int print_middle_edge(int c,int d);int main(){int print_first_and_last_edge(int b),print_middle_edge(int c,int d);int a;std::cout<<"请输入正方形的边:";std::cin>>a;std::cout<<print_first_and_last_edge(a)<<endl;std::cout<<print_middle_edge(a)<<endl;std::cout<<print_first_and_last_edge(a)<<endl;return 0;}int print_first_and_last_edge(int a){int b;for(b=0;b<=a;b++){std::cout<<"*";}std::cout<<endl;return b;}int print_middle_edge(int a){int c,d;for(c=0;c<=a/2-2;c++){std::cout<<"*";for(d=0;d<=a-2;d++){std::cout<<" ";}std::cout<<endl;return c;}}注意红色部分,为什么声明的时候用2个参数,定义的时候就只有一个参数了? 靠居然没变成红色。。就是print_middle_edge这个函数声明与实现参数个数不同 你说的声明的时候用2个参数,是说自定义函数中吗?自定义函数中声明的参数是For循环的循环计数器。主函数的a参数值要传入自定义函数中。 另外在main里面多声明了一次,可以去掉。 int print_middle_edge(int c,int d);这是你的函数声明,int print_middle_edge(int a){int c,d;for(c=0;c<=a/2-2;c++){std::cout<<"*";for(d=0;。这是你的函数实现,函数头都不一样啊!从你的后面实现来看,声明部分明显错了,那个int d 根本就没有用啊。 自动安装程序 关于数据库的一个简单问题 怎样做这样的控件,高手帮下忙啊 非封闭的图形怎么使用扫描线填充算法啊 请教关于DirectX库的一个问题??? 如何改变鼠标的形状!!! 语音聊天系统 有没有人用tapi3.0开发过组播程序?? 关于图像放大缩小后scrollbar来调节范围。求举例和解说谢谢 期待您的回答... ... VC++ 调用DLL问题 QQ自动发送该如何编写? 送分
#include<iostream>
using namespace std;int print_first_and_last_edge (int b);
int print_middle_edge(int c,int d);int main(){
int print_first_and_last_edge(int b),print_middle_edge(int c,int d);
int a;
std::cout<<"请输入正方形的边:";
std::cin>>a;
std::cout<<print_first_and_last_edge(a)<<endl;
std::cout<<print_middle_edge(a)<<endl;
std::cout<<print_first_and_last_edge(a)<<endl;
return 0;
}
int print_first_and_last_edge(int a){
int b;
for(b=0;b<=a;b++){
std::cout<<"*";
}
std::cout<<endl;
return b;}
int print_middle_edge(int a){
int c,d;
for(c=0;c<=a/2-2;c++){
std::cout<<"*";
for(d=0;d<=a-2;d++){
std::cout<<" ";
}
std::cout<<endl;
return c;
}
}
注意红色部分,为什么声明的时候用2个参数,定义的时候就只有一个参数了?
主函数的a参数值要传入自定义函数中。
int print_middle_edge(int a){
int c,d;
for(c=0;c<=a/2-2;c++){
std::cout<<"*";
for(d=0;
。
这是你的函数实现,函数头都不一样啊!
从你的后面实现来看,声明部分明显错了,那个int d 根本就没有用啊。