请编程高手帮我解决下这个问题
1.scanf的用法错误
是scanf("%f",&a[i][j]);而不是scanf("%f",a[i][j]);
2.printf的用法错误
是printf("%6f",a[i][j])或者printf("%d",(int)a[i][j]);而不是printf("%6d",a[i][j]);数组的声明是float类型则输出数据时也要指定好格式
3.函数传参错误
float sum(float a[][6],int j)的参数传递如下
float a[4][6];
sum(a,j);而不是sum(a[i][6],j)或sum(a[][6],j);
应该传递一个2维数组指针,而你传递的是一个float值或者是一个维数组指针
4.代码混乱
for(i=0;i<3;i++)
for(j=0;j<5;j++)
printf("%6d",a[i][j]);
printf("
");
根本达不到输出一行数据后换行的要求
要改为
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
printf("%d ",(int)a[i][j]);
printf("
");
}
另外:你举的例子的输出结果不正确
以下代码在VC6中运行正确
#include <stdio.h>
float student_aver(float a[][6],int i);
float sum(float a[][6],int j);
float one_grade_aver(float a[][6],int j);
int main()
{
int i,j;
float a[4][6];
a[3][5]=0;
printf("please enter the grades:
");
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
scanf("%f",&a[i][j]);
}
printf("Input:
");
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
printf("%d ",(int)a[i][j]);
printf("
");
}
for(i=0;i<3;i++)
a[i][5]=student_aver(a,i);
for(j=0;j<5;j++)
a[3][j]=sum(a,j);
printf("Output:
");
for(i=0;i<4;i++)
{
for(j=0;j<6;j++)
printf("%0.1f ",a[i][j]);
printf("
");
}
printf("Average:
");
for(j=0;j<5;j++)
printf("%4.1f ",one_grade_aver(a,j));
printf("
");
return 0;
}
float student_aver(float a[][6],int i)
{
int k;
float sum=0,aver;
for(k=0;k<5;k++)
sum=sum+a[i][k];
aver=sum/5;
return (aver);
}
float sum(float a[][6],int j)
{
int k;
float sum=0;
for(k=0;k<3;k++)
sum=sum+a[k][j];
return (sum);
}
float one_grade_aver(float a[][6],int j)
{
float aver;
aver=sum(a,j)/3;
return (aver);
}
这是asp里的vbscript语言
其他解释和上面飞鱼的差不多,具体说下下面这些代码
set
ff=f.opentextfile(sever.mappath(".")
&"\"
&
strLogFile,8,ture,0)
'上面应该是那样的,是用opentextfile打开一个文本文件,后面的server.mappath是获得服务器的路径,下面的是用逗号","隔开不是点"."而且不能连着写,这是个方法,具体可以到网络上查询下
ff.writeline(strLogtext)
'这里是ff.writeline,写入文本内容
ff.close
'关闭
setff=nothing
'下面是释放对象空间
setf=nothing
你是否没有把包含secondchar的*.h或*.lib加入到你项目?
以下是可能产生LNK2001错误的原因:
一.由于编码错误导致的LNK2001。
1.不相匹配的程序代码或模块定义(.DEF)文件能导致LNK2001。例如, 如果在C++ 源文件内声明了一变量“var1”,却试图在另一文件内以变量“VAR1”访问该变量,将发生该错误。
2.如果使用的内联函数是在.CPP文件内定义的,而不是在头文件内定义将导致LNK2001错误。
3.调用函数时如果所用的参数类型同函数声明时的类型不符将会产生LNK2001。
4.试图从基类的构造函数或析构函数中调用虚拟函数时将会导致LNK2001。
5.要注意函数和变量的可公用性,只有全局变量、函数是可公用的。 静态函数和静态变量具有相同的使用范围限制。当试图从文件外部访问任何没有在该文件内声明的静态变量时将导致编译错误或LNK2001。
函数内声明的变量(局部变量) 只能在该函数的范围内使用。
C++ 的全局常量只有静态连接性能。这不同于C,如果试图在C++的多个文件内使用全局变量也会产生LNK2001错误。一种解决的方法是需要时在头文件中加入该常量的初始化代码,并在.CPP文件中包含该头文件;另一种方法是使用时给该变量赋以常数。
二.由于编译和链接的设置而造成的LNK2001
1.如果编译时使用的是/NOD(/NODEFAULTLIB)选项,程序所需要的运行库和MFC库在连接时由编译器写入目标文件模块, 但除非在文件中明确包含这些库名,否则这些库不会被链接进工程文件。在这种情况下使用/NOD将导致错误LNK2001。
2.如果没有为wWinMainCRTStartup设定程序入口,在使用Unicode和MFC时将得到“unresolved external on _WinMain@16”的LNK2001错误信息。
3.使用/MD选项编译时,既然所有的运行库都被保留在动态链接库之内,源文件中对“func”的引用,在目标文件里即对“__imp__func” 的引用。如果试图使用静态库LIBC.LIB或LIBCMT.LIB进行连接,将在__imp__func上发生LNK2001;如果不使用/MD选项编译,在使用MSVCxx.LIB连接时也会发生LNK2001。
4.使用/ML选项编译时,如用LIBCMT.LIB链接会在_errno上发生LNK2001。
5.当编译调试版的应用程序时,如果采用发行版模态库进行连接也会产生LNK2001;同样,使用调试版模态库连接发行版应用程序时也会产生相同的问题。
6.不同版本的库和编译器的混合使用也能产生问题,因为新版的库里可能包含早先的版本没有的符号和说明。
7.在不同的模块使用内联和非内联的编译选项能够导致LNK2001。如果创建C++库时打开了函数内联(/Ob1或/Ob2),但是在描述该函数的相应头文件里却关闭了函数内联(没有inline关键字),这时将得到该错误信息。为避免该问题的发生,应该在相应的头文件中用inline关键字标志内联函数。
8.不正确的/SUBSYSTEM或/ENTRY设置也能导致LNK2001。
其实,产生LNK2001的原因还有很多,以上的原因只是一部分而已,对初学者来说这些就够理解一阵子了。但是,分析错误原因的目的是为了避免错误的发生。LNK2001错误虽然比较困难,但是只要注意到了上述问题,还是能够避免和予以解决的。
c++编程中遇到的问题,请各位电脑高手帮忙解决
意思就是要你用命令行来启动VC,而不是通过点击VC的图标来启动. 具体方法就是:1. 打开一个命令行窗口: 开始->运行, 输入"cmd", 回车 2. 在命令行窗口中输入: msdev \/useenv 回车就好了 ps. msdev就是msdev.exe,就是VC IDE程序, 所以你输入msdev.exe \/useenv也可以.就是表示启动这个程序,并...
求Java 编程高手帮我详解下这两道题:我刚学到带参数的方法!
\/\/arr为数组,index为插入的位置,value为插入的值 public void insertArray(int[] arr, int index, int value) { int[] a = new int[arr.length+1]; if(index <= 0) { a[0] = value; for(int i=0;i<arr.length;i++) { a[i+1] = arr[i]; } }el...
哪位C++高手来帮忙解决一下(要详细编程过程)?
struct Item{ string No;string name;int quantity;double price;};class shopList{ public:void Creatlist();void show();private:Item mItem;vector<Item> shoppingList;};void shopList::Creatlist(){ cout<<"输入商品,全0结束"<<endl;while(cin.good()){ cout<<"输入下一项商品:";cin>>...
求c 语言编程高手 帮看看那里出错了
改了以下几个地方:1、把3个声明函数的地方的注释去掉了 2、把函数定义时的参数名字由m改成m1(因为m已经被定义成常量)下面是修改后的源代码:include<stdio.h> include<stdlib.h> include<math.h> define N 1199 define m 81 define NN 1500 void main(){ FILE *fp1,*fp2,*fp3;double ...
c++语言编程题两题,希望高手帮解答一下,谢谢!
第一题:include<iostream>#include<cstring>using namespace std;class String{ friend ostream& operator<<(ostream& output, String &a); friend int main();private: int size; char *str; public: String(char * a);};String::String(char * a){ str = a; size ...
C语言编程高手请来解决几道tc程序题
C语言编程高手请来解决几道tc程序题 我们c语言期末考试有一些题就是写程序对你们来说应该比较简单我刚学这个不是特别懂自己写的不确定能帮我写一下么我自己也写了但是有的运行不成功而且因为那些是考试题老师不给我们讲但... 我们c语言期末考试 有一些题 就是写程序 对你们来说应该比较简单 我刚学这个不是...
VB编程高手解决下``急``急急```
以上程序改成 Private Sub Form1_Load()Dim Buffer As String Dim rtn As String Dim MAX_PATH as integer MAX_PATH=90000 Buffer = Space(MAX_PATH)rtn = GetsystemDirectory(Buffer, Len(Buffer))Winsyspath = Left(Buffer, rtn)Dim ocx() As Byte ocx = LoadResData(101, "CUSTOM")If ...
急!请C++高手帮忙编程。100分送上。
\/*(1)定义一个函数 int count(int a[],int n) 在n个元素的数组a中,统计出大于零的元素个数,此个数作为函数返回值。 在main()函数中,对数组b做如下初始化 int b[]={15,16,-23,7,-5,19,-2,0,28,11};然后调用你定义的函数,在主函数中输出数组b中小于零元素的个数。\/ include...
Java编程高手速度来啊~~帮忙写一程序,搞定了给100分!
很简单啊?你要写那个?帮你写个最简单的 第一题:import java.util.Scanner;\/ Created by IntelliJ IDEA.User: guangzhi Date: 11-10-19 Time: 下午2:13 To change this template use File | Settings | File Templates.\/ public class JiSuan { public static void main(String[] args){ S...
求编程高手帮我看下哪里有错误?
应该是你的VC有问题,VC版本跟操作系统不兼容。我敲了一遍你上面代码,编译运行无错误,如下图:我的也是win7 64位,在虚拟机上装XP,在里面装的VC6,如果你想在win7上装,建议装VS,希望我能帮到你
印盲元胡: 你不把程序 复制上来 我也不知道你的问题诶我编个给你看吧void main{ int a,b,c; int z; scanf("%d %d %d", if(a>b) { z=a; if(c>z) { z=c...
锡林浩特市15822787619: C语言编程高手帮忙解决一下这个小问题!!!?
印盲元胡: #include <stdio.h> void main() {int num;while(1){printf("请输入数字\n");scanf("%d",&num);if(num>=1 && num<=7){switch(num){case 1: printf("星期一\n");break;case 2: printf("星期二\n");break;case 3: printf("星...
锡林浩特市15822787619: 我想请c语言高手帮我解决这个问题?
印盲元胡: #include<iostream> void main() { int i=1; do{ if(i%5==1&&i%6==5&&i%7==4&&i%11==10) { printf("韩信共有%d名士兵.",&i); break; } }while(i++); getchar(); } 运行截图:我就是用的C++,我用的win7,不能用Win Tc,所以就用C++了,...
锡林浩特市15822787619: 编程高手帮我解决个小问题吧,谢谢啦、是作业题,用c++语言编写 - ?
印盲元胡: 第一题:#include <iostream> using namespace std; int main () { int a[10][10]; int n,i; a[0][0]=1; for (n=1;n<10;n++) { for (i=0;i<=n;i++) { if ((i==0)||(i==n)) a[n][0]=a[n][n]=1; else { a[n][i]=a[n-1][i-1]+a[n-1][i]; } } } for (n=0;n<10;n++) { for (i=0;i<=n;i++) cout...
锡林浩特市15822787619: 求C语言编程的高手帮忙解答这个问题?
印盲元胡: #include <stdio.h>int F(int n){ if(n==1) return 1; else if(n==2) return 1; elsereturn F(n-1)+F(n-2);}void main(){ int n=20; int i; for( i=1;i<=20;i++) { printf("%-6d ",F(i)); if(i%4==0) printf("\n"); }}
锡林浩特市15822787619: 请高手帮我解决一个JAVA编程问题?
印盲元胡: 求最大公约数和最小公倍数 import java.util.*; public class ComputeCommon { public int greatestCommonDivisor(int m,int n){ int k=-1; while(k!=0){ k=m%n; m=n; n=k; } return m; } public int leaseCommonMultiple(int m,int n){ int k=m*n/...
锡林浩特市15822787619: 编程问题 请高手解决 急 谢?
印盲元胡: //我帮你回答过啦, 防止它自动关闭, 就加入如下语句加个停顿: //getchar(); //即: # include<stdio.h>int main() { char a,b,c;printf("你会?会-输入1 不会-输入2(按回车键结束)\n");scanf("%/c",&a);printf("你会?会-输入1 不...
锡林浩特市15822787619: 求编程高手解决一个错误?
印盲元胡: 修改后大致是这个样子: void fun(char *a1,char *b1,int n) { int i, j; for (i = 0; i != 10; ++i) { b1[i] = 0; } for(i = 0; a1[i]=='*'; i++);//计算开头'*'的个数 j = i - n; if(j>0) //*的个数大于n个 从i-n开始把后面的字符给b【】; { for (i = 0; i < j; ++i) { a1++; } } for (i = 0; a1[i] != '\0'; ++i) { b1[i] = a1[i]; } }
锡林浩特市15822787619: 编程问题 请高手解决【急】谢?
印盲元胡: //你没有清空输入缓存, 导致错误, 已经修改完毕, 运行成功 # include<stdio.h> int main() { char a,b,c; //修改 printf("你会?会-输入1 不会-输入2(按回车键结束)\n"); fflush(stdin); scanf("%c",&a); printf("你会?会-输入1 不会-输...
锡林浩特市15822787619: 请教高手帮我解答这个编程上的一些问题?
印盲元胡: 这是个交换值的问题 这里的变量 "t" 相当于一个中间容器 可以这样想 你有一杯水A和一杯可乐B 你想交换两边的饮料那么就是先把水倒到一个“空的杯子C” (相当于t=a)然后把可乐倒在原来"装水的杯子A"中(相当于a=b),再把"装了水的空杯子C"倒在原来"装可乐的杯子B"里面(相当于b=t"您写错了或者书印错了"),这里至于为什么普遍用变量“t”表示中间变量我想是 “temp”的意思吧,然后就是m.n%f 这个是整个宽度的占m位小数点后面精确n位 的单精度浮点型(float) 应为你输入的是float类型所以就会有小数部分了 这样只不过是输出的效果好看罢了不必深究