C语言总是
❶ c语言总是报错
给你改了下:
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#include<time.h>
voidinverse(int**a,ints,inth)
{
inti,j;
printf("转换后为 ");//加个 输出好看点
for(j=0;j<h;j++)
{
for(i=0;i<s;i++)
{
printf("%d",a[i][j]);//这里是a[i][j]
}
putchar(' ');
}
}
intmain()
{
inth,s;
inti,j;//ij定义
printf(" ");
scanf("%d%d",&s,&h);
//inta[s][h],i,j;c语言数组的长度必须是编译期就能确定的常数,不能是变量
int**a=(int**)malloc(s*sizeof(int*));//动态分配空间
for(i=0;i<s;++i)
*(a+i)=(int*)malloc(h*sizeof(int));
srand(time(0));
printf("数列A为 ");
for(j=0;j<s;j++)
{
for(i=0;i<h;i++)
{
a[j][i]=rand()%100;
printf("%3d",a[j][i]);
}
putchar(' ');
}
inverse(a,s,h);//参数是a
for(i=0;i<s;++i)//释放空间
free(*(a+i));
free(a);
return0;
}
❷ C语言怎么老是出现一个错误
实际上这个问题很多情况下是由于路径设置的问题引起的,
“CL.exe”是使用真正的编译器(编译程序),其路径在“VC根目录\VC98\Bin”下面,
你可以到相应的路径下找到这个应用程序。
因此问题可以按照以下方法解决:打开vc界面 点击VC“TOOLS(工具)”—>“Option(选择)”
—>“Directories(目录)”重新设置“Excutable Fils、Include Files、
Library Files、Source Files”的路径。很多情况可能就一个盘符的不同
(例如你的VC装在C,但是这些路径全部在D),改过来就OK了。
如果你是按照初始路径安装vc6.0的,路径应为:
executatble files:
C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin
C:\Program Files\Microsoft Visual Studio\VC98\BIN
C:\Program Files\Microsoft Visual Studio\Common\TOOLS
C:\Program Files\Microsoft Visual Studio\Common\TOOLS\WINNT
include files:
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
library files:
C:\Program Files\Microsoft Visual Studio\VC98\LIB
C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB
source files:
C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC
如果你装在其他盘里,则仿照其路径变通就行。
关键是microsoft visual studio\ 后面的东西要相同。
❸ C语言。。。这总是报错。
1.main写成了mian
2.for(i=0;i<10;i++)中i=0不能省略。
3.输入的只能是整数,不能是浮点数,否则计算会出错,因为你定义的回是整数。
修改之答后的程序如下:
#include<stdio.h>
void main ()
{
int arr[10]={0},i=0,sum=0,x=0;
float ave=0;
for(i=0;i<10;i++)
{
scanf("%d",&arr[i]);
}
for (i=0;i<10;i++)
{
sum=sum+arr[i];
}
ave=sum/10.0;
printf("the sum is %d\n",sum);
printf("the average is %f\n",ave);
}
❹ C语言总是从什么函数开始执行
一个c语言程序的执行,从main函数中的指令开始执行。
一个程序,无论专复杂或简单,总体上都是一个“属函数”;这个函数就称为“main()
函数”,也就是“主函数”。比如有个“做菜”程序,那么“
做菜
”这个过程就是“主函数”。在主函数中,根据情况,你可能还需要调用“买菜,切菜,炒菜”等子函数。
main函数在程序中大多数是必须存在的,但是依然有例外情况,比如windows编程中可以编写一个动态链接库(dll)模块,这是其他windows程序可以使用的代码。由于dll模块不是独立的程序,因此不需要main函数。再比如,用于专业环境的程序-----如机器人中的控制芯片--可能不需要main函数。
❺ 2 一个C语言程序总是从()开始执行。
一个C语言程序总是从main()主函数开始执行。main是相对来说的,如同音学理论之主调于泛音,泛音即程序中的除main之外的其他函数,迎合人们的思考方式而生成的而非必定的模式。有主有次,执行起来条清缕析,既可将程序模块化又实现了一个闭合的整体。
main 函数在程序启动中完成对具有静态存储期的非局部对象的初始化之后被调用的。它是程序在有宿主 (hosted)环境(亦即有操作系统)中所指定的入口点。自立程序(启动加载器,操作系统内核,等等)的入口点则由实现定义的。
主函数的两个形参形式中的形参,允许从执行环境中传递任意的多字节字符串(它们通常被称为命令行参数),各个指针 argv[1] .. argv[argc-1] 指向每个这些字符串的第一个字符。argv[0] 是指向一个表示用于执行该程序自身的名字的空结尾多字节字符串(或者当执行环境不支持时,为空字符串 "")的开头字符的指针。
这些字符串是可以改动的,虽然对它们的改动并不会被传回给执行环境:比如可以用 std::strtok 来使用它们。由 argv 所指向的数组的大小至少为 argc+1,其最后一个元素 argv[argc] 保证为一个空指针。
(5)C语言总是扩展阅读
main 函数的返回值类型必须是 int ,这样返回值才能传递给程序的激活者(如操作系统)。
如果 main 函数的最后没有写 return 语句的话,C99 规定编译器要自动在生成的目标文件中(如 exe 文件)加入return 0; ,表示程序正常退出。不过,建议在main函数的最后加上return 语句,虽然没有这个必要,但这是一个好的习惯。
也就是说在最新的C语言标准中强制要求main函数的返回值类型为int,main函数的返回值是传递给操作系统,让操作系统判断程序的执行情况(是正常结束还是出现异常)。
❻ c语言为什么我总是等不到结果
首先!主函数中nono函数调用!不能在前面加void!
如果没有一定要求fun函数用指回针 可以用下面的程序!答
#include <stdio.h>
int fun(int x1,int p[])
{
int i,j = 0 , k = 0;
for(i = 1; i <= x1 ; i++)
{
if(x1%i == 0 && i%2 != 0)
{
p[j++] = i;
k++;
}
}
return k-1;
}
int main()
{
int x,aa[100],n,i;
printf("please input\n");
scanf("%d",&x);
n = fun(x,aa);
for(i = 1; i <= n ; i++)
printf("%d ",aa[i]);
printf("\n");
system("pause");
return 0;
}
❼ c语言老是
#include<stdio.h>
void sk(int a[],int x);
void main()
{
int q[10],w;
scanf("%d",&w);
sk(q,w);
for(int o=0;o<10;o++)
printf("%d",q[o]);
}
void sk(int a[],int x)
{
for(int i=0;i<10;i++)
{*(a+i)=i*x;}
}
❽ C语言怎么总是错误
你30行不已经已经写了} 结束了main么,为啥后面还有代码,如果30行这个}是多余的就删了。你截图上后面代码就是多余的,把30行之后的所有内容删了就行了。
❾ 为什么一个C语言输出老是输出这个
因为你的程序有一些小地方需要改专正属:
#include<stdio.h>
voidmain(){
inta,b;
scanf("%d%d",&a,&b);
printf("a=%d,b=%d ",a,b);
if(b%a==0)printf("%d ",b/a);
elseprintf("b/a=%d,b%%a=%d ",b/a,b%a);
}